Class ErrorPropagation

java.lang.Object
org.flowable.engine.impl.bpmn.helper.ErrorPropagation

public class ErrorPropagation extends Object
This class is responsible for finding and executing error handlers for BPMN Errors.

Possible error handlers include Error Intermediate Events and Error Event Sub-Processes.

Author:
Tijs Rademakers, Saeid Mirzaei
  • Constructor Details

    • ErrorPropagation

      public ErrorPropagation()
  • Method Details

    • propagateError

      public static void propagateError(BpmnError error, DelegateExecution execution)
    • propagateError

      public static void propagateError(String errorCode, DelegateExecution execution)
    • executeCatch

      protected static void executeCatch(Map<String,List<org.flowable.bpmn.model.Event>> eventMap, DelegateExecution delegateExecution, String errorId)
    • executeEventHandler

      protected static void executeEventHandler(org.flowable.bpmn.model.Event event, ExecutionEntity parentExecution, ExecutionEntity currentExecution, String errorId)
    • findCatchingEventsForProcess

      protected static Map<String,List<org.flowable.bpmn.model.Event>> findCatchingEventsForProcess(String processDefinitionId, String errorCode)
    • mapException

      public static boolean mapException(Exception e, ExecutionEntity execution, List<org.flowable.bpmn.model.MapExceptionEntry> exceptionMap)
    • findMatchingExceptionMapping

      public static String findMatchingExceptionMapping(Exception e, List<org.flowable.bpmn.model.MapExceptionEntry> exceptionMap)
    • getCatchEventFromList

      protected static org.flowable.bpmn.model.Event getCatchEventFromList(List<org.flowable.bpmn.model.Event> events, ExecutionEntity parentExecution)
    • getErrorCodeFromErrorEventDefinition

      protected static String getErrorCodeFromErrorEventDefinition(org.flowable.bpmn.model.Event event)
    • retrieveErrorCode

      protected static String retrieveErrorCode(org.flowable.bpmn.model.BpmnModel bpmnModel, String errorCode)
    • handleException

      public static <E extends Throwable> void handleException(Throwable exc, ExecutionEntity execution, List<org.flowable.bpmn.model.MapExceptionEntry> exceptionMap) throws E
      Throws:
      E extends Throwable
    • injectErrorContext

      protected static void injectErrorContext(org.flowable.bpmn.model.Event event, ExecutionEntity execution, String errorCode)