weka.gui.beans

## Class FlowByExpression

- java.lang.Object
- - java.awt.Component
  - - java.awt.Container
    - - javax.swing.JComponent
      - - javax.swing.JPanel
        - - weka.gui.beans.FlowByExpression

- All Implemented Interfaces:
    java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible, EnvironmentHandler, BeanCommon, DataSource, DataSourceListener, EventConstraints, InstanceListener, StructureProducer, TestSetListener, TrainingSetListener, Visible

      @KFStep(category="Flow",
              toolTipText="Route instances according to a boolean expression")
      public class FlowByExpression
      extends javax.swing.JPanel
      implements BeanCommon, Visible, java.io.Serializable, InstanceListener, TrainingSetListener, TestSetListener, DataSourceListener, EventConstraints, EnvironmentHandler, DataSource, StructureProducer

  A bean that splits incoming instances (or instance streams) according to the evaluation of a logical expression. The expression can test the values of one or more incoming attributes. The test can involve constants or comparing one attribute's values to another. Inequalities along with string operations such as contains, starts-with, ends-with and regular expressions may be used as operators.
  Version:
    $Revision: 10220 $
  Author:
    Mark Hall (mhall{[at]}pentaho{[dot]}com)
  See Also:
    Serialized Form

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class javax.swing.JComponent

      `javax.swing.JComponent.AccessibleJComponent`

    - ### Nested classes/interfaces inherited from class java.awt.Component

      `java.awt.Component.BaselineResizeBehavior`

  - ### Field Summary

    - ### Fields inherited from class javax.swing.JComponent

      `TOOL_TIP_TEXT_KEY, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW`

    - ### Fields inherited from class java.awt.Component

      `BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT`

    - ### Fields inherited from interface java.awt.image.ImageObserver

      `ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `FlowByExpression()` Constructor

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `acceptDataSet(DataSetEvent e)`
    `void` | `acceptInstance(InstanceEvent e)` Accept and process an instance event
    `void` | `acceptTestSet(TestSetEvent e)` Accept and process a test set event
    `void` | `acceptTrainingSet(TrainingSetEvent e)` Accept and process a training set
    `void` | `addDataSourceListener(DataSourceListener dsl)` Add a data source listener
    `void` | `addInstanceListener(InstanceListener dsl)` Add an instance listener
    `boolean` | `connectionAllowed(java.beans.EventSetDescriptor esd)` Returns true if, at this time, the object will accept a connection via the named event
    `boolean` | `connectionAllowed(java.lang.String eventName)` Returns true if, at this time, the object will accept a connection via the named event
    `void` | `connectionNotification(java.lang.String eventName, java.lang.Object source)` Notify this object that it has been registered as a listener with a source for recieving events described by the named event This object is responsible for recording this fact.
    `void` | `disconnectionNotification(java.lang.String eventName, java.lang.Object source)` Notify this object that it has been deregistered as a listener with a source for named event.
    `boolean` | `eventGeneratable(java.lang.String eventName)` Returns true if, at the current time, the named event could be generated.
    `Instances` | `getConnectedFormat()` Returns the structure of the incoming instances (if any)
    `java.lang.String` | `getCustomName()` Get the custom (descriptive) name for this bean (if one has been set)
    `java.lang.String` | `getExpressionString()` Get the current expression (in internal format)
    `java.lang.String` | `getFalseStepName()` Get the name of the connected step to send "false" instances to
    `Instances` | `getStructure(java.lang.String eventName)` Get the structure of the output encapsulated in the named event.
    `java.lang.String` | `getTrueStepName()` Get the name of the connected step to send "true" instances to
    `BeanVisual` | `getVisual()` Get the visual representation
    `java.lang.String` | `globalInfo()`
    `boolean` | `isBusy()` Returns true if.
    `void` | `removeDataSourceListener(DataSourceListener dsl)` Remove a data source listener
    `void` | `removeInstanceListener(InstanceListener dsl)` Remove an instance listener
    `void` | `setCustomName(java.lang.String name)` Set a custom (descriptive) name for this bean
    `void` | `setEnvironment(Environment env)` Set environment variables to use.
    `void` | `setExpressionString(java.lang.String expressionString)` Set the expression (in internal format)
    `void` | `setFalseStepName(java.lang.String falseStep)` Set the name of the connected step to send "false" instances to
    `void` | `setLog(Logger logger)` Set a logger
    `void` | `setTrueStepName(java.lang.String trueStep)` Set the name of the connected step to send "true" instances to
    `void` | `setVisual(BeanVisual newVisual)` Set a new visual representation
    `void` | `stop()` Stop any processing that the bean might be doing.
    `void` | `useDefaultVisual()` Use the default visual representation

    - ### Methods inherited from class javax.swing.JPanel

      `getAccessibleContext, getUI, getUIClassID, setUI, updateUI`

    - ### Methods inherited from class javax.swing.JComponent

      `addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintImmediately, paintImmediately, print, printAll, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update`

    - ### Methods inherited from class java.awt.Container

      `add, add, add, add, add, addContainerListener, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate`

    - ### Methods inherited from class java.awt.Component

      `action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, contains, createImage, createImage, createVolatileImage, createVolatileImage, dispatchEvent, enable, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle`

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### FlowByExpression

          public FlowByExpression()

      Constructor

  - ### Method Detail

    - #### globalInfo

          public java.lang.String globalInfo()

    - #### setExpressionString

          public void setExpressionString(java.lang.String expressionString)

      Set the expression (in internal format)
      Parameters:
        `expressionString` - the expression to use (in internal format)

    - #### getExpressionString

          public java.lang.String getExpressionString()

      Get the current expression (in internal format)
      Returns:
        the current expression (in internal format)

    - #### setTrueStepName

          public void setTrueStepName(java.lang.String trueStep)

      Set the name of the connected step to send "true" instances to
      Parameters:
        `trueStep` - the name of the step to send "true" instances to

    - #### getTrueStepName

          public java.lang.String getTrueStepName()

      Get the name of the connected step to send "true" instances to
      Returns:
        the name of the step to send "true" instances to

    - #### setFalseStepName

          public void setFalseStepName(java.lang.String falseStep)

      Set the name of the connected step to send "false" instances to
      Parameters:
        `falseStep` - the name of the step to send "false" instances to

    - #### getFalseStepName

          public java.lang.String getFalseStepName()

      Get the name of the connected step to send "false" instances to
      Returns:
        the name of the step to send "false" instances to

    - #### addDataSourceListener

          public void addDataSourceListener(DataSourceListener dsl)

      Description copied from interface: `DataSource`
      Add a data source listener
      Specified by:
        `addDataSourceListener` in interface `DataSource`
      Parameters:
        `dsl` - a `DataSourceListener` value

    - #### removeDataSourceListener

          public void removeDataSourceListener(DataSourceListener dsl)

      Description copied from interface: `DataSource`
      Remove a data source listener
      Specified by:
        `removeDataSourceListener` in interface `DataSource`
      Parameters:
        `dsl` - a `DataSourceListener` value

    - #### addInstanceListener

          public void addInstanceListener(InstanceListener dsl)

      Description copied from interface: `DataSource`
      Add an instance listener
      Specified by:
        `addInstanceListener` in interface `DataSource`
      Parameters:
        `dsl` - an `InstanceListener` value

    - #### removeInstanceListener

          public void removeInstanceListener(InstanceListener dsl)

      Description copied from interface: `DataSource`
      Remove an instance listener
      Specified by:
        `removeInstanceListener` in interface `DataSource`
      Parameters:
        `dsl` - an `InstanceListener` value

    - #### setEnvironment

          public void setEnvironment(Environment env)

      Description copied from interface: `EnvironmentHandler`
      Set environment variables to use.
      Specified by:
        `setEnvironment` in interface `EnvironmentHandler`
      Parameters:
        `env` - the environment variables to use

    - #### eventGeneratable

          public boolean eventGeneratable(java.lang.String eventName)

      Description copied from interface: `EventConstraints`
      Returns true if, at the current time, the named event could be generated.
      Specified by:
        `eventGeneratable` in interface `EventConstraints`
      Parameters:
        `eventName` - the name of the event in question
      Returns:
        true if the named event could be generated

    - #### acceptDataSet

          public void acceptDataSet(DataSetEvent e)

      Specified by:
        `acceptDataSet` in interface `DataSourceListener`

    - #### acceptTestSet

          public void acceptTestSet(TestSetEvent e)

      Description copied from interface: `TestSetListener`
      Accept and process a test set event
      Specified by:
        `acceptTestSet` in interface `TestSetListener`
      Parameters:
        `e` - a `TestSetEvent` value

    - #### acceptTrainingSet

          public void acceptTrainingSet(TrainingSetEvent e)

      Description copied from interface: `TrainingSetListener`
      Accept and process a training set
      Specified by:
        `acceptTrainingSet` in interface `TrainingSetListener`
      Parameters:
        `e` - a `TrainingSetEvent` value

    - #### acceptInstance

          public void acceptInstance(InstanceEvent e)

      Description copied from interface: `InstanceListener`
      Accept and process an instance event
      Specified by:
        `acceptInstance` in interface `InstanceListener`
      Parameters:
        `e` - an `InstanceEvent` value

    - #### useDefaultVisual

          public void useDefaultVisual()

      Description copied from interface: `Visible`
      Use the default visual representation
      Specified by:
        `useDefaultVisual` in interface `Visible`

    - #### setVisual

          public void setVisual(BeanVisual newVisual)

      Description copied from interface: `Visible`
      Set a new visual representation
      Specified by:
        `setVisual` in interface `Visible`
      Parameters:
        `newVisual` - a `BeanVisual` value

    - #### getVisual

          public BeanVisual getVisual()

      Description copied from interface: `Visible`
      Get the visual representation
      Specified by:
        `getVisual` in interface `Visible`
      Returns:
        a `BeanVisual` value

    - #### setCustomName

          public void setCustomName(java.lang.String name)

      Description copied from interface: `BeanCommon`
      Set a custom (descriptive) name for this bean
      Specified by:
        `setCustomName` in interface `BeanCommon`
      Parameters:
        `name` - the name to use

    - #### getCustomName

          public java.lang.String getCustomName()

      Description copied from interface: `BeanCommon`
      Get the custom (descriptive) name for this bean (if one has been set)
      Specified by:
        `getCustomName` in interface `BeanCommon`
      Returns:
        the custom name (or the default name)

    - #### stop

          public void stop()

      Description copied from interface: `BeanCommon`
      Stop any processing that the bean might be doing.
      Specified by:
        `stop` in interface `BeanCommon`

    - #### isBusy

          public boolean isBusy()

      Description copied from interface: `BeanCommon`
      Returns true if. at this time, the bean is busy with some (i.e. perhaps a worker thread is performing some calculation).
      Specified by:
        `isBusy` in interface `BeanCommon`
      Returns:
        true if the bean is busy.

    - #### setLog

          public void setLog(Logger logger)

      Description copied from interface: `BeanCommon`
      Set a logger
      Specified by:
        `setLog` in interface `BeanCommon`
      Parameters:
        `logger` - a `weka.gui.Logger` value

    - #### connectionAllowed

          public boolean connectionAllowed(java.beans.EventSetDescriptor esd)

      Description copied from interface: `BeanCommon`
      Returns true if, at this time, the object will accept a connection via the named event
      Specified by:
        `connectionAllowed` in interface `BeanCommon`
      Parameters:
        `esd` - the EventSetDescriptor for the event in question
      Returns:
        true if the object will accept a connection

    - #### connectionAllowed

          public boolean connectionAllowed(java.lang.String eventName)

      Description copied from interface: `BeanCommon`
      Returns true if, at this time, the object will accept a connection via the named event
      Specified by:
        `connectionAllowed` in interface `BeanCommon`
      Parameters:
        `eventName` - the name of the event
      Returns:
        true if the object will accept a connection

    - #### connectionNotification

          public void connectionNotification(java.lang.String eventName,
                                    java.lang.Object source)

      Description copied from interface: `BeanCommon`
      Notify this object that it has been registered as a listener with a source for recieving events described by the named event This object is responsible for recording this fact.
      Specified by:
        `connectionNotification` in interface `BeanCommon`
      Parameters:
        `eventName` - the event
        `source` - the source with which this object has been registered as a listener

    - #### disconnectionNotification

          public void disconnectionNotification(java.lang.String eventName,
                                       java.lang.Object source)

      Description copied from interface: `BeanCommon`
      Notify this object that it has been deregistered as a listener with a source for named event. This object is responsible for recording this fact.
      Specified by:
        `disconnectionNotification` in interface `BeanCommon`
      Parameters:
        `eventName` - the event
        `source` - the source with which this object has been registered as a listener

    - #### getStructure

          public Instances getStructure(java.lang.String eventName)

      Get the structure of the output encapsulated in the named event. If the structure can't be determined in advance of seeing input, or this StructureProducer does not generate the named event, null should be returned.
      Specified by:
        `getStructure` in interface `StructureProducer`
      Parameters:
        `eventName` - the name of the output event that encapsulates the requested output.
      Returns:
        the structure of the output encapsulated in the named event or null if it can't be determined in advance of seeing input or the named event is not generated by this StructureProducer.

    - #### getConnectedFormat

          public Instances getConnectedFormat()

      Returns the structure of the incoming instances (if any)
      Returns:
        an `Instances` value