Package org.kuali.rice.kew.routemodule
Interface RouteModule
- All Known Implementing Classes:
FlexRMAdapter,PeopleFlowRouteModule,RoleRouteModule,RulesEngineRouteModule
public interface RouteModule
A RouteModule is responsible for generating Action Requests for a given Route Header document.
Implementations of this class are potentially remotable, so this interface uses value objects.
- Author:
- Kuali Rice Team (rice.collab@kuali.org)
-
Method Summary
Modifier and TypeMethodDescriptionfindActionRequests(RouteContext context) Generate action requests for the given RouteContext.booleanisMoreRequestsAvailable(RouteContext context) Returns true if this RouteModule has more requests available which it can generate.resolveResponsibilityId(String responsibilityId) The route module will re-resolve the given responsibilityId and return an object that contains the key to either a user, group, or role.
-
Method Details
-
findActionRequests
Generate action requests for the given RouteContext.The list of requests returned should only contain root action requests (those with no parent).
- Returns:
- A List of the generated ActionRequestValue objects.
- Throws:
Exception
-
resolveResponsibilityId
The route module will re-resolve the given responsibilityId and return an object that contains the key to either a user, group, or role. The original responsibility associated with the given id will then be swapped with the new ResponsibleParty when routing is resolved.This method is intended to allow for the calling code to be able to "switch-out" one responsibility for another (in the case of a change to an assigned reponsibility).
Returning null from this method will indicate that the original responsibile party should remain unchanged. This is typically the recommended default for implementation of this method and covers most use cases.
- Parameters:
responsibilityId- the id of the responsibility to be resolved- Returns:
- the responsibility party with which to replace the original responsibility, or null if the responsibility should remain unchanged.
- Throws:
WorkflowException
-
isMoreRequestsAvailable
Returns true if this RouteModule has more requests available which it can generate. This method will only be called after the first set of action requests returned by the first invocation of findActionRequests have been fully activated. If this method returns true, findActionRequests will be invoked again and those requests will all be activated before the cycle continues until this method returns false;- Parameters:
context- the route context- Returns:
- true if this route module has more requests it can generate, false otherwise
-