org.enhydra.shark
Class WfProcessImpl

java.lang.Object
  extended by org.enhydra.shark.WfExecutionObjectImpl
      extended by org.enhydra.shark.WfProcessImpl
All Implemented Interfaces:
PersistenceInterface, WfExecutionObjectInternal, WfProcessInternal

public class WfProcessImpl
extends WfExecutionObjectImpl
implements WfProcessInternal

WfProcessImpl - Workflow Process Object implementation

Version:
1.0.1
Author:
Sasa Bojanic, Vladimir Puskas

Field Summary
protected  ActivityCache activityCache
           
protected  java.util.Map activityToFollowedTransitions
           
protected  WfActivityInternal actRequester
           
protected  java.lang.String actRequesterId
           
protected  java.lang.String actRequestersProcessId
           
protected  boolean contextInitialized
           
protected  long creationTime
           
protected  Evaluator evaluator
           
protected  java.lang.String externalRequesterClassName
           
protected  TxSynchronization initialTransaction
           
protected  boolean isReadOnly
           
protected  boolean isRunning
           
protected  boolean justCreated
           
protected  boolean justCreatedVariables
           
protected  java.util.List lastFinishedActivities
           
protected  WfProcessMgrInternal manager
           
protected  java.lang.String managerName
           
protected  java.lang.String mgrVer
           
protected  java.util.Map newActivityToFollowedTransitions
           
protected  java.lang.String pDefId
           
protected  java.lang.String pkgId
           
protected  java.util.Map processContext
           
protected  java.lang.String resRequesterId
           
protected  java.lang.Thread startingThread
           
protected  long startTime
           
protected  boolean terminateOrAbortFromActivity
           
protected  java.util.Set variableIdsToPersist
           
protected  org.enhydra.shark.xpdl.elements.WorkflowProcess xpdlProcess
           
 
Fields inherited from class org.enhydra.shark.WfExecutionObjectImpl
description, key, lastStateEventAudit, lastStateTime, limitTime, name, priority, state
 
Constructor Summary
protected WfProcessImpl(ProcessPersistenceObject po)
          Used to create object when restoring it from database.
protected WfProcessImpl(WMSessionHandle shandle, WfProcessMgrInternal manager, WfRequesterInternal requester, java.lang.String key)
          Creates new WfProcessImpl
 
Method Summary
 void abort(WMSessionHandle shandle)
          Abort the execution of this process.
 void abortFromActivity(WMSessionHandle shandle)
           
 WfActivityInternal activateBlockActivity(WMSessionHandle shandle, java.lang.String blockActDefId)
           
 void activity_abort(WMSessionHandle shandle, WfActivityInternal activity)
          Receives notification when an activity has aborted.
 void activity_complete(WMSessionHandle shandle, WfActivityInternal activity)
          Receives notification when an activity has completed.
 void activity_terminate(WMSessionHandle shandle, WfActivityInternal activity)
          Receives notification when an activity has terminated.
protected  void change_state(WMSessionHandle shandle, java.lang.String new_state)
          Method change_state
 boolean checkDeadline(WMSessionHandle shandle, java.lang.String actId)
           
 WfActivityInternal[] checkDeadlines(WMSessionHandle shandle)
           
protected  void checkReadOnly()
           
protected  ProcessPersistenceObject createAndFillPersistentObject()
           
 void delete(WMSessionHandle shandle)
           
 WfProcessInternal duplicate()
           
 boolean equals(java.lang.Object obj)
          It is assumed that there can't be two or more processes having the same key.
 Evaluator evaluator(WMSessionHandle shandle)
           
protected  void fillPersistentObject(ProcessPersistenceObject po)
           
 java.util.List getActiveActivities(WMSessionHandle shandle)
           
 WfActivityInternal getActiveActivity(WMSessionHandle shandle, java.lang.String actId)
           
 WfActivityInternal getActivity(WMSessionHandle shandle, java.lang.String actId)
           
 java.lang.String getActivityRequesterId(WMSessionHandle shandle)
           
 java.lang.String getActivityRequesterProcessId(WMSessionHandle shandle)
           
 java.util.List getAllActiveActivitiesForBlockActivity(WMSessionHandle shandle, java.lang.String blockActivityId)
           
 java.util.List getAllActivities(WMSessionHandle shandle)
           
 java.util.Map getContext(WMSessionHandle shandle)
           
 long getCreationTime(WMSessionHandle shandle)
           
protected  java.util.List getExceptionTransFrom(WMSessionHandle shandle, WfActivityInternal fromActivity, org.enhydra.shark.xpdl.elements.Activity fromActDef, java.lang.String exceptionName)
           
protected  java.lang.String getNextWorkItemId(WMSessionHandle shandle, java.lang.String aDefId)
          Get the next work item ID.
protected  org.enhydra.shark.xpdl.elements.WorkflowProcess getProcessDefinition(WMSessionHandle shandle)
           
 java.lang.String getResourceRequesterId(WMSessionHandle shandle)
           
 long getStartTime(WMSessionHandle shandle)
           
protected  java.util.List getTransFrom(WMSessionHandle shandle, WfActivityInternal fromActivity, org.enhydra.shark.xpdl.elements.Activity fromActDef)
           
protected  java.lang.String getUnsatisfiedSplitConditionHandlingMode(WMSessionHandle shandle)
           
protected  org.enhydra.shark.xpdl.XMLCollectionElement getXPDLObject(WMSessionHandle shandle)
           
protected  void handleBrokenAsyncDeadlines(WMSessionHandle shandle, java.util.Map actToExcNames)
           
 int hashCode()
           
 int how_many_step(WMSessionHandle shandle)
          Retrieve the no of activities in this process.
protected  void initializeProcessContext(WMSessionHandle shandle)
          Puts the workflow relevant data and formal parameters into process context.
protected  boolean isActivityDefinitionActive(WMSessionHandle shandle, org.enhydra.shark.xpdl.elements.Activity aDef, WfActivityInternal ba)
          Returns if there is an active activity for given definition.
 boolean isReadOnly()
           
protected  void joinTransition(WMSessionHandle shandle, WfActivityInternal fromActivity, org.enhydra.shark.xpdl.elements.Activity toActivityDef)
           
 java.lang.String manager_name(WMSessionHandle shandle)
           
 java.lang.String manager_version(WMSessionHandle shandle)
           
 WfProcessMgrInternal manager(WMSessionHandle shandle)
          Retrieve the WfProcessMgr of this process.
 void mandatoryDelete(WMSessionHandle shandle)
           
 void migrateProcess(WMSessionHandle shandle, WfProcessMgrInternal processMgr, java.util.Map newVariables)
           
protected  void notifyRequester(WMSessionHandle shandle, WfEventAudit event)
           
 java.lang.String package_id(WMSessionHandle shandle)
           
 void persist(WMSessionHandle shandle)
           
protected  void persistActivityToFollowedTransitions(WMSessionHandle shandle)
           
protected  void persistProcessContext(WMSessionHandle shandle)
           
 java.lang.String process_definition_id(WMSessionHandle shandle)
           
 java.lang.String process_definition_name(WMSessionHandle shandle)
           
protected  void queueNext(WMSessionHandle shandle, WfActivityInternal fromActivity)
           
 WfRequesterInternal requester(WMSessionHandle shandle)
          Retrieve the requestor of this process.
protected  WfRequesterInternal requester(WMSessionHandle shandle, int mode)
           
protected  void restore(ProcessPersistenceObject po)
           
protected  int restoreActivityToFollowedTransitionsMap(WMSessionHandle shandle, org.enhydra.shark.AndJoinHelperStruct ajhs)
           
 java.util.Map result(WMSessionHandle shandle)
          Retrieve the result for this process.
 void resume(WMSessionHandle shandle)
          Resume this process.
protected  void run(WMSessionHandle shandle, WfActivityInternal lastFinishedActivity)
           
protected  void runBlock(WMSessionHandle shandle, org.enhydra.shark.xpdl.elements.Activity bActivity, WfActivityInternal blockActivity)
           
 void set_process_context(WMSessionHandle shandle, java.util.Map newValue)
          Asignes the new values to some process context variables.
 void setExternalRequesterClassName(WMSessionHandle shandle, java.lang.String extReqClassName)
           
protected  void setProcessVariables(WMSessionHandle shandle)
           
 void setReadOnly(boolean ro)
           
protected  void setXPDLAttribs()
           
 WfActivityInternal start_activity(WMSessionHandle shandle, java.lang.String actDefId, java.lang.String blockActId)
          Activates an activity object
 void start(WMSessionHandle shandle)
          Starts the process.
protected  WfActivityInternal startActivity(WMSessionHandle shandle, org.enhydra.shark.xpdl.elements.Activity activity, WfActivityInternal ba)
           
 void suspend(WMSessionHandle shandle)
          Suspend this process.
protected  void synchronizeProcess(WMSessionHandle shandle)
           
 void terminate(WMSessionHandle shandle)
          Terminate this process.
 void terminateFromActivity(WMSessionHandle shandle)
           
 java.lang.String toString()
           
 
Methods inherited from class org.enhydra.shark.WfExecutionObjectImpl
calculateLimit, description, duplicateContext, getLimitTime, key, last_state_time, name, priority, process_context, set_description, set_name, set_priority, setLimitTime, state
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.enhydra.shark.api.internal.working.WfExecutionObjectInternal
calculateLimit, description, getLimitTime, key, last_state_time, name, priority, process_context, set_description, set_name, set_priority, setLimitTime, state
 

Field Detail

actRequesterId

protected java.lang.String actRequesterId

actRequestersProcessId

protected java.lang.String actRequestersProcessId

resRequesterId

protected java.lang.String resRequesterId

managerName

protected java.lang.String managerName

pkgId

protected java.lang.String pkgId

pDefId

protected java.lang.String pDefId

mgrVer

protected java.lang.String mgrVer

processContext

protected java.util.Map processContext

contextInitialized

protected boolean contextInitialized

evaluator

protected Evaluator evaluator

lastFinishedActivities

protected java.util.List lastFinishedActivities

manager

protected WfProcessMgrInternal manager

activityCache

protected ActivityCache activityCache

isRunning

protected boolean isRunning

creationTime

protected long creationTime

startTime

protected long startTime

xpdlProcess

protected org.enhydra.shark.xpdl.elements.WorkflowProcess xpdlProcess

variableIdsToPersist

protected java.util.Set variableIdsToPersist

activityToFollowedTransitions

protected java.util.Map activityToFollowedTransitions

newActivityToFollowedTransitions

protected java.util.Map newActivityToFollowedTransitions

initialTransaction

protected TxSynchronization initialTransaction

startingThread

protected java.lang.Thread startingThread

actRequester

protected WfActivityInternal actRequester

terminateOrAbortFromActivity

protected boolean terminateOrAbortFromActivity

externalRequesterClassName

protected java.lang.String externalRequesterClassName

justCreated

protected boolean justCreated

justCreatedVariables

protected boolean justCreatedVariables

isReadOnly

protected boolean isReadOnly
Constructor Detail

WfProcessImpl

protected WfProcessImpl(WMSessionHandle shandle,
                        WfProcessMgrInternal manager,
                        WfRequesterInternal requester,
                        java.lang.String key)
                 throws java.lang.Exception
Creates new WfProcessImpl

Parameters:
manager - a WfProcessMgrInternal
requester - a WfRequester
key - a String
Throws:
java.lang.Exception

WfProcessImpl

protected WfProcessImpl(ProcessPersistenceObject po)
Used to create object when restoring it from database.

Method Detail

requester

public WfRequesterInternal requester(WMSessionHandle shandle)
                              throws java.lang.Exception
Retrieve the requestor of this process.

Specified by:
requester in interface WfProcessInternal
Returns:
a WfRequester
Throws:
java.lang.Exception

requester

protected WfRequesterInternal requester(WMSessionHandle shandle,
                                        int mode)
                                 throws java.lang.Exception
Throws:
java.lang.Exception

setExternalRequesterClassName

public void setExternalRequesterClassName(WMSessionHandle shandle,
                                          java.lang.String extReqClassName)
                                   throws java.lang.Exception
Specified by:
setExternalRequesterClassName in interface WfProcessInternal
Throws:
java.lang.Exception

how_many_step

public int how_many_step(WMSessionHandle shandle)
                  throws java.lang.Exception
Retrieve the no of activities in this process.

Specified by:
how_many_step in interface WfProcessInternal
Returns:
an int
Throws:
java.lang.Exception

manager

public WfProcessMgrInternal manager(WMSessionHandle shandle)
                             throws java.lang.Exception
Retrieve the WfProcessMgr of this process.

Specified by:
manager in interface WfProcessInternal
Returns:
a WfProcessMgr
Throws:
java.lang.Exception

result

public java.util.Map result(WMSessionHandle shandle)
                     throws java.lang.Exception,
                            ResultNotAvailable
Retrieve the result for this process.

Specified by:
result in interface WfProcessInternal
Returns:
a Map
Throws:
java.lang.Exception
ResultNotAvailable

start

public void start(WMSessionHandle shandle)
           throws java.lang.Exception,
                  CannotStart,
                  AlreadyRunning,
                  ToolAgentGeneralException
Starts the process.

Specified by:
start in interface WfProcessInternal
Throws:
java.lang.Exception
CannotStart
AlreadyRunning
ToolAgentGeneralException

change_state

protected void change_state(WMSessionHandle shandle,
                            java.lang.String new_state)
                     throws java.lang.Exception,
                            InvalidState,
                            TransitionNotAllowed
Method change_state

Parameters:
new_state - a String
Throws:
java.lang.Exception
InvalidState
TransitionNotAllowed

set_process_context

public void set_process_context(WMSessionHandle shandle,
                                java.util.Map newValue)
                         throws java.lang.Exception,
                                InvalidData,
                                UpdateNotAllowed
Asignes the new values to some process context variables. The variable can be given by it's name or it's id.

Specified by:
set_process_context in interface WfExecutionObjectInternal
Specified by:
set_process_context in class WfExecutionObjectImpl
Parameters:
newValue - a Map
Throws:
java.lang.Exception
InvalidData
UpdateNotAllowed

resume

public void resume(WMSessionHandle shandle)
            throws java.lang.Exception,
                   CannotResume,
                   NotSuspended
Resume this process.

Specified by:
resume in interface WfExecutionObjectInternal
Specified by:
resume in class WfExecutionObjectImpl
Throws:
java.lang.Exception
CannotResume
NotSuspended

suspend

public void suspend(WMSessionHandle shandle)
             throws java.lang.Exception,
                    CannotSuspend,
                    NotRunning,
                    AlreadySuspended
Suspend this process.

Specified by:
suspend in interface WfExecutionObjectInternal
Specified by:
suspend in class WfExecutionObjectImpl
Throws:
java.lang.Exception
CannotSuspend
NotRunning
AlreadySuspended

terminateFromActivity

public void terminateFromActivity(WMSessionHandle shandle)
                           throws java.lang.Exception,
                                  CannotStop,
                                  NotRunning
Specified by:
terminateFromActivity in interface WfProcessInternal
Throws:
java.lang.Exception
CannotStop
NotRunning

terminate

public void terminate(WMSessionHandle shandle)
               throws java.lang.Exception,
                      CannotStop,
                      NotRunning
Terminate this process.

Specified by:
terminate in interface WfExecutionObjectInternal
Specified by:
terminate in class WfExecutionObjectImpl
Throws:
java.lang.Exception
CannotStop
NotRunning

abortFromActivity

public void abortFromActivity(WMSessionHandle shandle)
                       throws java.lang.Exception,
                              CannotStop,
                              NotRunning
Specified by:
abortFromActivity in interface WfProcessInternal
Throws:
java.lang.Exception
CannotStop
NotRunning

abort

public void abort(WMSessionHandle shandle)
           throws java.lang.Exception,
                  CannotStop,
                  NotRunning
Abort the execution of this process.

Specified by:
abort in interface WfExecutionObjectInternal
Specified by:
abort in class WfExecutionObjectImpl
Throws:
java.lang.Exception
CannotStop
NotRunning

run

protected void run(WMSessionHandle shandle,
                   WfActivityInternal lastFinishedActivity)
            throws java.lang.Exception,
                   ToolAgentGeneralException
Throws:
java.lang.Exception
ToolAgentGeneralException

start_activity

public WfActivityInternal start_activity(WMSessionHandle shandle,
                                         java.lang.String actDefId,
                                         java.lang.String blockActId)
                                  throws java.lang.Exception,
                                         ToolAgentGeneralException
Activates an activity object

Specified by:
start_activity in interface WfProcessInternal
Parameters:
actDefId - a String
blockActId - a String
Throws:
java.lang.Exception
ToolAgentGeneralException

activateBlockActivity

public WfActivityInternal activateBlockActivity(WMSessionHandle shandle,
                                                java.lang.String blockActDefId)
                                         throws java.lang.Exception
Specified by:
activateBlockActivity in interface WfProcessInternal
Throws:
java.lang.Exception

process_definition_id

public java.lang.String process_definition_id(WMSessionHandle shandle)
                                       throws java.lang.Exception
Specified by:
process_definition_id in interface WfProcessInternal
Throws:
java.lang.Exception

process_definition_name

public java.lang.String process_definition_name(WMSessionHandle shandle)
                                         throws java.lang.Exception
Specified by:
process_definition_name in interface WfProcessInternal
Throws:
java.lang.Exception

manager_name

public java.lang.String manager_name(WMSessionHandle shandle)
                              throws java.lang.Exception
Specified by:
manager_name in interface WfProcessInternal
Throws:
java.lang.Exception

manager_version

public java.lang.String manager_version(WMSessionHandle shandle)
                                 throws java.lang.Exception
Specified by:
manager_version in interface WfProcessInternal
Throws:
java.lang.Exception

startActivity

protected WfActivityInternal startActivity(WMSessionHandle shandle,
                                           org.enhydra.shark.xpdl.elements.Activity activity,
                                           WfActivityInternal ba)
                                    throws java.lang.Exception,
                                           ToolAgentGeneralException
Throws:
java.lang.Exception
ToolAgentGeneralException

activity_complete

public void activity_complete(WMSessionHandle shandle,
                              WfActivityInternal activity)
                       throws java.lang.Exception
Receives notification when an activity has completed.

Specified by:
activity_complete in interface WfProcessInternal
Throws:
java.lang.Exception

activity_terminate

public void activity_terminate(WMSessionHandle shandle,
                               WfActivityInternal activity)
                        throws java.lang.Exception
Receives notification when an activity has terminated.

Specified by:
activity_terminate in interface WfProcessInternal
Throws:
java.lang.Exception

activity_abort

public void activity_abort(WMSessionHandle shandle,
                           WfActivityInternal activity)
                    throws java.lang.Exception
Receives notification when an activity has aborted.

Specified by:
activity_abort in interface WfProcessInternal
Throws:
java.lang.Exception

queueNext

protected void queueNext(WMSessionHandle shandle,
                         WfActivityInternal fromActivity)
                  throws java.lang.Exception,
                         ToolAgentGeneralException
Throws:
java.lang.Exception
ToolAgentGeneralException

joinTransition

protected void joinTransition(WMSessionHandle shandle,
                              WfActivityInternal fromActivity,
                              org.enhydra.shark.xpdl.elements.Activity toActivityDef)
                       throws java.lang.Exception,
                              ToolAgentGeneralException
Throws:
java.lang.Exception
ToolAgentGeneralException

getTransFrom

protected java.util.List getTransFrom(WMSessionHandle shandle,
                                      WfActivityInternal fromActivity,
                                      org.enhydra.shark.xpdl.elements.Activity fromActDef)
                               throws java.lang.Exception
Throws:
java.lang.Exception

getExceptionTransFrom

protected java.util.List getExceptionTransFrom(WMSessionHandle shandle,
                                               WfActivityInternal fromActivity,
                                               org.enhydra.shark.xpdl.elements.Activity fromActDef,
                                               java.lang.String exceptionName)
                                        throws java.lang.Exception
Throws:
java.lang.Exception

notifyRequester

protected void notifyRequester(WMSessionHandle shandle,
                               WfEventAudit event)
                        throws java.lang.Exception
Throws:
java.lang.Exception

initializeProcessContext

protected void initializeProcessContext(WMSessionHandle shandle)
                                 throws java.lang.Exception
Puts the workflow relevant data and formal parameters into process context. All data is put into context by id-value pairs. The initial value of WRD is set if exist, or default value otherwise. The formal parameters are also initialized to the default values.

Throws:
java.lang.Exception

getNextWorkItemId

protected java.lang.String getNextWorkItemId(WMSessionHandle shandle,
                                             java.lang.String aDefId)
                                      throws java.lang.Exception
Get the next work item ID. Each work item will have a unique ID.

Returns:
The work item ID string
Throws:
java.lang.Exception

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

equals

public boolean equals(java.lang.Object obj)
It is assumed that there can't be two or more processes having the same key.

Overrides:
equals in class java.lang.Object

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

isActivityDefinitionActive

protected boolean isActivityDefinitionActive(WMSessionHandle shandle,
                                             org.enhydra.shark.xpdl.elements.Activity aDef,
                                             WfActivityInternal ba)
                                      throws java.lang.Exception
Returns if there is an active activity for given definition.

Throws:
java.lang.Exception

setProcessVariables

protected void setProcessVariables(WMSessionHandle shandle)
                            throws java.lang.Exception
Throws:
java.lang.Exception

getProcessDefinition

protected org.enhydra.shark.xpdl.elements.WorkflowProcess getProcessDefinition(WMSessionHandle shandle)
                                                                        throws java.lang.Exception
Throws:
java.lang.Exception

persist

public void persist(WMSessionHandle shandle)
             throws java.lang.Exception
Specified by:
persist in interface PersistenceInterface
Throws:
java.lang.Exception

persistProcessContext

protected void persistProcessContext(WMSessionHandle shandle)
                              throws java.lang.Exception
Throws:
java.lang.Exception

delete

public void delete(WMSessionHandle shandle)
            throws java.lang.Exception
Specified by:
delete in interface PersistenceInterface
Throws:
java.lang.Exception

mandatoryDelete

public void mandatoryDelete(WMSessionHandle shandle)
                     throws java.lang.Exception
Specified by:
mandatoryDelete in interface WfProcessInternal
Throws:
java.lang.Exception

synchronizeProcess

protected void synchronizeProcess(WMSessionHandle shandle)
                           throws java.lang.Exception
Throws:
java.lang.Exception

getXPDLObject

protected org.enhydra.shark.xpdl.XMLCollectionElement getXPDLObject(WMSessionHandle shandle)
                                                             throws java.lang.Exception
Specified by:
getXPDLObject in class WfExecutionObjectImpl
Throws:
java.lang.Exception

getContext

public java.util.Map getContext(WMSessionHandle shandle)
                         throws java.lang.Exception
Specified by:
getContext in interface WfExecutionObjectInternal
Throws:
java.lang.Exception

evaluator

public Evaluator evaluator(WMSessionHandle shandle)
                    throws java.lang.Exception
Specified by:
evaluator in interface WfProcessInternal
Throws:
java.lang.Exception

createAndFillPersistentObject

protected ProcessPersistenceObject createAndFillPersistentObject()

fillPersistentObject

protected void fillPersistentObject(ProcessPersistenceObject po)

restore

protected void restore(ProcessPersistenceObject po)

package_id

public java.lang.String package_id(WMSessionHandle shandle)
                            throws java.lang.Exception
Specified by:
package_id in interface WfProcessInternal
Throws:
java.lang.Exception

getActiveActivity

public WfActivityInternal getActiveActivity(WMSessionHandle shandle,
                                            java.lang.String actId)
                                     throws java.lang.Exception
Specified by:
getActiveActivity in interface WfProcessInternal
Throws:
java.lang.Exception

getActiveActivities

public java.util.List getActiveActivities(WMSessionHandle shandle)
                                   throws java.lang.Exception
Specified by:
getActiveActivities in interface WfProcessInternal
Throws:
java.lang.Exception

getAllActivities

public java.util.List getAllActivities(WMSessionHandle shandle)
                                throws java.lang.Exception
Specified by:
getAllActivities in interface WfProcessInternal
Throws:
java.lang.Exception

getActivity

public WfActivityInternal getActivity(WMSessionHandle shandle,
                                      java.lang.String actId)
                               throws java.lang.Exception
Specified by:
getActivity in interface WfProcessInternal
Throws:
java.lang.Exception

getCreationTime

public long getCreationTime(WMSessionHandle shandle)
                     throws java.lang.Exception
Specified by:
getCreationTime in interface WfExecutionObjectInternal
Specified by:
getCreationTime in class WfExecutionObjectImpl
Throws:
java.lang.Exception

getStartTime

public long getStartTime(WMSessionHandle shandle)
                  throws java.lang.Exception
Specified by:
getStartTime in interface WfExecutionObjectInternal
Specified by:
getStartTime in class WfExecutionObjectImpl
Throws:
java.lang.Exception

getResourceRequesterId

public java.lang.String getResourceRequesterId(WMSessionHandle shandle)
                                        throws java.lang.Exception
Specified by:
getResourceRequesterId in interface WfProcessInternal
Throws:
java.lang.Exception

getActivityRequesterId

public java.lang.String getActivityRequesterId(WMSessionHandle shandle)
                                        throws java.lang.Exception
Specified by:
getActivityRequesterId in interface WfProcessInternal
Throws:
java.lang.Exception

getActivityRequesterProcessId

public java.lang.String getActivityRequesterProcessId(WMSessionHandle shandle)
                                               throws java.lang.Exception
Specified by:
getActivityRequesterProcessId in interface WfProcessInternal
Throws:
java.lang.Exception

setXPDLAttribs

protected void setXPDLAttribs()

restoreActivityToFollowedTransitionsMap

protected int restoreActivityToFollowedTransitionsMap(WMSessionHandle shandle,
                                                      org.enhydra.shark.AndJoinHelperStruct ajhs)
                                               throws java.lang.Exception
Throws:
java.lang.Exception

persistActivityToFollowedTransitions

protected void persistActivityToFollowedTransitions(WMSessionHandle shandle)
                                             throws java.lang.Exception
Throws:
java.lang.Exception

runBlock

protected void runBlock(WMSessionHandle shandle,
                        org.enhydra.shark.xpdl.elements.Activity bActivity,
                        WfActivityInternal blockActivity)
                 throws java.lang.Exception,
                        ToolAgentGeneralException
Throws:
java.lang.Exception
ToolAgentGeneralException

checkDeadlines

public WfActivityInternal[] checkDeadlines(WMSessionHandle shandle)
                                    throws java.lang.Exception
Specified by:
checkDeadlines in interface WfProcessInternal
Throws:
java.lang.Exception

checkDeadline

public boolean checkDeadline(WMSessionHandle shandle,
                             java.lang.String actId)
                      throws java.lang.Exception
Specified by:
checkDeadline in interface WfProcessInternal
Throws:
java.lang.Exception

handleBrokenAsyncDeadlines

protected void handleBrokenAsyncDeadlines(WMSessionHandle shandle,
                                          java.util.Map actToExcNames)
                                   throws java.lang.Exception
Throws:
java.lang.Exception

getAllActiveActivitiesForBlockActivity

public java.util.List getAllActiveActivitiesForBlockActivity(WMSessionHandle shandle,
                                                             java.lang.String blockActivityId)
                                                      throws java.lang.Exception
Specified by:
getAllActiveActivitiesForBlockActivity in interface WfProcessInternal
Throws:
java.lang.Exception

isReadOnly

public boolean isReadOnly()
Specified by:
isReadOnly in interface WfProcessInternal

setReadOnly

public void setReadOnly(boolean ro)
Specified by:
setReadOnly in interface WfProcessInternal

duplicate

public WfProcessInternal duplicate()
                            throws java.lang.Exception
Specified by:
duplicate in interface WfProcessInternal
Throws:
java.lang.Exception

checkReadOnly

protected void checkReadOnly()
                      throws java.lang.Exception
Specified by:
checkReadOnly in class WfExecutionObjectImpl
Throws:
java.lang.Exception

getUnsatisfiedSplitConditionHandlingMode

protected java.lang.String getUnsatisfiedSplitConditionHandlingMode(WMSessionHandle shandle)
                                                             throws java.lang.Exception
Throws:
java.lang.Exception

migrateProcess

public void migrateProcess(WMSessionHandle shandle,
                           WfProcessMgrInternal processMgr,
                           java.util.Map newVariables)
                    throws java.lang.Exception
Specified by:
migrateProcess in interface WfProcessInternal
Throws:
java.lang.Exception