Class MakeContainer

  • All Implemented Interfaces:
    AdditionalInformationHandler, CleanUpHandler, Destroyable, GlobalInfoSupporter, LoggingLevelHandler, LoggingSupporter, OptionHandler, QuickInfoSupporter, ShallowCopySupporter<Actor>, SizeOfHandler, Stoppable, StoppableWithFeedback, VariablesInspectionHandler, VariableChangeListener, StorageUser, Actor, ErrorHandler, OutputProducer, Serializable, Comparable

    public class MakeContainer
    extends AbstractSimpleSource
    implements StorageUser
    Assembles a container with data obtained from either callable actors or storage items.

    Input/output:
    - generates:
       adams.flow.container.SequencePlotterContainer


    Container information:
    - adams.flow.container.SequencePlotterContainer: PlotName, X, Y, Content type, Error X, Error Y, MetaData

    -logging-level <OFF|SEVERE|WARNING|INFO|CONFIG|FINE|FINER|FINEST> (property: loggingLevel)
        The logging level for outputting errors and debugging output.
        default: WARNING
     
    -name <java.lang.String> (property: name)
        The name of the actor.
        default: MakeContainer
     
    -annotation <adams.core.base.BaseAnnotation> (property: annotations)
        The annotations to attach to this actor.
        default: 
     
    -skip <boolean> (property: skip)
        If set to true, transformation is skipped and the input token is just forwarded 
        as it is.
        default: false
     
    -stop-flow-on-error <boolean> (property: stopFlowOnError)
        If set to true, the flow execution at this level gets stopped in case this 
        actor encounters an error; the error gets propagated; useful for critical 
        actors.
        default: false
     
    -silent <boolean> (property: silent)
        If enabled, then no errors are output in the console; Note: the enclosing 
        actor handler must have this enabled as well.
        default: false
     
    -callable-actor <adams.flow.core.CallableActorReference> [-callable-actor ...] (property: callableActors)
        The callable actors to obtain the data from.
        default: 
     
    -storage-name <adams.flow.control.StorageName> [-storage-name ...] (property: storageNames)
        The storage items to use.
        default: 
     
    -use-storage <boolean> (property: useStorage)
        Whether to use storage items or data from callable actors.
        default: false
     
    -value-name <adams.core.base.BaseString> [-value-name ...] (property: valueNames)
        The names to use for storing the values in the container:PlotName, X, Y, 
        Content type, Error X, Error Y, MetaData.
        default: 
     
    -container-class <adams.flow.container.AbstractContainer> (property: containerClass)
        The container class to generate (full class name).
        default: adams.flow.container.SequencePlotterContainer
     
    Author:
    fracpete (fracpete at waikato dot ac dot nz)
    See Also:
    Serialized Form
    • Field Detail

      • m_CallableActors

        protected CallableActorReference[] m_CallableActors
        the callable actors to retrieve the data from.
      • m_StorageNames

        protected StorageName[] m_StorageNames
        the storage names to retrieve the data from.
      • m_ValueNames

        protected BaseString[] m_ValueNames
        the names under which to store the data.
      • m_UseStorage

        protected boolean m_UseStorage
        whether to use callable actors or storage.
      • m_ContainerClass

        protected AbstractContainer m_ContainerClass
        the container class to create.
      • m_ContainerValues

        protected String m_ContainerValues
        the names of the items for the current container.
    • Constructor Detail

      • MakeContainer

        public MakeContainer()
    • Method Detail

      • isUsingStorage

        public boolean isUsingStorage()
        Returns whether storage items are being used.
        Specified by:
        isUsingStorage in interface StorageUser
        Returns:
        true if storage items are used
      • setCallableActors

        public void setCallableActors​(CallableActorReference[] value)
        Sets the names of the callable actors to obtain the data from.
        Parameters:
        value - the names
      • getCallableActors

        public CallableActorReference[] getCallableActors()
        Returns the names of the callable actors to get the data form.
        Returns:
        the names
      • callableActorsTipText

        public String callableActorsTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setStorageNames

        public void setStorageNames​(StorageName[] value)
        Sets the names of the storage items to use.
        Parameters:
        value - the names
      • getStorageNames

        public StorageName[] getStorageNames()
        Returns the names of the storage items to use.
        Returns:
        the names
      • storageNamesTipText

        public String storageNamesTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setUseStorage

        public void setUseStorage​(boolean value)
        Sets whether to use storage items or data from callable actors.
        Parameters:
        value - true if to use storage
      • getUseStorage

        public boolean getUseStorage()
        Returns whether to use storage items or data from callable actors.
        Returns:
        true if to use storage
      • useStorageTipText

        public String useStorageTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setValueNames

        public void setValueNames​(BaseString[] value)
        Sets the names of the values in the container.
        Parameters:
        value - the names
      • getValueNames

        public BaseString[] getValueNames()
        Returns the names to store the values under in the container.
        Returns:
        the names
      • valueNamesTipText

        public String valueNamesTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setContainerClass

        public void setContainerClass​(AbstractContainer value)
        Sets the class name of the container to create.
        Parameters:
        value - the class name
      • getContainerClass

        public AbstractContainer getContainerClass()
        Returns the class name of the container to create.
        Returns:
        the class name
      • containerClassTipText

        public String containerClassTipText()
        Returns the tip text for this property.
        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 interface OutputProducer
        Returns:
        adams.flow.container.SequencePlotterContainer.class
      • getContainerValues

        protected String getContainerValues()
        Returns a comma-separated list of names that the container accepts.
        Returns:
        the list of names, null if no container class name or invalid classname specified
      • getValue

        protected Object getValue​(CallableActorReference name)
        Returns the value obtained from the callable actor.
        Parameters:
        name - the name of the callable actor to get the value from
        Returns:
        the obtained value
      • getValue

        protected Object getValue​(StorageName name)
        Returns the value obtained from the callable actor.
        Parameters:
        name - the name of the callable actor to get the value from
        Returns:
        the obtained value
      • doExecute

        protected String doExecute()
        Executes the flow item.
        Specified by:
        doExecute in class AbstractActor
        Returns:
        null if everything is fine, otherwise error message