Package org.kuali.rice.kew.actions
Class ReturnToPreviousNodeAction
java.lang.Object
org.kuali.rice.kew.actions.ActionTakenEvent
org.kuali.rice.kew.actions.ReturnToPreviousNodeAction
- Direct Known Subclasses:
RecallAction
Returns a document to a previous node in the route.
Current implementation only supports returning to a node on the main branch of the
document.
- Author:
- Kuali Rice Team (rice.collab@kuali.org)
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected static final booleanprotected static final Stringprotected static final org.apache.logging.log4j.Loggerprotected final StringFields inherited from class org.kuali.rice.kew.actions.ActionTakenEvent
annotation, DEFAULT_ANNOTATION, DEFAULT_QUEUE_DOCUMENT_AFTER_ACTION, DEFAULT_RUN_POSTPROCESSOR_LOGIC, routeHeader -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedReturnToPreviousNodeAction(String overrideActionTakenCode, DocumentRouteHeaderValue routeHeader, org.kuali.rice.kim.api.identity.principal.PrincipalContract principal, String annotation, String nodeName, boolean sendNotifications) Constructor used to override the action taken code...e.g. when being performed as part of a Move actionprotectedReturnToPreviousNodeAction(String overrideActionTakenCode, DocumentRouteHeaderValue routeHeader, org.kuali.rice.kim.api.identity.principal.PrincipalContract principal, String annotation, String nodeName, boolean sendNotifications, boolean runPostProcessorLogic) Constructor used to override the action taken code...e.g. when being performed as part of a Move actionReturnToPreviousNodeAction(DocumentRouteHeaderValue routeHeader, org.kuali.rice.kim.api.identity.principal.PrincipalContract principal) ReturnToPreviousNodeAction(DocumentRouteHeaderValue routeHeader, org.kuali.rice.kim.api.identity.principal.PrincipalContract principal, String annotation, String nodeName, boolean sendNotifications) ReturnToPreviousNodeAction(DocumentRouteHeaderValue routeHeader, org.kuali.rice.kim.api.identity.principal.PrincipalContract principal, String annotation, String nodeName, boolean sendNotifications, boolean runPostProcessorLogic) -
Method Summary
Modifier and TypeMethodDescriptionprotected booleanprotected org.kuali.rice.kim.api.identity.principal.PrincipalContractdetermineInitialNodePrincipal(DocumentRouteHeaderValue routeHeader) Determines which principal to generate an actionqrequest when the document is returned to the initial node By default this is the document initiator.voidexecuteNodeChange(Collection activeNodes, NodeGraphSearchResult result) protected List<ActionRequestValue>findApplicableActionRequests(List<ActionRequestValue> actionRequests) Allows subclasses to determine which actionrequests to inspect for purposes of action validationprotected ActionRequestTypeTemplate method that determines what action request to generate when returning to initiatorbooleanisActionCompatibleRequest(List<ActionRequestValue> requests) booleanvoidprocessReturnToInitiator(RouteNodeInstance newNodeInstance) voidprotected voidTemplate method subclasses can use to send addition notification upon a return to previous action.voidsetSuperUserUsage(boolean superUserUsage) Placeholder for validation rules for each actionvalidateActionRules(List<ActionRequestValue> actionRequests) Methods inherited from class org.kuali.rice.kew.actions.ActionTakenEvent
filterActionRequestsByCode, findDelegatorForActionRequests, generateAcknowledgementsToPreviousActionTakers, getActionPerformedCode, getActionRequestService, getActionTakenCode, getDocumentId, getGroupIdsForPrincipal, getPrincipal, getRouteHeader, invokePostProcessor, isActionValid, isPolicySet, isPolicySet, isRunPostProcessorLogic, notifyActionTaken, notifyAfterActionTaken, notifyStatusChange, performAction, queueDocumentProcessing, saveActionTaken, saveActionTaken, saveActionTaken, saveActionTaken, setActionTakenCode, setRouteHeader, updateSearchableAttributesIfPossible
-
Field Details
-
LOG
protected static final org.apache.logging.log4j.Logger LOG -
INITIAL_NODE_NAME
-
DEFAULT_SEND_NOTIFICATIONS
protected static final boolean DEFAULT_SEND_NOTIFICATIONS- See Also:
-
nodeName
-
-
Constructor Details
-
ReturnToPreviousNodeAction
public ReturnToPreviousNodeAction(DocumentRouteHeaderValue routeHeader, org.kuali.rice.kim.api.identity.principal.PrincipalContract principal) -
ReturnToPreviousNodeAction
public ReturnToPreviousNodeAction(DocumentRouteHeaderValue routeHeader, org.kuali.rice.kim.api.identity.principal.PrincipalContract principal, String annotation, String nodeName, boolean sendNotifications) -
ReturnToPreviousNodeAction
public ReturnToPreviousNodeAction(DocumentRouteHeaderValue routeHeader, org.kuali.rice.kim.api.identity.principal.PrincipalContract principal, String annotation, String nodeName, boolean sendNotifications, boolean runPostProcessorLogic) -
ReturnToPreviousNodeAction
protected ReturnToPreviousNodeAction(String overrideActionTakenCode, DocumentRouteHeaderValue routeHeader, org.kuali.rice.kim.api.identity.principal.PrincipalContract principal, String annotation, String nodeName, boolean sendNotifications) Constructor used to override the action taken code...e.g. when being performed as part of a Move action -
ReturnToPreviousNodeAction
protected ReturnToPreviousNodeAction(String overrideActionTakenCode, DocumentRouteHeaderValue routeHeader, org.kuali.rice.kim.api.identity.principal.PrincipalContract principal, String annotation, String nodeName, boolean sendNotifications, boolean runPostProcessorLogic) Constructor used to override the action taken code...e.g. when being performed as part of a Move action
-
-
Method Details
-
getReturnToInitiatorActionRequestType
Template method that determines what action request to generate when returning to initiator- Returns:
- the ActionRequestType
-
processReturnToInitiator
-
determineInitialNodePrincipal
protected org.kuali.rice.kim.api.identity.principal.PrincipalContract determineInitialNodePrincipal(DocumentRouteHeaderValue routeHeader) Determines which principal to generate an actionqrequest when the document is returned to the initial node By default this is the document initiator.- Parameters:
routeHeader- the document route header- Returns:
- a Principal
-
validateActionRules
Description copied from class:ActionTakenEventPlaceholder for validation rules for each action- Specified by:
validateActionRulesin classActionTakenEvent- Returns:
- error message string of specific error message
-
validateActionRules
- Specified by:
validateActionRulesin classActionTakenEvent
-
canReturnToPreviousNode
protected boolean canReturnToPreviousNode() -
findApplicableActionRequests
protected List<ActionRequestValue> findApplicableActionRequests(List<ActionRequestValue> actionRequests) Allows subclasses to determine which actionrequests to inspect for purposes of action validation- Parameters:
actionRequests- all actionrequests for this document- Returns:
- a (possibly) filtered list of actionrequests
-
isActionCompatibleRequest
- Overrides:
isActionCompatibleRequestin classActionTakenEvent
-
recordAction
- Specified by:
recordActionin classActionTakenEvent- Throws:
InvalidActionTakenException
-
sendAdditionalNotifications
protected void sendAdditionalNotifications()Template method subclasses can use to send addition notification upon a return to previous action. This occurs after the postprocessors have been called and the node has been changed -
executeNodeChange
public void executeNodeChange(Collection activeNodes, NodeGraphSearchResult result) throws InvalidActionTakenException - Throws:
InvalidActionTakenException
-
isSuperUserUsage
public boolean isSuperUserUsage() -
setSuperUserUsage
public void setSuperUserUsage(boolean superUserUsage)
-