Class RequestActivationNode

java.lang.Object
org.kuali.rice.kew.engine.node.RequestActivationNodeBase
org.kuali.rice.kew.engine.node.RequestActivationNode
All Implemented Interfaces:
Node, SimpleNode
Direct Known Subclasses:
InitialNode, RequestsNode

public class RequestActivationNode extends RequestActivationNodeBase
A node which will activate any requests on it, returning true when there are no more requests which require activation.
Author:
Kuali Rice Team (rice.collab@kuali.org)
  • Constructor Details

    • RequestActivationNode

      public RequestActivationNode()
  • Method Details

    • process

      public SimpleResult process(RouteContext routeContext, RouteHelper routeHelper) throws Exception
      Throws:
      Exception
    • shouldTransition

      protected boolean shouldTransition(DocumentRouteHeaderValue document, RouteNodeInstance nodeInstance)
      Returns true if this node has completed it's work and should transition to the next node.

      This implementation will return true if there are no remaining pending approve or complete action requests at the given node instance. Subclasses can override this method to customize the behavior of how this determination is made.

      Parameters:
      document - the document the is being processed
      nodeInstance - the current node instance that is being processed
      Returns:
      true if this node has completed it's work, false otherwise
    • activateRequests

      public boolean activateRequests(RouteContext context, DocumentRouteHeaderValue document, RouteNodeInstance nodeInstance) throws org.kuali.rice.kew.api.exception.WorkflowException
      Activates the action requests that are pending at this routelevel of the document. The requests are processed by priority and then request ID. It is implicit in the access that the requests are activated according to the route level above all.

      FYI and acknowledgment requests do not cause the processing to stop. Only action requests for approval or completion cause the processing to stop and then only for route level with a serialized activation policy. Only requests at the current document's current route level are activated. Inactive requests at a lower level cause a routing exception.

      Exception routing and adhoc routing are processed slightly differently.

      Returns:
      True if the any approval actions were activated.
      Throws:
      org.kuali.rice.kew.api.exception.ResourceUnavailableException
      org.kuali.rice.kew.api.exception.WorkflowException
    • activateRequestsCustom

      protected boolean activateRequestsCustom(RouteContext context, List<ActionRequestValue> requests, List<ActionItem> generatedActionItems, DocumentRouteHeaderValue document, RouteNodeInstance nodeInstance) throws org.kuali.rice.kew.api.exception.WorkflowException
      Throws:
      org.kuali.rice.kew.api.exception.WorkflowException
    • activateRequest

      protected boolean activateRequest(RouteContext context, ActionRequestValue actionRequest, RouteNodeInstance nodeInstance, List<ActionItem> generatedActionItems, boolean isPriorityParallel)
    • saveActionRequest

      protected ActionRequestValue saveActionRequest(RouteContext context, ActionRequestValue actionRequest)
    • saveDocument

      protected DocumentRouteHeaderValue saveDocument(RouteContext context, DocumentRouteHeaderValue document)
    • logProcessingMessage

      protected void logProcessingMessage(ActionRequestValue request)