org.demac.process.base.extension
Class ExtendedExecutionService

java.lang.Object
  extended by org.demac.process.base.extension.ExtensionModule
      extended by org.demac.process.base.extension.ExtendedExecutionService
All Implemented Interfaces:
Service

public abstract class ExtendedExecutionService
extends ExtensionModule

Extension of the org.demac.process.base.exe.BaseExecutionService, executing more complex control flows. It handles the execution of org.demac.process.base.dpdl.TransitionRestrictions such as org.demac.process.base.dpdl.Splits and org.demac.process.base.dpdl.Joins and the execution of parallel threads. It is implemented as a singleton.


Field Summary
static java.lang.String manualType
           
static java.lang.String subflowType
           
static java.lang.String transitionRestrictionType
           
 
Fields inherited from class org.demac.process.base.extension.ExtensionModule
STATUS_EXECUTION_DONE, STATUS_MIGRATE_TO_OTHER, STATUS_WAIT_FOR_EVENT
 
Constructor Summary
ExtendedExecutionService()
           
 
Method Summary
abstract  boolean execute(DataSet ds, java.lang.String type)
          Method to execute a Process which needs special control flow support
 java.lang.String getId()
           
static ExtensionModule getInstance()
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.demac.Service
isStarted, start, stop
 

Field Detail

transitionRestrictionType

public static final java.lang.String transitionRestrictionType
See Also:
Constant Field Values

subflowType

public static final java.lang.String subflowType
See Also:
Constant Field Values

manualType

public static final java.lang.String manualType
See Also:
Constant Field Values
Constructor Detail

ExtendedExecutionService

public ExtendedExecutionService()
Method Detail

getInstance

public static ExtensionModule getInstance()
Returns:
the instance of the org.demac.process.base.extension.ExtendedExecutionService

getId

public java.lang.String getId()
Specified by:
getId in class ExtensionModule
Returns:
the identifier of the org.demac.process.base.extension.ExtensionModule.
See Also:
ExtensionModule.getId()

execute

public abstract boolean execute(DataSet ds,
                                java.lang.String type)
                         throws java.lang.Exception
Method to execute a Process which needs special control flow support

Specified by:
execute in class ExtensionModule
Parameters:
type - a possible description to specify the handling of the object to execute (if there is more than one possibility to execute it).
ds - the dataset containing process to be executed.
Returns:
true if the special control flow was performed successfully.
Throws:
java.lang.Exception