org.enhydra.shark
Class WfProcessMgrImpl

java.lang.Object
  extended by org.enhydra.shark.WfProcessMgrImpl
All Implemented Interfaces:
PersistenceInterface, WfProcessMgrInternal

public class WfProcessMgrImpl
extends java.lang.Object
implements WfProcessMgrInternal

WfProcessMgrImpl - Workflow Process Manager implementation

Author:
Sasa Bojanic, Vladimir Puskas

Field Summary
protected  java.util.Map contextSignature
           
protected  long created
           
protected  java.util.Map inputSignature
           
protected  boolean justCreated
           
protected  java.lang.String name
           
protected  java.lang.String packageId
           
protected  java.lang.String processDefinitionId
           
protected  java.util.Map resultSignature
           
protected  process_mgr_stateType state
           
protected  java.lang.String version
           
protected  org.enhydra.shark.xpdl.elements.WorkflowProcess wp
           
 
Constructor Summary
protected WfProcessMgrImpl(ProcessMgrPersistenceObject po)
          Used to create object when restoring it from database.
protected WfProcessMgrImpl(WMSessionHandle shandle, java.lang.String pkgId, java.lang.String version, java.lang.String pDefId)
          Creates new WfProcessMgrImpl
 
Method Summary
protected  void buildSignatures(WMSessionHandle shandle)
           
 java.lang.String category(WMSessionHandle shandle)
           
 java.util.Map context_signature(WMSessionHandle shandle)
           
 WfProcessInternal create_process(WMSessionHandle shandle, WfRequesterInternal requester)
          Create a WfProcess object
protected  ProcessMgrPersistenceObject createAndFillPersistentObject()
           
 void delete(WMSessionHandle shandle)
           
 java.lang.String description(WMSessionHandle shandle)
           
 boolean equals(java.lang.Object obj)
          It is assumed that there can't be two or more processes mgrs having the same package id and process definition id.
protected  void fillPersistentObject(ProcessMgrPersistenceObject po)
           
protected  java.lang.String getNextProcessKey(WMSessionHandle shandle)
           
protected  org.enhydra.shark.xpdl.elements.WorkflowProcess getProcessDefinition(WMSessionHandle shandle)
           
 int hashCode()
           
 java.util.Map input_signature(WMSessionHandle shandle)
           
 java.lang.String name(WMSessionHandle shandle)
           
 java.lang.String package_id(WMSessionHandle shandle)
           
 void persist(WMSessionHandle shandle)
           
 java.lang.String process_definition_id(WMSessionHandle shandle)
           
 java.lang.String process_definition_name(WMSessionHandle shandle)
           
 process_mgr_stateType process_mgr_state(WMSessionHandle shandle)
           
protected  void restore(ProcessMgrPersistenceObject po)
           
 java.util.Map result_signature(WMSessionHandle shandle)
           
 void set_process_mgr_state(WMSessionHandle shandle, process_mgr_stateType new_state)
           
 java.lang.String toString()
           
 java.lang.String version(WMSessionHandle shandle)
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

wp

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

packageId

protected java.lang.String packageId

processDefinitionId

protected java.lang.String processDefinitionId

name

protected java.lang.String name

state

protected process_mgr_stateType state

contextSignature

protected java.util.Map contextSignature

resultSignature

protected java.util.Map resultSignature

inputSignature

protected java.util.Map inputSignature

version

protected java.lang.String version

created

protected long created

justCreated

protected boolean justCreated
Constructor Detail

WfProcessMgrImpl

protected WfProcessMgrImpl(WMSessionHandle shandle,
                           java.lang.String pkgId,
                           java.lang.String version,
                           java.lang.String pDefId)
                    throws java.lang.Exception
Creates new WfProcessMgrImpl

Parameters:
pkgId - The Id of package where process definition exists.
pDefId - The Id of process definition.
Throws:
java.lang.Exception

WfProcessMgrImpl

protected WfProcessMgrImpl(ProcessMgrPersistenceObject po)
Used to create object when restoring it from database.

Method Detail

process_mgr_state

public process_mgr_stateType process_mgr_state(WMSessionHandle shandle)
                                        throws java.lang.Exception
Specified by:
process_mgr_state in interface WfProcessMgrInternal
Throws:
java.lang.Exception

set_process_mgr_state

public void set_process_mgr_state(WMSessionHandle shandle,
                                  process_mgr_stateType new_state)
                           throws java.lang.Exception,
                                  TransitionNotAllowed
Specified by:
set_process_mgr_state in interface WfProcessMgrInternal
Throws:
java.lang.Exception
TransitionNotAllowed

name

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

description

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

category

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

version

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

context_signature

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

result_signature

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

input_signature

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

create_process

public WfProcessInternal create_process(WMSessionHandle shandle,
                                        WfRequesterInternal requester)
                                 throws java.lang.Exception,
                                        NotEnabled,
                                        InvalidRequester,
                                        RequesterRequired
Create a WfProcess object

Specified by:
create_process in interface WfProcessMgrInternal
Throws:
java.lang.Exception
NotEnabled
InvalidRequester
RequesterRequired

process_definition_id

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

package_id

public java.lang.String package_id(WMSessionHandle shandle)
                            throws java.lang.Exception
Specified by:
package_id in interface WfProcessMgrInternal
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 WfProcessMgrInternal
Throws:
java.lang.Exception

buildSignatures

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

getNextProcessKey

protected java.lang.String getNextProcessKey(WMSessionHandle shandle)

getProcessDefinition

protected org.enhydra.shark.xpdl.elements.WorkflowProcess getProcessDefinition(WMSessionHandle shandle)
                                                                        throws java.lang.Exception
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 mgrs having the same package id and process definition id.

Overrides:
equals in class java.lang.Object

hashCode

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

persist

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

delete

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

createAndFillPersistentObject

protected ProcessMgrPersistenceObject createAndFillPersistentObject()

fillPersistentObject

protected void fillPersistentObject(ProcessMgrPersistenceObject po)

restore

protected void restore(ProcessMgrPersistenceObject po)