Package de.danet.an.workflow.omgcore

This package defines the core domain of a workflow management system.

See:
          Description

Interface Summary
ProcessData ProcessData represents context and result data of a WfExecutionObject.
ProcessDataInfo ProcessDataInfo describes the structure of the process data associated with a WfExecutionObject.
WfActivity WfActivity is a step in a process that is associated, as part of an aggregation, with a single WfProcess.
WfAssignment A WfAssignment links WfActivity objects to WfResource objects.
WfAssignmentAuditEvent A WfAssignmentAuditEvent provides an audit record of assignment change information for either the status of an assignment change for a WfActivity or when an exisiting assignment is reassigned to another resource.
WfAuditEvent A WfAuditEvent provides an audit record of workflow event information.
WfAuditHandler The listener interface for receiving an event from a process.
WfCreateProcessAuditEvent A WfCreateProcessAuditEvent provides an audit record with information related to the creation of a process.
WfDataAuditEvent A WfDataAuditEvent provides an audit record of either context changes of a WfExecutionObject or result changes of a WfActivity.
WfExecutionObject WfExecutionObject is an abstract base interface that defines common attributes, states, and operations for WfProcess and WfActivity.
WfObject A tagging interface that all omgcore interfaces must extend.
WfProcess WfProcess is the performer of a workflow request.
WfProcessMgr A WfProcessMgr represents a template for a specific workflow process; it is used to create instances of a workflow process.
WfRequester WfRequester is the interface that has a direct concern with the execution and results of a workflow process.
WfResource WfResource is an abstraction that represents a person or thing that will potentially accept an assignment to an activity.
WfStateAuditEvent A WfStateAuditEvent provides an audit record of information for a WfExecutionObject's state change.
 

Class Summary
WfExecutionObject.ClosedState This class defines the sub-states of State.CLOSED of a WfExecutionObject as returned by howClosedState().
WfExecutionObject.NotRunningState This class defines the sub-states of OpenState.NOT_RUNNING of a WfExecutionObject as returned by whyNotRunningState().
WfExecutionObject.OpenState This class defines the sub-states of State.OPEN of a WfExecutionObject as returned by whileOpenState().
WfExecutionObject.State This class defines the top-hierachy possible states of a WfExecutionObject as returned by workflowState().
 

Exception Summary
AlreadyRunningException This exception is raised by an attempt to start a WfProcess that is already running.
AlreadySuspendedException This exception is raised by an attempt to suspend a WfExecutionObject that is already suspended.
CannotChangeRequesterException This exception is raised when a change of a WfRequester is requested, but cannot be fulfilled.
CannotCompleteException This exception is raised by an attempt to complete execution of a WfExecutionObject when it cannot be completed yet.
CannotResumeException This exception is raised by an operation on a WfExecutionObject that attempts to resume an object that is not in a proper condition.
CannotStartException This exception is raised by an attempt to start a WfProcess that cannot be started yet.
CannotStopException This exception is raised by an operation on a WfExecutionObject that attempts to stop an object that is not in a proper condition.
CannotSuspendException This exception is raised by an operation on a WfExecutionObject that attempts to suspend an object that is not in the proper condidition.
HistoryNotAvailableException This exception is raised by a request for event audit history of a WfExecutionObject when the history is not available.
InvalidControlOperationException This exception is raised by an operation on a WfExecutionObject that attempts to perform an invalid control operation on that object.
InvalidDataException This exception is raised by an attempt to update the context of the result of a WfExecutionObject with data that does not match the signature of that object.
InvalidPerformerException This exception is raised by an attempt to signal a WfAuditEvent to a WfRequester that was not created by one of the WfProcesses associated with the WfRequester.
InvalidPriorityException This exception is raised by an attempt to assign an invalid priority to a WfExecutionObject.
InvalidRequesterException This exception is raised when a WfRequester is being identified that cannot be a "parent" of instances of the process modell.
InvalidResourceException This exception is raised by an attempt to assign or remove an invalid resource.
InvalidStateException This exception is raised by an attempt to change the state of a WfExecutionObject to a state that is not defined for that object.
NotAssignedException This exception is raised by an attempt to release a WfResource from an assignment it is not associated with.
NotEnabledException This exception is raised by an attempt to create a WfProcess using a WfProcessMgr that is disabled.
NotRunningException This exception is raised by an operation on a WfExecutionObject that attempts to perform a control operation on an object that needs to be in a running state, but is not.
NotSuspendedException This exception is raised by an operation on a WfExecutionObject that attempts to perform a control operation on an object that needs to be in a suspended state, but is not.
RequesterRequiredException This exception is raised when a valid WfRequester is required by the process definition, but one is not supplied.
ResultNotAvailableException This exception is raised when the requested result of a WfExecutionObject is not available (yet).
SourceNotAvailableException This exception is raised by the request for the source of a WfAuditEvent when the source is no longer available.
TransitionNotAllowedException This exception is raised by an attempt to perform an invalid state transistion of a WfExecutionObject.
UpdateNotAllowedException This exception is raised when it is not allowed to update the process context.
 

Package de.danet.an.workflow.omgcore Description

This package defines the core domain of a workflow management system. It is an adaption of the OMG "Workflow Management Facility Sepcification, V1.2". We consider the interfaces and classes in this package (together with the interfaces and classes in the extended API) to be useable as a general Java workflow API, i.e. if there was a JSR for a Java workflow API, we think the merger of these two packages would be a good starting point.

We have tried to follow the original specification as close as possible. However, some conventions used by OMG do not fit in the Java environment and changes have been made accordingly.

The main differences are:

We have, however not changed the following:

The documentation of classes and methods in this package consists mostly of an abbreviated version of the description provided by OMG's "Workflow Management Facility Specification, V1.2". Unless otherwise stated, the description from the specification applies fully, i.e. you can use the specification to obtain a detailed understanding of the functionallity provided.

The following picture shows the complete model.

Since:
V1.0