Package org.imixs.workflow
Interface WorkflowManager
- All Known Implementing Classes:
WorkflowService
public interface WorkflowManager
The WorkflowManager is the general interface for a concrete implementation of
a workflow management system. The Interface defines the basic methods for
processing and encountering a workItem. The WorkflowManger instantiate a
WorkflowKernel, an supports the platform dependent environment for concrete
Workitems and Workflow models.
- Version:
- 1.1
- Author:
- Ralph Soika
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptiongetWorkItem
(String uniqueid) returns a workItem by its uniuqeID ($uniqueID)processWorkItem
(ItemCollection workitem) This method processes a workItem.void
removeWorkItem
(ItemCollection workitem) The method removes the provide Workitem form the persistence unit managed by the WorkflowManager implementation.
-
Method Details
-
processWorkItem
ItemCollection processWorkItem(ItemCollection workitem) throws AccessDeniedException, ProcessingErrorException, PluginException, ModelException This method processes a workItem. The workItem needs at least provide the valid attributes $taskID and $EventID (integer values) to identify the current processEntity the workItem belongs to and the concrete activtyEntity which should be processed by the wokflowManager implementation. If the workItem is new the method creates a new instance for the corresponding process.The method is responsible to persist the workItem after successfully processing. The method returns the workItem with additional workflow informations defined by the workfowManager Implementation.
The Method throws an InvalidWorkitemException if the provided workItem is invalid or the provided attributes $taskID and $EventID (integer) did not match an valid modelEntity the workItem can be processed to.
- Parameters:
workitem
- a workItem instance which should be processed- Returns:
- the workItem instance after successful processing
- Throws:
AccessDeniedException
- - thrown if the user has insufficient access to update the workItemProcessingErrorException
- - thrown if the workitem could not be processed by the workflowKernelAdapterExceptionAdapterException
- - thrown if processing by an adapter failsPluginException
- - thrown if processing by a plugin failsModelException
-
getWorkItem
returns a workItem by its uniuqeID ($uniqueID)- Parameters:
uniqueid
-- Returns:
- WorkItem
-
removeWorkItem
The method removes the provide Workitem form the persistence unit managed by the WorkflowManager implementation. The Method throws an InvalidWorkitemException if the provided Workitem is invalid.- Parameters:
uniqueid
- of the WorkItem to be removed- Throws:
AccessDeniedException
-