adams.flow.transformer
Class SpreadSheetColumnIterator

java.lang.Object
  extended by adams.core.ConsoleObject
      extended by adams.core.option.AbstractOptionHandler
          extended by adams.flow.core.AbstractActor
              extended by adams.flow.transformer.AbstractTransformer
                  extended by adams.flow.transformer.SpreadSheetColumnIterator
All Implemented Interfaces:
AdditionalInformationHandler, CleanUpHandler, Debuggable, DebugOutputHandler, Destroyable, OptionHandler, QuickInfoSupporter, ShallowCopySupporter<AbstractActor>, SizeOfHandler, Stoppable, VariableChangeListener, ErrorHandler, InputConsumer, OutputProducer, Serializable, Comparable

public class SpreadSheetColumnIterator
extends AbstractTransformer

Iterates through all columns of a spreadsheet and outputs the names.
The columns can be limited with the range parameter and furthermore with the regular expression applied to the names.

Input/output:
- accepts:
   adams.core.io.SpreadSheet
- generates:
   java.lang.String

Valid options are:

-D <int> (property: debugLevel)
    The greater the number the more additional info the scheme may output to
    the console (0 = off).
    default: 0
    minimum: 0
 
-name <java.lang.String> (property: name)
    The name of the actor.
    default: SpreadSheetColumnIterator
 
-annotation <adams.core.base.BaseText> (property: annotations)
    The annotations to attach to this actor.
    default:
 
-skip (property: skip)
    If set to true, transformation is skipped and the input token is just forwarded
    as it is.
 
-stop-flow-on-error (property: stopFlowOnError)
    If set to true, the flow gets stopped in case this actor encounters an error;
     useful for critical actors.
 
-range <java.lang.String> (property: range)
    The range of columns to iterate over; A range is a comma-separated list
    of single 1-based indices or sub-ranges of indices ('start-end'); 'inv(..
    .)' inverts the range '...'; the following placeholders can be used as well:
     first, second, third, last_2, last_1, last.
    default: first-last
 
-regexp <adams.core.base.BaseRegExp> (property: regExp)
    The regular expression used to further limit the column set.
    default: .*
 

Version:
$Revision: 5563 $
Author:
fracpete (fracpete at waikato dot ac dot nz)
See Also:
Serialized Form

Field Summary
static String BACKUP_NAMES
          the key for storing the names in the backup.
protected  Vector<String> m_Names
          the names of the columns to output.
protected  Range m_Range
          the range of columns to work on.
protected  BaseRegExp m_RegExp
          the regular expression applied to the column names.
 
Fields inherited from class adams.flow.transformer.AbstractTransformer
BACKUP_INPUT, BACKUP_OUTPUT, m_InputToken, m_OutputToken
 
Fields inherited from class adams.flow.core.AbstractActor
FILE_EXTENSION, FILE_EXTENSION_GZ, m_Annotations, m_BackupState, m_DetectedObjectVariables, m_DetectedVariables, m_ErrorHandler, m_Executed, m_FullName, m_Headless, m_Name, m_Parent, m_Root, m_Self, m_Skip, m_StopFlowOnError, m_StopMessage, m_Stopped, m_StorageHandler, m_VariablesUpdated
 
Fields inherited from class adams.core.option.AbstractOptionHandler
m_DebugLevel, m_OptionManager
 
Constructor Summary
SpreadSheetColumnIterator()
           
 
Method Summary
 Class[] accepts()
          Returns the class that the consumer accepts.
protected  Hashtable<String,Object> backupState()
          Backs up the current state of the actor before update the variables.
 void defineOptions()
          Adds options to the internal list of options.
protected  String doExecute()
          Executes the flow item.
 Class[] generates()
          Returns the class of objects that it generates.
 String getQuickInfo()
          Returns a quick info about the actor, which will be displayed in the GUI.
 Range getRange()
          Returns the range of columns to operate on.
 BaseRegExp getRegExp()
          Returns the regular expression for the name.
 String globalInfo()
          Returns a string describing the object.
 boolean hasPendingOutput()
          Checks whether there is pending output to be collected after executing the flow item.
protected  void initialize()
          Initializes the members.
 Token output()
          Returns the generated token.
 String rangeTipText()
          Returns the tip text for this property.
 String regExpTipText()
          Returns the tip text for this property.
protected  void reset()
          Resets the object.
protected  void restoreState(Hashtable<String,Object> state)
          Restores the state of the actor before the variables got updated.
 void setRange(Range value)
          Sets the range of columns to operate on.
 void setRegExp(BaseRegExp value)
          Sets the regular expression for the names.
 void wrapUp()
          Cleans up after the execution has finished.
 
Methods inherited from class adams.flow.transformer.AbstractTransformer
execute, input, postExecute
 
Methods inherited from class adams.flow.core.AbstractActor
annotationsTipText, canInspectOptions, canPerformSetUpCheck, cleanUp, compareTo, debug, destroy, equals, findVariables, findVariables, findVariables, forceVariables, forCommandLine, forName, getAdditionalInformation, getAnnotations, getDefaultName, getDetectedVariables, getErrorHandler, getFlowActors, getFullName, getName, getNextSibling, getParent, getPreviousSibling, getRoot, getSkip, getStopFlowOnError, getStopMessage, getStorageHandler, getVariables, handleError, hasErrorHandler, hasStopMessage, index, isBackedUp, isExecuted, isFinished, isHeadless, isStopped, nameTipText, performSetUpChecks, preExecute, pruneBackup, pruneBackup, setAnnotations, setErrorHandler, setHeadless, setName, setParent, setSkip, setStopFlowOnError, setUp, setVariables, shallowCopy, shallowCopy, sizeOf, skipTipText, stopExecution, stopExecution, stopFlowOnErrorTipText, updateDetectedVariables, updatePrefix, updateVariables, variableChanged
 
Methods inherited from class adams.core.option.AbstractOptionHandler
cleanUpOptions, debug, debugLevelTipText, finishInit, getDebugLevel, getOptionManager, isDebugOn, newOptionManager, setDebugLevel, toCommandLine, toString
 
Methods inherited from class adams.core.ConsoleObject
getDebugging, getSystemErr, getSystemOut
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

BACKUP_NAMES

public static final String BACKUP_NAMES
the key for storing the names in the backup.

See Also:
Constant Field Values

m_Range

protected Range m_Range
the range of columns to work on.


m_RegExp

protected BaseRegExp m_RegExp
the regular expression applied to the column names.


m_Names

protected Vector<String> m_Names
the names of the columns to output.

Constructor Detail

SpreadSheetColumnIterator

public SpreadSheetColumnIterator()
Method Detail

globalInfo

public String globalInfo()
Returns a string describing the object.

Specified by:
globalInfo in class 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 interface OptionHandler
Overrides:
defineOptions in class AbstractActor

initialize

protected void initialize()
Initializes the members.

Overrides:
initialize in class AbstractActor

reset

protected void reset()
Resets the object.

Overrides:
reset in class AbstractTransformer

getQuickInfo

public String getQuickInfo()
Returns a quick info about the actor, which will be displayed in the GUI.

Specified by:
getQuickInfo in interface QuickInfoSupporter
Overrides:
getQuickInfo in class AbstractActor
Returns:
null if no info available, otherwise short string

setRange

public void setRange(Range value)
Sets the range of columns to operate on.

Parameters:
value - the range

getRange

public Range getRange()
Returns the range of columns to operate on.

Returns:
the range

rangeTipText

public String rangeTipText()
Returns the tip text for this property.

Returns:
tip text for this property suitable for displaying in the GUI or for listing the options.

setRegExp

public void setRegExp(BaseRegExp value)
Sets the regular expression for the names.

Parameters:
value - the expression

getRegExp

public BaseRegExp getRegExp()
Returns the regular expression for the name.

Returns:
the prefix

regExpTipText

public String regExpTipText()
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 class that the consumer accepts.

Returns:
adams.core.io.SpreadSheet.class

generates

public Class[] generates()
Returns the class of objects that it generates.

Returns:
java.lang.String.class

backupState

protected Hashtable<String,Object> backupState()
Backs up the current state of the actor before update the variables.

Overrides:
backupState in class AbstractTransformer
Returns:
the backup

restoreState

protected void restoreState(Hashtable<String,Object> state)
Restores the state of the actor before the variables got updated.

Overrides:
restoreState in class AbstractTransformer
Parameters:
state - the backup of the state to restore from

doExecute

protected String doExecute()
Executes the flow item.

Specified by:
doExecute in class AbstractActor
Returns:
null if everything is fine, otherwise error message

hasPendingOutput

public boolean hasPendingOutput()
Checks whether there is pending output to be collected after executing the flow item.

Specified by:
hasPendingOutput in interface OutputProducer
Overrides:
hasPendingOutput in class AbstractTransformer
Returns:
true if there is pending output

output

public Token output()
Returns the generated token.

Specified by:
output in interface OutputProducer
Overrides:
output in class AbstractTransformer
Returns:
the generated token

wrapUp

public void wrapUp()
Cleans up after the execution has finished.

Overrides:
wrapUp in class AbstractTransformer


Copyright © 2012 University of Waikato, Hamilton, NZ. All Rights Reserved.