WfRequester
is the interface that has a direct concern with the execution and results of a workflow process. It represents the request for some work to be done. Its performer, a {@link de.danet.an.workflow.omgcore.WfProcess
WfProcess
} isexpected to handle its request and communicate significant status changes; in particular to inform the requester when it has completed performing the request work.
The support of WfRequester
s in a workflow engine implementation is complicated because the {@link WfAuditHandler#receiveEvent receiveEvent
} methodreverses the client server relationship and because an object from the application space must be stored by the server.
Implementations of WfRequester
are therefore subject to the following restrictions:
- The implementation must implement {@link java.io.Serializable
java.io.Serializable
}. Make sure not to use any attributes that are not serializable. - In order for deserialization to work, the implementation's class file must be in the classpath of the application server.
- The implementation must provide proper {@link Object#equals
equals
} and {@link Object#hashCode hashCode
}methods.
Most applications will simply use the requester provided as {@link de.danet.an.workflow.api.DefaultRequester
DefaultRequester
}.