org.kuali.rice.kew.actions
Class ApproveAction

java.lang.Object
  extended by org.kuali.rice.kew.actions.ActionTakenEvent
      extended by org.kuali.rice.kew.actions.ApproveAction

public class ApproveAction
extends ActionTakenEvent

The ApproveAction records and processes an approve action. The routeheader is first checked to make sure the action is valid for the document. Next the user is checked to make sure he/she has not taken a previous action on this document at the actions responsibility or below. The action is recorded. Any requests related to this user are deactivated.

Author:
Kuali Rice Team (rice.collab@kuali.org)

Field Summary
 
Fields inherited from class org.kuali.rice.kew.actions.ActionTakenEvent
annotation, DEFAULT_ANNOTATION, DEFAULT_QUEUE_DOCUMENT_AFTER_ACTION, DEFAULT_RUN_POSTPROCESSOR_LOGIC, routeHeader
 
Constructor Summary
ApproveAction(DocumentRouteHeaderValue routeHeader, PrincipalContract principal)
           
ApproveAction(DocumentRouteHeaderValue routeHeader, PrincipalContract principal, String annotation)
           
 
Method Summary
 boolean isActionCompatibleRequest(List<ActionRequestValue> requests)
           
 void recordAction()
          Records the approve action.
 String validateActionRules()
          Placeholder for validation rules for each action
 String validateActionRules(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
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ApproveAction

public ApproveAction(DocumentRouteHeaderValue routeHeader,
                     PrincipalContract principal)
Parameters:
routeHeader - RouteHeader for the document upon which the action is taken.
principal - User taking the action.

ApproveAction

public ApproveAction(DocumentRouteHeaderValue routeHeader,
                     PrincipalContract principal,
                     String annotation)
Parameters:
routeHeader - RouteHeader for the document upon which the action is taken.
principal - User taking the action.
annotation - User comment on the action taken
Method Detail

validateActionRules

public String validateActionRules()
Description copied from class: ActionTakenEvent
Placeholder for validation rules for each action

Specified by:
validateActionRules in class ActionTakenEvent
Returns:
error message string of specific error message

validateActionRules

public String validateActionRules(List<ActionRequestValue> actionRequests)
Specified by:
validateActionRules in class ActionTakenEvent

isActionCompatibleRequest

public boolean isActionCompatibleRequest(List<ActionRequestValue> requests)
Overrides:
isActionCompatibleRequest in class ActionTakenEvent

recordAction

public void recordAction()
                  throws InvalidActionTakenException
Records the approve action. - Checks to make sure the document status allows the action. - Checks that the user has not taken a previous action. - Deactivates the pending requests for this user - Records the action

Specified by:
recordAction in class ActionTakenEvent
Throws:
InvalidActionTakenException
ResourceUnavailableException


Copyright © 2005–2014 The Kuali Foundation. All rights reserved.