private void validateNonInterruptingBoundaryEvent(final BoundaryEventDefinition boundaryEvent) { if (!boundaryEvent.isInterrupting()) { if (!boundaryEvent.getSignalEventTriggerDefinitions().isEmpty()) { designErrors.add("Non-interrupting boundary events are not supported for SIGNAL events: " + boundaryEvent.getName()); } if (!boundaryEvent.getMessageEventTriggerDefinitions().isEmpty()) { designErrors.add("Non-interrupting boundary events are not supported for MESSAGE events: " + boundaryEvent.getName()); } if (!boundaryEvent.getErrorEventTriggerDefinitions().isEmpty()) { designErrors.add("An error event must be INTERRUPTING: " + boundaryEvent.getName()); } } }
private void validateNonInterruptingBoundaryEvent(final BoundaryEventDefinition boundaryEvent) { if (!boundaryEvent.isInterrupting()) { if (!boundaryEvent.getSignalEventTriggerDefinitions().isEmpty()) { designErrors.add("Non-interrupting boundary events are not supported for SIGNAL events: " + boundaryEvent.getName()); } if (!boundaryEvent.getMessageEventTriggerDefinitions().isEmpty()) { designErrors.add("Non-interrupting boundary events are not supported for MESSAGE events: " + boundaryEvent.getName()); } if (!boundaryEvent.getErrorEventTriggerDefinitions().isEmpty()) { designErrors.add("An error event must be INTERRUPTING: " + boundaryEvent.getName()); } } }
private void checkProcessForBoundaryEvents(final DesignProcessDefinition process, final DesignProcessDefinition result, final boolean isInterrupting) { assertEquals(process.getName(), result.getName()); assertEquals(process.getVersion(), result.getVersion()); assertEquals(process.getFlowElementContainer().getStartEvents(), result.getFlowElementContainer().getStartEvents()); assertEquals(1, result.getFlowElementContainer().getStartEvents().size()); assertEquals(process.getFlowElementContainer().getActivities().size(), result.getFlowElementContainer().getActivities().size()); final ActivityDefinition resultActivity = result.getFlowElementContainer().getActivity("userTask"); final ActivityDefinition origActivity = process.getFlowElementContainer().getActivity("userTask"); assertEquals(origActivity, resultActivity); assertEquals(origActivity.getBoundaryEventDefinitions().size(), resultActivity.getBoundaryEventDefinitions().size()); for (final BoundaryEventDefinition boundary : resultActivity.getBoundaryEventDefinitions()) { assertEquals(1, boundary.getEventTriggers().size()); assertEquals(isInterrupting, boundary.isInterrupting()); } assertEquals(process.getFlowElementContainer().getEndEvents(), result.getFlowElementContainer().getEndEvents()); assertEquals(1, result.getFlowElementContainer().getEndEvents().size()); }