uk.org.ogsadai.activity.transform
Class StringTokenizerActivity

java.lang.Object
  |
  +--uk.org.ogsadai.activity.Activity
        |
        +--uk.org.ogsadai.activity.transform.StringTokenizerActivity

public class StringTokenizerActivity
extends Activity

This activity tokenizes the input data it recieves using a specified set of delimiters. The functionality is similar to that provided by the java.util.StringTokenizer class. This class has one input (the blocks of data to be tokenized) and one output (the tokens). This activity supports any type of input data, but blocks which are not instances of String or byte[] will be converted into strings using their toString methods. For information on this activity see the OGSA-DAI user doc: OGSA-DAI/doc/interaction/activities/transform/stringTokenizer.html

Author:
The OGSA-DAI Project Team

Field Summary
private static java.lang.String COPYRIGHT_NOTICE
          Copyright notice
private  java.lang.String mDelimiters
          String containing the delimiter(s) used for tokenizing.
private  BlockReader mInput
          Input string data.
private  BlockWriter mOutput
          Tokenized output data.
private  java.util.StringTokenizer mTokenizer
          Used for tokenizing the input data.
 
Fields inherited from class uk.org.ogsadai.activity.Activity
mContext, mExternalInputs, mExternalOutputs, mInternalInputs, mInternalOutputs
 
Constructor Summary
StringTokenizerActivity(org.w3c.dom.Element element)
           
 
Method Summary
 void initialise()
          This method should be overridden by subclasses to perform any initialisation they require before the process method invocations begin.
private  void maintainTokenizer()
          This method maintains the mTokenizer field by making sure that it is initialised with the next block of input data whenever it runs out of tokens.
 void processBlock()
          Performs an iteration of the processing of an activity.
 
Methods inherited from class uk.org.ogsadai.activity.Activity
cleanUp, connectsTo, createOutputPipe, getActivityConfiguration, getActivityName, getCause, getName, getObservableStatus, getProperties, getSession, getStatus, hasActivityConfiguration, hasProperties, process, processFirst, setActivityName, setCompleted, setError
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

COPYRIGHT_NOTICE

private static final java.lang.String COPYRIGHT_NOTICE
Copyright notice

See Also:
Constant Field Values

mInput

private BlockReader mInput
Input string data.


mOutput

private BlockWriter mOutput
Tokenized output data.


mDelimiters

private java.lang.String mDelimiters
String containing the delimiter(s) used for tokenizing.


mTokenizer

private java.util.StringTokenizer mTokenizer
Used for tokenizing the input data.

Constructor Detail

StringTokenizerActivity

public StringTokenizerActivity(org.w3c.dom.Element element)
                        throws ActivitySpecificationException,
                               ActivityCreationException
Method Detail

initialise

public void initialise()
                throws ActivitySpecificationException,
                       ActivityExecutionException
Description copied from class: Activity
This method should be overridden by subclasses to perform any initialisation they require before the process method invocations begin. This might be used for setting up convenient fields to reference objects contained in the context. It shouldn't be used for opening resources. That should be done in processFirst.

Overrides:
initialise in class Activity
Throws:
ActivityExecutionException - If some system problem prevents the activity from initialising.
ActivitySpecificationException - If a problem with settings provided by a client prevents the activity from initialising.

processBlock

public void processBlock()
Description copied from class: Activity
Performs an iteration of the processing of an activity. This may involve reading a block of input data and writing a block of output data, or may involve some other kind of processing. When an activity is processed by the OGSA-DAI engine, this method will be invoked repeatedly until the activity either completes or stops due to an error or termination call. An implementation of this method should invoke the setCompleted method to indicate that processing is complete, or the setError method if an error occurs that will prevent the processing from completing.

Specified by:
processBlock in class Activity

maintainTokenizer

private final void maintainTokenizer()
This method maintains the mTokenizer field by making sure that it is initialised with the next block of input data whenever it runs out of tokens.