oracle.cle.process
Class ParentProcess

java.lang.Object
  |
  +--oracle.cle.process.Process
        |
        +--oracle.cle.process.GenericProcess
              |
              +--oracle.cle.process.ParentProcess
All Implemented Interfaces:
Child, java.lang.Cloneable, Parent, ProcessConstants, java.io.Serializable, State
Direct Known Subclasses:
CreatePage, DisplayGroup, Service

public abstract class ParentProcess
extends GenericProcess
implements java.io.Serializable, Parent, Child

Represents a Process that contains others processes as Children. The Child processes are staged in a CLEStateMachine and are usually genericProcesses run in the MVC Framework.

Service and DisplayGroup are examples of ParentProcesses. The ParentProcess knows how to process parameters on a Child, start the child and process th results of the Child's execution.

See Also:
Serialized Form

Fields inherited from class oracle.cle.process.GenericProcess
parent
 
Fields inherited from class oracle.cle.process.Process
condition, DEBUG, endState, FAILURE, name, processes, service, stateMachine, SUCCESS, TRANSITION_CONDITION_FAILURE, TRANSITION_CONDITION_SUCCESS
 
Fields inherited from interface oracle.cle.process.ProcessConstants
ALLINFO, BINARYSIZE, CONNECTION_PROVIDER_DTD_NAME, CONNECTION_PROVIDER_VALIDATION_PROPERTY, CONTENTTYPE, CURRENTPAGEID, CURRENTSERVICE, ERRORMESSAGE, GENERICBINARYRESULT, GENERICTEXTRESULT, GETINFO_CHECK_ALL, GETINFO_CHECK_CONTROLLERONLY, GETINFO_CHECK_SERVICEONLY, HTML, HTMLRESULT, JSPRESULT, LOGOFF, NOMESSAGE, PAGEID, PDF, PDFRESULT, PRE_GROUP_DTD_NAME, PRE_GROUP_VALIDATION_PROPERTY, PROCESS_FEEDBACK, RESTART, RESULTTYPE, RULES_DTD_NAME, SERVICE_DESCRIPTOR, SERVICE_DTD_NAME, SERVICE_VALIDATION_PROPERTY, SERVICEINITIALSTATE, SERVICENAME, SESSIONID, SKIP, STACKTRACE, USER, USERROLE, WML, XML, XMLRESULT
 
Constructor Summary
ParentProcess()
           
ParentProcess(Service aService)
           
 
Method Summary
 void addTransition(java.lang.String sourceName, java.lang.String destinationName, java.lang.String conditionName)
          A convenient way to add a Transition to this Parent Process's Transition Table.
 void buildTransitionTable(TransitionTable aTransisitionTable)
          This is an empty implementation to allow ParentProcesses to be instantiated in a runtime scenario (loaded from XML definition).
 java.lang.Object clone()
           
protected  void doSkip()
          Encapsulates functionality for checking whether Service should bypass its StateMachine's TransitionTable or not.
 java.util.Vector getChildren()
          Returns all the children, grandchildren, etc.
 java.util.Vector getEndStates()
          Returns all of this Parent's children that are specified as End States
protected  State getInitialState()
           
protected  boolean getSkipable()
          Returns the value of the skipable attribute.
 boolean isReady()
          Returns true if all the ProcessParameters for this Process are ready.
 void processParameters(Child aChildProcess)
          Ask for, receive and provide the missing parameters for the current child Process.
 void processResults(Child aChildProcess)
          Ask for, receive and process the results for the current child Process.
protected  void registerProcess(Process aProcess, java.lang.String identifier, boolean isEndState)
          Sets up a process in a Parent.
protected  void registerProcesses()
          This is an empty implementation to Parent Processes to be instantiated in a runtime scenario (loaded from XML definition).
protected  void setInitialState(State anInitialState)
           
protected  void setSkipable(boolean aBoolean)
          If the skipable attribute is set to true then this ParentProcess may bypass its StateMachine's TransitionTable by running the skip() method.
protected  void skip()
          This gets run when this ParentProcess is made to bypass it's StateMachine's TransitionTable.
 void start()
          Calls super.start()
 
Methods inherited from class oracle.cle.process.GenericProcess
getBooleanInfo, getFloatInfo, getInfo, getInfo, getInfo, getInfoValue, getInfoValue, getInfoValueFromController, getInfoValueFromService, getIntegerInfo, getParameterNamed, getParameters, getParent, getParents, getResultNamed, getResults, getSessionId, getStringInfo, processParameters, processResults, registerBooleanParameter, registerBooleanResult, registerInfo, registerIntegerParameter, registerIntegerResult, registerParameter, registerProcessInfo, registerResult, registerStringArrayParameter, registerStringArrayResult, registerStringParameter, registerStringParameter, registerStringResult, registerStringResult, retrieveStringParameter, runTest, setParent, setResult, setResult, setResult
 
Methods inherited from class oracle.cle.process.Process
addCondition, addProcess, cloneProcess, debug, generateFailureCondition, generateSuccessCondition, getClassname, getCondition, getConditions, getIconName, getImageName, getName, getProcesses, getProcessNamed, getStateMachine, hashCode, isEndState, removeCondition, removeCondition, reportException, returnCondition, setCondition, setCondition, setEndState, setName, setService, toString
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface oracle.cle.process.Parent
getInfo, getName, getParents
 
Methods inherited from interface oracle.cle.process.Child
getParameters, getParent, getParents, getResults, setParent
 

Constructor Detail

ParentProcess

public ParentProcess()

ParentProcess

public ParentProcess(Service aService)
Method Detail

processParameters

public void processParameters(Child aChildProcess)
Ask for, receive and provide the missing parameters for the current child Process.
Specified by:
processParameters in interface Parent
Following copied from interface: oracle.cle.process.Parent
Parameters:
Child - child on which the processing is made

processResults

public void processResults(Child aChildProcess)
Ask for, receive and process the results for the current child Process.
Specified by:
processResults in interface Parent
Following copied from interface: oracle.cle.process.Parent
Parameters:
Child - child on which the processecing is made

registerProcess

protected void registerProcess(Process aProcess,
                               java.lang.String identifier,
                               boolean isEndState)
                        throws CLERuntimeException
Sets up a process in a Parent.

start

public void start()
           throws TransitionConditionException
Calls super.start()
Overrides:
start in class GenericProcess

buildTransitionTable

public void buildTransitionTable(TransitionTable aTransisitionTable)
This is an empty implementation to allow ParentProcesses to be instantiated in a runtime scenario (loaded from XML definition).
Specified by:
buildTransitionTable in interface Parent

addTransition

public void addTransition(java.lang.String sourceName,
                          java.lang.String destinationName,
                          java.lang.String conditionName)
                   throws CLEException
A convenient way to add a Transition to this Parent Process's Transition Table.
Throws:
CLEException -  

registerProcesses

protected void registerProcesses()
This is an empty implementation to Parent Processes to be instantiated in a runtime scenario (loaded from XML definition).

isReady

public boolean isReady()
Returns true if all the ProcessParameters for this Process are ready.

getEndStates

public java.util.Vector getEndStates()
Returns all of this Parent's children that are specified as End States

setSkipable

protected void setSkipable(boolean aBoolean)
If the skipable attribute is set to true then this ParentProcess may bypass its StateMachine's TransitionTable by running the skip() method.

getSkipable

protected boolean getSkipable()
Returns the value of the skipable attribute. If the skipable attribute is set to true then this ParentProcess may bypass its StateMachine's TransitionTable by running the skip() method.

skip

protected void skip()
This gets run when this ParentProcess is made to bypass it's StateMachine's TransitionTable. Each ParentProcess that wants to use the skip method should override/overload this method.

doSkip

protected void doSkip()
Encapsulates functionality for checking whether Service should bypass its StateMachine's TransitionTable or not. If it should, it will run theskip() method.

setInitialState

protected void setInitialState(State anInitialState)

getInitialState

protected final State getInitialState()

getChildren

public java.util.Vector getChildren()
Returns all the children, grandchildren, etc. of this Parent. Implementation of the method from Parent
Specified by:
getChildren in interface Parent

clone

public java.lang.Object clone()
                       throws java.lang.CloneNotSupportedException
Overrides:
clone in class GenericProcess


Copyright © 2003 ORACLE Corp. All Rights Reserved.