Package adams.flow.source
Class AbstractInteractiveArrayProvider
- java.lang.Object
-
- adams.core.logging.LoggingObject
-
- adams.core.logging.CustomLoggingLevelObject
-
- adams.core.option.AbstractOptionHandler
-
- adams.flow.core.AbstractActor
-
- adams.flow.source.AbstractSource
-
- adams.flow.source.AbstractInteractiveSource
-
- adams.flow.source.AbstractInteractiveArrayProvider
-
- All Implemented Interfaces:
AdditionalInformationHandler
,ArrayProvider
,CleanUpHandler
,Destroyable
,GlobalInfoSupporter
,LoggingLevelHandler
,LoggingSupporter
,OptionHandler
,QuickInfoSupporter
,ShallowCopySupporter<Actor>
,SizeOfHandler
,Stoppable
,StoppableWithFeedback
,VariablesInspectionHandler
,VariableChangeListener
,Actor
,ArrayProvider
,ErrorHandler
,InteractiveActor
,InteractiveActorWithCustomParentComponent
,OutputProducer
,StopModeSupporter
,Serializable
,Comparable
- Direct Known Subclasses:
AbstractSelectObjects
public abstract class AbstractInteractiveArrayProvider extends AbstractInteractiveSource implements ArrayProvider
Ancestor for interactive sources that can provide the output as an array or one-by-one.- Version:
- $Revision$
- Author:
- fracpete (fracpete at waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected int
m_Index
the current index.protected boolean
m_OutputArray
whether to output an array instead of single items.protected ArrayList
m_Queue
contains the items.-
Fields inherited from class adams.flow.source.AbstractInteractiveSource
m_CallableActor, m_CustomStopMessage, m_Helper, m_ParentComponentActor, m_ParentComponentActorConfigured, m_StopFlowIfCanceled, m_StopMode, m_UseOuterWindow
-
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
-
Fields inherited from interface adams.flow.core.InteractiveActor
INTERACTION_CANCELED
-
-
Constructor Summary
Constructors Constructor Description AbstractInteractiveArrayProvider()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description void
defineOptions()
Adds options to the internal list of options.Class[]
generates()
Returns the class of objects that it generates.protected abstract Class
getItemClass()
Returns the based class of the items.boolean
getOutputArray()
Returns whether to output the items as array or as single strings.boolean
hasPendingOutput()
Checks whether there is pending output to be collected after executing the flow item.Token
output()
Returns the generated token.abstract String
outputArrayTipText()
Returns the tip text for this property.protected String
preExecute()
Resets the index.protected void
reset()
Resets the scheme.void
setOutputArray(boolean value)
Sets whether to output the items as array or as single strings.void
wrapUp()
Cleans up after the execution has finished.-
Methods inherited from class adams.flow.source.AbstractInteractiveSource
customStopMessageTipText, deregisterWindow, doExecute, doInteract, doInteractHeadless, findCallableActor, getActualParentComponent, getCustomStopMessage, getParentComponentActor, getStopFlowIfCanceled, getStopMode, getUseOuterWindow, initialize, parentComponentActorTipText, registerWindow, setCustomStopMessage, setParentComponentActor, setStopFlowIfCanceled, setStopMode, setUseOuterWindow, stopFlowIfCanceledTipText, stopModeTipText, supportsHeadlessInteraction, useOuterWindowTipText
-
Methods inherited from class adams.flow.core.AbstractActor
annotationsTipText, backupState, canInspectOptions, canPerformSetUpCheck, cleanUp, compareTo, configureLogger, destroy, equals, execute, finalUpdateVariables, findVariables, findVariables, forceVariables, forCommandLine, forName, forName, getAdditionalInformation, getAnnotations, getDefaultName, getDetectedVariables, getErrorHandler, getFlowActors, getFlowExecutionListeningSupporter, getFullName, getName, getNextSibling, getParent, getParentComponent, getPreviousSibling, getQuickInfo, getRoot, getScopeHandler, getSilent, getSkip, getStopFlowOnError, getStopMessage, getStorageHandler, getVariables, handleError, handleException, hasErrorHandler, hasStopMessage, index, isBackedUp, isExecuted, isExecuting, isFinished, isHeadless, isStopped, nameTipText, performSetUpChecks, performVariableChecks, postExecute, pruneBackup, pruneBackup, restoreState, setAnnotations, setErrorHandler, setName, setParent, setSilent, setSkip, setStopFlowOnError, setUp, setVariables, shallowCopy, shallowCopy, silentTipText, sizeOf, skipTipText, stopExecution, stopExecution, stopFlowOnErrorTipText, updateDetectedVariables, updatePrefix, updateVariables, variableChanged
-
Methods inherited from class adams.core.option.AbstractOptionHandler
cleanUpOptions, finishInit, getDefaultLoggingLevel, getOptionManager, globalInfo, 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, execute, findVariables, getAnnotations, getDefaultName, getDetectedVariables, getErrorHandler, getFlowExecutionListeningSupporter, getFullName, getName, getNextSibling, getParent, getParentComponent, getPreviousSibling, getQuickInfo, 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, variableChanged
-
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_Queue
protected ArrayList m_Queue
contains the items.
-
m_OutputArray
protected boolean m_OutputArray
whether to output an array instead of single items.
-
m_Index
protected int m_Index
the current index.
-
-
Method Detail
-
defineOptions
public void defineOptions()
Adds options to the internal list of options.- Specified by:
defineOptions
in interfaceOptionHandler
- Overrides:
defineOptions
in classAbstractInteractiveSource
-
getItemClass
protected abstract Class getItemClass()
Returns the based class of the items.- Returns:
- the class
-
setOutputArray
public void setOutputArray(boolean value)
Sets whether to output the items as array or as single strings.- Specified by:
setOutputArray
in interfaceArrayProvider
- Specified by:
setOutputArray
in interfaceArrayProvider
- Parameters:
value
- true if output is an array
-
getOutputArray
public boolean getOutputArray()
Returns whether to output the items as array or as single strings.- Specified by:
getOutputArray
in interfaceArrayProvider
- Specified by:
getOutputArray
in interfaceArrayProvider
- Returns:
- true if output is an array
-
outputArrayTipText
public abstract String outputArrayTipText()
Returns the tip text for this property.- Specified by:
outputArrayTipText
in interfaceArrayProvider
- Specified by:
outputArrayTipText
in interfaceArrayProvider
- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
generates
public Class[] generates()
Returns the class of objects that it generates.- Specified by:
generates
in interfaceOutputProducer
- Returns:
- the classes
-
reset
protected void reset()
Resets the scheme.- Overrides:
reset
in classAbstractInteractiveSource
-
preExecute
protected String preExecute()
Resets the index.- Overrides:
preExecute
in classAbstractActor
- Returns:
- null if everything is fine, otherwise error message
- See Also:
m_Index
-
output
public Token output()
Returns the generated token.- Specified by:
output
in interfaceOutputProducer
- Returns:
- the generated token
-
hasPendingOutput
public boolean hasPendingOutput()
Checks whether there is pending output to be collected after executing the flow item.- Specified by:
hasPendingOutput
in interfaceOutputProducer
- Returns:
- true if there is pending output
-
wrapUp
public void wrapUp()
Cleans up after the execution has finished.- Specified by:
wrapUp
in interfaceActor
- Overrides:
wrapUp
in classAbstractActor
-
-