com.flexive.shared.interfaces
Interface WorkflowEngine

All Known Subinterfaces:
WorkflowEngineLocal

public interface WorkflowEngine

Workflow management engine.

Author:
Daniel Lichtenberger (daniel.lichtenberger@flexive.com), UCS - unique computing solutions gmbh (http://www.ucs.at)

Method Summary
 long create(Workflow workflow)
          Creates a new workflow.
 void remove(long workflowId)
          Remove a workflow defined by its unique workflowId.
 void update(Workflow workflow)
          Modifies a workflow.
 

Method Detail

remove

void remove(long workflowId)
            throws FxApplicationException
Remove a workflow defined by its unique workflowId.

The caller must be within ROLE_WORKFLOWMANAGEMENT.

Parameters:
workflowId - the unique workflowId of the workflow to removed
Throws:
FxApplicationException - TODO
FxNotFoundException - if the workflow defined by its workflowId does not exist
FxRemoveException - if the remove failed
FxNoAccessException - if the caller lacks the permissions to remove a workflow

update

void update(Workflow workflow)
            throws FxApplicationException
Modifies a workflow.

The caller must be within ROLE_WORKFLOWMANAGEMENT.

Parameters:
workflow - TODO
Throws:
FxApplicationException - TODO
FxInvalidParameterException - if a invalid parameter was encountered
FxNotFoundException - if the workflow does not exist
FxUpdateException - if the update failed
FxNoAccessException - if the caller lacks the permissions to update the workflow
FxEntryExistsException - if a workflow with the new name already exists
FxCreateException - if a step could not be created
FxRemoveException - if a removed workflow route could not be removed
FxEntryInUseException - if a removed workflow step is still in use

create

long create(Workflow workflow)
            throws FxApplicationException
Creates a new workflow.

The caller must be within ROLE_WORKFLOWMANAGEMENT.

Parameters:
workflow - the workflow to be created (the ID attribute is ignored)
Returns:
the ID of the created workflow
Throws:
FxApplicationException - TODO
FxCreateException - if the creation failed
FxEntryExistsException - if a workflow with the given name already exists
FxNoAccessException - if the caller lacks the permissions to remove the workflow
FxInvalidParameterException - If a parameter is invalid