Class RStandalone

  • All Implemented Interfaces:
    adams.core.AdditionalInformationHandler, adams.core.CleanUpHandler, adams.core.Destroyable, adams.core.GlobalInfoSupporter, adams.core.io.EncodingSupporter, adams.core.logging.LoggingLevelHandler, adams.core.logging.LoggingSupporter, adams.core.option.OptionHandler, adams.core.QuickInfoSupporter, adams.core.ShallowCopySupporter<adams.flow.core.Actor>, adams.core.SizeOfHandler, adams.core.Stoppable, adams.core.StoppableWithFeedback, adams.core.VariablesInspectionHandler, adams.event.VariableChangeListener, adams.flow.core.Actor, adams.flow.core.ErrorHandler, Serializable, Comparable

    public class RStandalone
    extends adams.flow.standalone.AbstractStandalone
    implements adams.core.io.EncodingSupporter
    Carries out an R function on the input script.

    -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: RStandalone
     
    -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
     
    -script-file <adams.core.io.PlaceholderFile> (property: scriptFile)
        The script file to load and execute.
        default: ${CWD}
     
    -encoding <adams.core.base.BaseCharset> (property: encoding)
        The type of encoding to use when loading the script file.
        default: Default
     
    -script <adams.core.scripting.RScript> (property: inlineScript)
        Script to pass into R.
        default:
     
    -placeholder <boolean> (property: scriptContainsPlaceholder)
        Set this to true to enable automatic placeholder expansion in the script.
        default: false
     
    -variable <boolean> (property: scriptContainsVariable)
        Set this to true to enable automatic variable expansion in the script.
        default: false
     
    -line-by-line <boolean> (property: lineByLine)
        If enabled, the script gets split into lines and evaluated one line at a
        time (useful for debugging).
        default: true
     
    Author:
    rsmith, FracPete (fracpete at waikato dot ac dot nz)
    See Also:
    Serialized Form
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected adams.core.base.BaseCharset m_Encoding
      the encoding to use.
      protected RScript m_InlineScript
      The R script.
      protected boolean m_LineByLine
      whether to evaluate line by line.
      protected org.rosuda.REngine.Rserve.RConnection m_RConn
      Connection to Rserve
      protected Rserve m_Rserve
      the Rserve actor.
      protected boolean m_ScriptContainsPlaceholder
      whether the script contains a placeholder, which needs to be expanded first.
      protected boolean m_ScriptContainsVariable
      whether the script contains a variable, which needs to be expanded first.
      protected adams.core.io.PlaceholderFile m_ScriptFile
      the script.
      • 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
      RStandalone()  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void defineOptions()
      Adds options to the internal list of options.
      protected String doExecute()
      Connects to Rserve and feeds it the script.
      String encodingTipText()
      Returns the tip text for this property.
      adams.core.base.BaseCharset getEncoding()
      Returns the encoding to use for the script file.
      RScript getInlineScript()
      Returns the script.
      boolean getLineByLine()
      Returns whether to evaluate the script line by line.
      String getQuickInfo()
      Returns a quick info about the actor, which will be displayed in the GUI.
      boolean getScriptContainsPlaceholder()
      Returns whether the scripts contains a placeholder which needs to be expanded first.
      boolean getScriptContainsVariable()
      Returns whether the script contains a variable which needs to be expanded first.
      adams.core.io.PlaceholderFile getScriptFile()
      Gets the script file.
      String globalInfo()
      Overall description of this flow.
      String inlineScriptTipText()
      Description of the script.
      String lineByLineTipText()
      Returns the tip text for this property.
      String scriptContainsPlaceholderTipText()
      Returns the tip text for this property.
      String scriptContainsVariableTipText()
      Returns the tip text for this property.
      String scriptFileTipText()
      Returns the tip text for this property.
      void setEncoding​(adams.core.base.BaseCharset value)
      Sets the encoding to use for the script file.
      void setInlineScript​(RScript inlineScript)
      Sets the script to be fed into R.
      void setLineByLine​(boolean value)
      Sets whether to evaluate the script line by line.
      void setScriptContainsPlaceholder​(boolean value)
      Sets whether the script contains a placeholder which needs to be expanded first.
      void setScriptContainsVariable​(boolean value)
      Sets whether the script contains a variable which needs to be expanded first.
      void setScriptFile​(adams.core.io.PlaceholderFile value)
      Sets the script file.
      String setUp()
      Sets up the connection to Rserve.
      void wrapUp()
      Closes the Rserve connection as the panel closes.
      • Methods inherited from class adams.flow.standalone.AbstractStandalone

        preExecute
      • 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, getRoot, getScopeHandler, getSilent, getSkip, getStopFlowOnError, getStopMessage, getStorageHandler, getVariables, handleError, handleException, hasErrorHandler, hasStopMessage, index, initialize, isBackedUp, isExecuted, isExecuting, isFinished, isHeadless, isStopped, nameTipText, performSetUpChecks, performVariableChecks, postExecute, pruneBackup, pruneBackup, reset, restoreState, setAnnotations, setErrorHandler, setName, setParent, setSilent, setSkip, setStopFlowOnError, 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, loggingLevelTipText, newOptionManager, setLoggingLevel, toCommandLine, toString
      • Methods inherited from class adams.core.logging.LoggingObject

        getLogger, getLoggingLevel, initializeLogging, isLoggingEnabled
      • Methods inherited from interface adams.flow.core.Actor

        toCommandLine
      • 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
    • Field Detail

      • m_ScriptFile

        protected adams.core.io.PlaceholderFile m_ScriptFile
        the script.
      • m_Encoding

        protected adams.core.base.BaseCharset m_Encoding
        the encoding to use.
      • m_InlineScript

        protected RScript m_InlineScript
        The R script.
      • m_ScriptContainsPlaceholder

        protected boolean m_ScriptContainsPlaceholder
        whether the script contains a placeholder, which needs to be expanded first.
      • m_ScriptContainsVariable

        protected boolean m_ScriptContainsVariable
        whether the script contains a variable, which needs to be expanded first.
      • m_LineByLine

        protected boolean m_LineByLine
        whether to evaluate line by line.
      • m_RConn

        protected org.rosuda.REngine.Rserve.RConnection m_RConn
        Connection to Rserve
      • m_Rserve

        protected Rserve m_Rserve
        the Rserve actor.
    • Constructor Detail

      • RStandalone

        public RStandalone()
    • Method Detail

      • defineOptions

        public void defineOptions()
        Adds options to the internal list of options.
        Specified by:
        defineOptions in interface adams.core.option.OptionHandler
        Overrides:
        defineOptions in class adams.flow.core.AbstractActor
      • setScriptFile

        public void setScriptFile​(adams.core.io.PlaceholderFile value)
        Sets the script file.
        Parameters:
        value - the script
      • getScriptFile

        public adams.core.io.PlaceholderFile getScriptFile()
        Gets the script file.
        Returns:
        the script
      • scriptFileTipText

        public String scriptFileTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the explorer/experimenter gui
      • setEncoding

        public void setEncoding​(adams.core.base.BaseCharset value)
        Sets the encoding to use for the script file.
        Specified by:
        setEncoding in interface adams.core.io.EncodingSupporter
        Parameters:
        value - the encoding, e.g. "UTF-8" or "UTF-16", empty string for default
      • getEncoding

        public adams.core.base.BaseCharset getEncoding()
        Returns the encoding to use for the script file.
        Specified by:
        getEncoding in interface adams.core.io.EncodingSupporter
        Returns:
        the encoding, e.g. "UTF-8" or "UTF-16", empty string for default
      • encodingTipText

        public String encodingTipText()
        Returns the tip text for this property.
        Specified by:
        encodingTipText in interface adams.core.io.EncodingSupporter
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • getInlineScript

        public RScript getInlineScript()
        Returns the script.
        Returns:
        the script
      • setInlineScript

        public void setInlineScript​(RScript inlineScript)
        Sets the script to be fed into R.
        Parameters:
        inlineScript - the script to be fed to R
      • inlineScriptTipText

        public String inlineScriptTipText()
        Description of the script.
        Returns:
        string version of the description
      • setScriptContainsPlaceholder

        public void setScriptContainsPlaceholder​(boolean value)
        Sets whether the script contains a placeholder which needs to be expanded first.
        Parameters:
        value - true if script contains a placeholder
      • getScriptContainsPlaceholder

        public boolean getScriptContainsPlaceholder()
        Returns whether the scripts contains a placeholder which needs to be expanded first.
        Returns:
        true if script contains a placeholder
      • scriptContainsPlaceholderTipText

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

        public void setScriptContainsVariable​(boolean value)
        Sets whether the script contains a variable which needs to be expanded first.
        Parameters:
        value - true if script contains a variable
      • getScriptContainsVariable

        public boolean getScriptContainsVariable()
        Returns whether the script contains a variable which needs to be expanded first.
        Returns:
        true if script contains a variable
      • scriptContainsVariableTipText

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

        public void setLineByLine​(boolean value)
        Sets whether to evaluate the script line by line.
        Parameters:
        value - true if line-by-line
      • getLineByLine

        public boolean getLineByLine()
        Returns whether to evaluate the script line by line.
        Returns:
        true if line-by-line
      • lineByLineTipText

        public String lineByLineTipText()
        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:
        getQuickInfo in interface adams.flow.core.Actor
        Specified by:
        getQuickInfo in interface adams.core.QuickInfoSupporter
        Overrides:
        getQuickInfo in class adams.flow.core.AbstractActor
        Returns:
        null if no info available, otherwise short string
      • setUp

        public String setUp()
        Sets up the connection to Rserve.
        Specified by:
        setUp in interface adams.flow.core.Actor
        Overrides:
        setUp in class adams.flow.core.AbstractActor
      • doExecute

        protected String doExecute()
        Connects to Rserve and feeds it the script.
        Specified by:
        doExecute in class adams.flow.core.AbstractActor
      • globalInfo

        public String globalInfo()
        Overall description of this flow.
        Specified by:
        globalInfo in interface adams.core.GlobalInfoSupporter
        Specified by:
        globalInfo in class adams.core.option.AbstractOptionHandler
      • wrapUp

        public void wrapUp()
        Closes the Rserve connection as the panel closes.
        Specified by:
        wrapUp in interface adams.flow.core.Actor
        Overrides:
        wrapUp in class adams.flow.core.AbstractActor