Class Switch
- java.lang.Object
-
- adams.core.logging.LoggingObject
-
- adams.core.logging.CustomLoggingLevelObject
-
- adams.core.option.AbstractOptionHandler
-
- adams.flow.standalone.rats.output.AbstractRatOutput
-
- adams.flow.standalone.rats.output.Switch
-
- All Implemented Interfaces:
adams.core.AdditionalInformationHandler
,adams.core.CleanUpHandler
,adams.core.Destroyable
,adams.core.GlobalInfoSupporter
,adams.core.logging.LoggingLevelHandler
,adams.core.logging.LoggingSupporter
,adams.core.option.OptionHandler
,adams.core.QuickInfoSupporter
,adams.core.ShallowCopySupporter<AbstractRatOutput>
,adams.core.SizeOfHandler
,adams.core.Stoppable
,adams.core.StoppableWithFeedback
,adams.event.VariableChangeListener
,RatOutput
,Serializable
public class Switch extends AbstractRatOutput
Forwards the input data to the sub-branch of the condition that evaluates to 'true'.
-logging-level <OFF|SEVERE|WARNING|INFO|CONFIG|FINE|FINER|FINEST> (property: loggingLevel) The logging level for outputting errors and debugging output. default: WARNING
-condition <adams.flow.condition.bool.BooleanCondition> [-condition ...] (property: conditions) The switch conditions to evaluate - the first condition that evaluates to 'true' triggers the execution of the corresponding 'case' actor. default:
-case <adams.flow.standalone.rats.RatOutput> [-case ...] (property: cases) The transmitters to send the data to. default:
- Author:
- fracpete (fracpete at waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected RatOutput[]
m_Cases
theRatOutput
schemes to pass the data on to.protected adams.flow.condition.bool.BooleanCondition[]
m_Conditions
the "conditions" for the various switch cases.-
Fields inherited from class adams.flow.standalone.rats.output.AbstractRatOutput
m_BackupState, m_DetectedObjectVariables, m_DetectedVariables, m_Input, m_LoggingPrefix, m_Owner, m_Stopped, m_VariablesUpdated
-
-
Constructor Summary
Constructors Constructor Description Switch()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Class[]
accepts()
Returns the type of data that gets accepted.String
casesTipText()
Returns the tip text for this property.String
conditionsTipText()
Returns the tip text for this property.void
defineOptions()
Adds options to the internal list of options.protected String
doTransmit()
Performs the actual transmission.RatOutput[]
getCases()
Returns the base transmitters to use.adams.flow.condition.bool.BooleanCondition[]
getConditions()
Returns the conditions to evaluate.String
globalInfo()
Returns a string describing the object.void
setCases(RatOutput[] value)
Sets the base transmitters to use.void
setConditions(adams.flow.condition.bool.BooleanCondition[] value)
Sets the conditions to evaluate.void
setOwner(Rat value)
Sets the actor the transmitter belongs to.String
setUp()
Hook method for performing checks at setup time.void
stopExecution()
Stops the execution.-
Methods inherited from class adams.flow.standalone.rats.output.AbstractRatOutput
backupState, canInput, check, cleanUp, configureLogger, doWait, findVariables, getAdditionalInformation, getFullName, getOwner, getQueue, getQuickInfo, getVariables, handleException, initialize, initTransmission, input, isBackedUp, isStopped, pruneBackup, pruneBackup, restoreState, shallowCopy, shallowCopy, transmit, updateDetectedVariables, updatePrefix, updateVariables, variableChanged
-
Methods inherited from class adams.core.option.AbstractOptionHandler
cleanUpOptions, destroy, finishInit, getDefaultLoggingLevel, getOptionManager, loggingLevelTipText, newOptionManager, reset, setLoggingLevel, toCommandLine, toString
-
Methods inherited from class adams.core.logging.LoggingObject
getLogger, getLoggingLevel, initializeLogging, isLoggingEnabled, sizeOf
-
-
-
-
Method Detail
-
globalInfo
public String globalInfo()
Returns a string describing the object.- Specified by:
globalInfo
in interfaceadams.core.GlobalInfoSupporter
- Specified by:
globalInfo
in classadams.core.option.AbstractOptionHandler
- Returns:
- a description suitable for displaying in the gui
-
defineOptions
public void defineOptions()
Adds options to the internal list of options.- Specified by:
defineOptions
in interfaceadams.core.option.OptionHandler
- Overrides:
defineOptions
in classadams.core.option.AbstractOptionHandler
-
setOwner
public void setOwner(Rat value)
Sets the actor the transmitter belongs to.- Specified by:
setOwner
in interfaceRatOutput
- Overrides:
setOwner
in classAbstractRatOutput
- Parameters:
value
- the owner
-
setConditions
public void setConditions(adams.flow.condition.bool.BooleanCondition[] value)
Sets the conditions to evaluate.- Parameters:
value
- the conditions
-
getConditions
public adams.flow.condition.bool.BooleanCondition[] getConditions()
Returns the conditions to evaluate.- Returns:
- the conditions
-
conditionsTipText
public String conditionsTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setCases
public void setCases(RatOutput[] value)
Sets the base transmitters to use.- Parameters:
value
- the transmitters
-
getCases
public RatOutput[] getCases()
Returns the base transmitters to use.- Returns:
- the transmitters
-
casesTipText
public String casesTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
accepts
public Class[] accepts()
Returns the type of data that gets accepted.- Specified by:
accepts
in interfaceRatOutput
- Specified by:
accepts
in classAbstractRatOutput
- Returns:
- the type of data
-
setUp
public String setUp()
Hook method for performing checks at setup time.- Specified by:
setUp
in interfaceRatOutput
- Overrides:
setUp
in classAbstractRatOutput
- Returns:
- null if successful, otherwise error message
-
doTransmit
protected String doTransmit()
Performs the actual transmission.- Specified by:
doTransmit
in classAbstractRatOutput
- Returns:
- null if successful, otherwise error message
-
stopExecution
public void stopExecution()
Stops the execution.- Specified by:
stopExecution
in interfaceRatOutput
- Specified by:
stopExecution
in interfaceadams.core.Stoppable
- Overrides:
stopExecution
in classAbstractRatOutput
-
-