Class FlowByExpression

All Implemented Interfaces:
ImageObserver, MenuContainer, Serializable, EventListener, 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 JPanel implements BeanCommon, Visible, 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: 14911 $
Author:
Mark Hall (mhall{[at]}pentaho{[dot]}com)
See Also:
  • Constructor Details

    • FlowByExpression

      public FlowByExpression()
      Constructor
  • Method Details

    • globalInfo

      public String globalInfo()
    • setExpressionString

      public void setExpressionString(String expressionString)
      Set the expression (in internal format)
      Parameters:
      expressionString - the expression to use (in internal format)
    • getExpressionString

      public String getExpressionString()
      Get the current expression (in internal format)
      Returns:
      the current expression (in internal format)
    • setTrueStepName

      public void setTrueStepName(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 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(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 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(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(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 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(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(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(String eventName, 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(String eventName, 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(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