Interface PostProcessor

All Known Implementing Classes:
DefaultPostProcessor

public interface PostProcessor
Hook for applications to perform logic due to workflow events from the engine.
Author:
Kuali Rice Team (rice.collab@kuali.org)
  • Method Details

    • doRouteStatusChange

      ProcessDocReport doRouteStatusChange(DocumentRouteStatusChange statusChangeEvent) throws Exception
      Executed whenever the status of the document changes.
      Returns:
      ProcessDocReport indicating if the status change succeeded
      Throws:
      Exception
    • doRouteLevelChange

      ProcessDocReport doRouteLevelChange(DocumentRouteLevelChange levelChangeEvent) throws Exception
      Executed whenever the document transitions from one node to another.
      Returns:
      ProcessDocReport indicating if the node transition succeeded
      Throws:
      Exception
    • doDeleteRouteHeader

      ProcessDocReport doDeleteRouteHeader(DeleteEvent event) throws Exception
      Executed whenever a deletion of the document is required.
      Returns:
      ProcessDocReport indicating if the deletion should be permitted to occur or not
      Throws:
      Exception
    • doActionTaken

      ProcessDocReport doActionTaken(ActionTakenEvent event) throws Exception
      Executed whenever an action is taken against the document.
      Returns:
      ProcessDocReport indicating whether or not the action should succeed
      Throws:
      Exception
    • afterActionTaken

      ProcessDocReport afterActionTaken(org.kuali.rice.kew.api.action.ActionType actionPerformed, ActionTakenEvent event) throws Exception
      Executed after an action is taken against the document.
      Returns:
      ProcessDocReport indicating whether or not the action was successful
      Throws:
      Exception
      Since:
      2.1
    • beforeProcess

      ProcessDocReport beforeProcess(BeforeProcessEvent processEvent) throws Exception
      Executed prior to processing by the workflow engine.
      Returns:
      ProcessDocReport indicating whether or not the document processing should be allowed to proceed
      Throws:
      Exception
    • afterProcess

      ProcessDocReport afterProcess(AfterProcessEvent processEvent) throws Exception
      Executed after processing by the workflow engine has completed.
      Returns:
      ProcessDocReport indicating whether or not the document was successfully processed
      Throws:
      Exception
    • getDocumentIdsToLock

      List<String> getDocumentIdsToLock(DocumentLockingEvent lockingEvent) throws Exception
      Executed prior to document locking in the workflow engine. This method returns a List of document ids to lock prior to execution of the document in the workflow engine. If the engine processing is going to result in updates to any other documents, they should be locked at the beginning of the engine processing transaction. This method facilitates that.

      Note that, by default, the id of the document that is being processed by the engine is always locked. So there is no need to return that document id in the list of document ids to lock.

      Returns:
      a List of document ids to lock prior to execution of the workflow engine
      Throws:
      Exception