com.ibm.dse.automaton.ext
Class DSESyncProcState

java.lang.Object
  |
  +--com.ibm.dse.base.DSEHandler
        |
        +--com.ibm.dse.automaton.DSEState
              |
              +--com.ibm.dse.automaton.ext.DSEOperationState
                    |
                    +--com.ibm.dse.automaton.ext.DSESyncProcState

public class DSESyncProcState
extends DSEOperationState

This class is an extension of the DSEOperationState which implements an state which is related to a synchronous processor. When a processor state is reached, the Automaton must look for the associated processor (whose is defined in the typeIdInfo attribute) chain it to the processor context, and execute it. The launched processor has the responsibility of having in its final state's typeIdInfo attribute a valid event name, which will be used for the state machine to change to the next state. The processor launched context is chained to the parent processor context, but the data sharing should be done using the map formats. This state can only launch synchronous processors.

See Also:
Serialized Form

Field Summary
protected  Processor syncProcessor
          Processor which this state will execute.
 
Fields inherited from class com.ibm.dse.automaton.ext.DSEOperationState
EXIT_EVENT_NAME, inputFormat, operation, operationRepliedSemaphore, outputFormat
 
Fields inherited from class com.ibm.dse.automaton.DSEState
ABORT_PROCESS, actionHandlers, CHANGE_STATE, CONTINUE, DEFAULT_TYPE, done, entryActionsTags, EXECUTE_ACTION_AND_CHANGESTATE, exitActionsTags, exitEventName, FINAL_TYPE, ignoreEntryActions, INITIAL_TYPE, name, PAGE_TYPE, pqThread, processor, runningModeFlag, sharedNotifiers, SKIP_ACTION, SKIP_ALL_ACTIONS, SKIP_CONDITIONS, SUBFLOW_TYPE, suspendedThread, SUSPENDTIME, tag, transitions, type, typeIdInfo
 
Constructor Summary
DSESyncProcState()
           
 
Method Summary
 void activate()
          Activates a synchronous processor state.
 Processor getSyncProcessor()
          Returns the syncProcessor attribute of this class.
protected  Processor readSyncProcessor()
          Gets the processor from the processor name, stored in the typeIdInfo state's attribute.
 void setSyncProcessor(Processor newSyncProcessor)
          Sets the syncProcessor attribute of this class.
 
Methods inherited from class com.ibm.dse.automaton.ext.DSEOperationState
chainOrAssignContext, doDataMapping, getDataMapFormat, getInputFormat, getOperation, getOutputFormat, handleOperationRepliedEvent, initializeFrom, processQueue, readOperation, setInputFormat, setOperation, setOutputFormat, signalEvent
 
Methods inherited from class com.ibm.dse.automaton.DSEState
abort, addHandlersForAction, dispatchEvent, doEntryActions, doExitActions, externalizer, fireDSEChangeStateEvent, fireDSEChangeStateEvent, fireDSEChangeStateEvent, getEntryActions, getExitActions, getGuardConditionResult, getInstanceOfAction, getName, getProcessor, getTag, getTransitions, getType, getTypeIdInfo, isIgnoreEntryActions, isRunningModeFlag, processEventQueue, readExternal, readExternal, removeExternal, removeHandlersForAction, removeHandlersForAction, resume, setEntryActions, setExitActions, setIgnoreEntryActions, setName, setProcessor, setTag, setTransitions, setType, setTypeIdInfo, subscribeToShareNotifiers, suspend, terminate, toString, toStrings, toTags, unsubscribeToSharedNotifiers, writeExternal, writeExternal
 
Methods inherited from class com.ibm.dse.base.DSEHandler
handleEvent, handleEvent, stopHandlingEvent, stopHandlingEvent
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

syncProcessor

protected Processor syncProcessor
Processor which this state will execute.
Constructor Detail

DSESyncProcState

public DSESyncProcState()
Method Detail

activate

public void activate()
              throws DSEInvalidArgumentException,
                     DSEProcessorException
Activates a synchronous processor state. The final state of the processor must have defined in its typeIdInfo attribute a valid exitEventName, which will be used to change the state. The state must process this event and put it on the queue. Afterwards the event queue is processed, and this provokes a change state. This method only supports the execution of synchronous processors.
Overrides:
activate in class DSEOperationState
Throws:
DSEInvalidArgumentException -  
DSEProcessorException -  

getSyncProcessor

public Processor getSyncProcessor()
Returns the syncProcessor attribute of this class.
Returns:
com.ibm.dse.automaton.Processor

readSyncProcessor

protected Processor readSyncProcessor()
                               throws DSEInvalidArgumentException,
                                      DSEProcessorException
Gets the processor from the processor name, stored in the typeIdInfo state's attribute.
Parameters:
operationName - java.lang.String
Returns:
com.ibm.dse.automaton.Processor
Throws:
DSEInvalidArgumentException - The exception description.

setSyncProcessor

public void setSyncProcessor(Processor newSyncProcessor)
Sets the syncProcessor attribute of this class.
Parameters:
newSyncProcessor - com.ibm.dse.automaton.Processor