Package adams.flow.transformer
Class AbstractFilter
-
- All Implemented Interfaces:
AdditionalInformationHandler,CleanUpHandler,Destroyable,GlobalInfoSupporter,LoggingLevelHandler,LoggingSupporter,OptionHandler,QuickInfoSupporter,ShallowCopySupporter<Actor>,SizeOfHandler,Stoppable,StoppableWithFeedback,VariablesInspectionHandler,DatabaseConnectionUser,VariableChangeListener,Actor,ErrorHandler,InputConsumer,OutputProducer,VariableMonitor,Serializable,Comparable
- Direct Known Subclasses:
TimeseriesFilter
public abstract class AbstractFilter extends AbstractDataContainerTransformer implements VariableMonitor, DatabaseConnectionUser
Ancestor for domain-specific filter transformers.- Author:
- fracpete (fracpete at waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected booleanm_DatabaseConnectionUpdatedwhether the database connection has been updated.protected Filterm_Filterthe filter to apply.protected booleanm_FlowContextUpdatedwhether the flow context has been updated.protected booleanm_OutputContainerwhether to output a container.protected VariableNamem_VariableNamethe variable to listen to.-
Fields inherited from class adams.flow.transformer.AbstractTransformer
BACKUP_INPUT, BACKUP_OUTPUT, m_InputToken, m_OutputToken
-
Fields inherited from class adams.flow.core.AbstractActor
m_Annotations, m_BackupState, m_DetectedObjectVariables, m_DetectedVariables, m_ErrorHandler, m_Executed, m_Executing, m_ExecutionListeningSupporter, m_FullName, m_LoggingPrefix, m_Name, m_Parent, m_ScopeHandler, m_Self, m_Silent, m_Skip, m_StopFlowOnError, m_StopMessage, m_Stopped, m_StorageHandler, m_VariablesUpdated
-
Fields inherited from class adams.core.option.AbstractOptionHandler
m_OptionManager
-
Fields inherited from class adams.core.logging.LoggingObject
m_Logger, m_LoggingIsEnabled, m_LoggingLevel
-
Fields inherited from interface adams.flow.core.Actor
FILE_EXTENSION, FILE_EXTENSION_GZ
-
-
Constructor Summary
Constructors Constructor Description AbstractFilter()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description Class[]accepts()Returns the class that the consumer accepts.protected TokencreateToken(Object output)Creates the output token.voiddefineOptions()Adds options to the internal list of options.protected StringdoExecute()Executes the flow item.StringfilterTipText()Returns the tip text for this property.Class[]generates()Returns the class of objects that it generates.protected abstract AbstractDatabaseConnectiongetDatabaseConnection()Determines the database connection in the flow.protected abstract ClassgetDataContainerClass()Returns the data container class in use.FiltergetFilter()Returns the filter in use.booleangetOutputContainer()Returns whether to output a container with the filter alongside the filtered data or just the filtered data.protected abstract ClassgetOutputContainerClass()Returns the container class in use for the output.StringgetQuickInfo()Returns a quick info about the actor, which will be displayed in the GUI.VariableNamegetVariableName()Returns the name of the variable to monitor.StringglobalInfo()Returns a string describing the object.StringoutputContainerTipText()Returns the tip text for this property.protected voidreset()Resets the scheme.voidsetFilter(Filter value)Sets the filter to use.voidsetOutputContainer(boolean value)Sets whether to output a container with the filter alongside the filtered data or just the filtered data.voidsetVariableName(VariableName value)Sets the name of the variable to monitor.voidvariableChanged(VariableChangeEvent e)Gets triggered when a variable changed (added, modified, removed).StringvariableNameTipText()Returns the tip text for this property.-
Methods inherited from class adams.flow.transformer.AbstractTransformer
backupState, currentInput, execute, hasInput, hasPendingOutput, input, output, postExecute, restoreState, wrapUp
-
Methods inherited from class adams.flow.core.AbstractActor
annotationsTipText, canInspectOptions, canPerformSetUpCheck, cleanUp, compareTo, configureLogger, destroy, equals, finalUpdateVariables, findVariables, findVariables, forceVariables, forCommandLine, forName, forName, getAdditionalInformation, getAnnotations, getDefaultName, getDetectedVariables, getErrorHandler, getFlowActors, getFlowExecutionListeningSupporter, getFullName, getName, getNextSibling, getParent, getParentComponent, getPreviousSibling, getRoot, getScopeHandler, getSilent, getSkip, getStopFlowOnError, getStopMessage, getStorageHandler, getVariables, handleError, handleException, hasErrorHandler, hasStopMessage, index, initialize, isBackedUp, isExecuted, isExecuting, isFinished, isHeadless, isStopped, nameTipText, performSetUpChecks, performVariableChecks, preExecute, pruneBackup, pruneBackup, setAnnotations, setErrorHandler, setName, setParent, setSilent, setSkip, setStopFlowOnError, setUp, setVariables, shallowCopy, shallowCopy, silentTipText, sizeOf, skipTipText, stopExecution, stopExecution, stopFlowOnErrorTipText, updateDetectedVariables, updatePrefix, updateVariables
-
Methods inherited from class adams.core.option.AbstractOptionHandler
cleanUpOptions, finishInit, getDefaultLoggingLevel, getOptionManager, loggingLevelTipText, newOptionManager, setLoggingLevel, toCommandLine, toString
-
Methods inherited from class adams.core.logging.LoggingObject
getLogger, getLoggingLevel, initializeLogging, isLoggingEnabled
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface adams.flow.core.Actor
cleanUp, compareTo, destroy, equals, findVariables, getAnnotations, getDefaultName, getDetectedVariables, getErrorHandler, getFlowExecutionListeningSupporter, getFullName, getName, getNextSibling, getParent, getParentComponent, getPreviousSibling, getRoot, getScopeHandler, getSilent, getSkip, getStopFlowOnError, getStopMessage, getStorageHandler, getVariables, handleError, hasErrorHandler, hasStopMessage, index, isExecuted, isFinished, isHeadless, isStopped, setAnnotations, setErrorHandler, setName, setParent, setSilent, setSkip, setStopFlowOnError, setUp, setVariables, shallowCopy, shallowCopy, sizeOf, stopExecution, stopExecution, toCommandLine
-
Methods inherited from interface adams.core.AdditionalInformationHandler
getAdditionalInformation
-
Methods inherited from interface adams.core.logging.LoggingLevelHandler
getLoggingLevel, setLoggingLevel
-
Methods inherited from interface adams.core.logging.LoggingSupporter
getLogger, isLoggingEnabled
-
Methods inherited from interface adams.core.option.OptionHandler
cleanUpOptions, getOptionManager
-
Methods inherited from interface adams.core.VariablesInspectionHandler
canInspectOptions
-
-
-
-
Field Detail
-
m_Filter
protected Filter m_Filter
the filter to apply.
-
m_VariableName
protected VariableName m_VariableName
the variable to listen to.
-
m_OutputContainer
protected boolean m_OutputContainer
whether to output a container.
-
m_DatabaseConnectionUpdated
protected boolean m_DatabaseConnectionUpdated
whether the database connection has been updated.
-
m_FlowContextUpdated
protected boolean m_FlowContextUpdated
whether the flow context has been updated.
-
-
Method Detail
-
globalInfo
public String globalInfo()
Returns a string describing the object.- Specified by:
globalInfoin interfaceGlobalInfoSupporter- Specified by:
globalInfoin classAbstractOptionHandler- Returns:
- a description suitable for displaying in the gui
-
defineOptions
public void defineOptions()
Adds options to the internal list of options.- Specified by:
defineOptionsin interfaceOptionHandler- Overrides:
defineOptionsin classAbstractActor
-
reset
protected void reset()
Resets the scheme.- Overrides:
resetin classAbstractActor
-
setFilter
public void setFilter(Filter value)
Sets the filter to use.- Parameters:
value- the filter
-
getFilter
public Filter getFilter()
Returns the filter in use.- Returns:
- the filter
-
filterTipText
public String filterTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setVariableName
public void setVariableName(VariableName value)
Sets the name of the variable to monitor.- Specified by:
setVariableNamein interfaceVariableMonitor- Parameters:
value- the name
-
getVariableName
public VariableName getVariableName()
Returns the name of the variable to monitor.- Specified by:
getVariableNamein interfaceVariableMonitor- Returns:
- the name
-
variableNameTipText
public String variableNameTipText()
Returns the tip text for this property.- Specified by:
variableNameTipTextin interfaceVariableMonitor- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setOutputContainer
public void setOutputContainer(boolean value)
Sets whether to output a container with the filter alongside the filtered data or just the filtered data.- Parameters:
value- true if to output the container
-
getOutputContainer
public boolean getOutputContainer()
Returns whether to output a container with the filter alongside the filtered data or just the filtered data.- Returns:
- true if to output the container
-
outputContainerTipText
public String outputContainerTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
getQuickInfo
public String getQuickInfo()
Returns a quick info about the actor, which will be displayed in the GUI.- Specified by:
getQuickInfoin interfaceActor- Specified by:
getQuickInfoin interfaceQuickInfoSupporter- Overrides:
getQuickInfoin classAbstractActor- Returns:
- null if no info available, otherwise short string
-
accepts
public Class[] accepts()
Returns the class that the consumer accepts.- Specified by:
acceptsin interfaceInputConsumer- Overrides:
acceptsin classAbstractDataContainerTransformer- Returns:
- the default DataContainer class for the project
-
generates
public Class[] generates()
Returns the class of objects that it generates.- Specified by:
generatesin interfaceOutputProducer- Overrides:
generatesin classAbstractDataContainerTransformer- Returns:
- the default DataContainer class for the project
-
getDataContainerClass
protected abstract Class getDataContainerClass()
Returns the data container class in use.- Specified by:
getDataContainerClassin classAbstractDataContainerTransformer- Returns:
- the container class
-
getOutputContainerClass
protected abstract Class getOutputContainerClass()
Returns the container class in use for the output.- Returns:
- the container class
-
getDatabaseConnection
protected abstract AbstractDatabaseConnection getDatabaseConnection()
Determines the database connection in the flow.- Returns:
- the database connection to use
-
variableChanged
public void variableChanged(VariableChangeEvent e)
Gets triggered when a variable changed (added, modified, removed).- Specified by:
variableChangedin interfaceActor- Specified by:
variableChangedin interfaceVariableChangeListener- Overrides:
variableChangedin classAbstractActor- Parameters:
e- the event
-
createToken
protected Token createToken(Object output)
Creates the output token.- Parameters:
output- the generated output- Returns:
- the generated token
-
doExecute
protected String doExecute()
Executes the flow item.- Specified by:
doExecutein classAbstractActor- Returns:
- null if everything is fine, otherwise error message
-
-