public SEndEventDefinitionImpl(final EndEventDefinition eventDefinition, final Map<String, STransitionDefinition> transitionsMap) { super(eventDefinition, transitionsMap); final TerminateEventTriggerDefinition terminateEventTriggerDefinition = eventDefinition.getTerminateEventTriggerDefinition(); if (terminateEventTriggerDefinition != null) { setTerminateEventTriggerDefinition(new STerminateEventTriggerDefinitionImpl()); } final List<ThrowErrorEventTriggerDefinition> errorEventTriggerDefinitions = eventDefinition.getErrorEventTriggerDefinitions(); sErrorEventTriggerDefinitions = new ArrayList<SThrowErrorEventTriggerDefinition>(errorEventTriggerDefinitions.size()); for (final ThrowErrorEventTriggerDefinition throwErrorEventTriggerDefinition : errorEventTriggerDefinitions) { addErrorEventTriggerDefinition(new SThrowErrorEventTriggerDefinitionImpl(throwErrorEventTriggerDefinition.getErrorCode())); } }
public SEndEventDefinitionImpl(final EndEventDefinition eventDefinition, final Map<String, STransitionDefinition> transitionsMap) { super(eventDefinition, transitionsMap); final TerminateEventTriggerDefinition terminateEventTriggerDefinition = eventDefinition.getTerminateEventTriggerDefinition(); if (terminateEventTriggerDefinition != null) { setTerminateEventTriggerDefinition(new STerminateEventTriggerDefinitionImpl()); } final List<ThrowErrorEventTriggerDefinition> errorEventTriggerDefinitions = eventDefinition.getErrorEventTriggerDefinitions(); sErrorEventTriggerDefinitions = new ArrayList<SThrowErrorEventTriggerDefinition>(errorEventTriggerDefinitions.size()); for (final ThrowErrorEventTriggerDefinition throwErrorEventTriggerDefinition : errorEventTriggerDefinitions) { addErrorEventTriggerDefinition(new SThrowErrorEventTriggerDefinitionImpl(throwErrorEventTriggerDefinition.getErrorCode())); } }
@Test public void readProcessWithThowErrorEventFromBusinessArchive() throws Exception { final ProcessDefinitionBuilder builder = new ProcessDefinitionBuilder().createNewInstance("MyProcess", "1.0"); builder.addStartEvent("start1"); builder.addAutomaticTask("a1"); builder.addEndEvent("end1").addErrorEventTrigger("e1"); builder.addTransition("start1", "a1"); builder.addTransition("a1", "end1"); final DesignProcessDefinition process = builder.getProcess(); final DesignProcessDefinition result = getDesignProcessDefinition(builder); assertEquals(process.getName(), result.getName()); assertEquals(process.getVersion(), result.getVersion()); assertEquals(process.getFlowElementContainer().getStartEvents(), result.getFlowElementContainer().getStartEvents()); assertEquals(1, result.getFlowElementContainer().getStartEvents().size()); assertEquals(1, process.getFlowElementContainer().getActivities().size()); assertEquals(1, result.getFlowElementContainer().getActivities().size()); final List<EndEventDefinition> resultEndEvents = result.getFlowElementContainer().getEndEvents(); assertEquals(process.getFlowElementContainer().getEndEvents(), resultEndEvents); assertEquals(1, result.getFlowElementContainer().getEndEvents().size()); final EndEventDefinition endEventDefinition = resultEndEvents.get(0); assertEquals(1, endEventDefinition.getEventTriggers().size()); assertEquals(1, endEventDefinition.getErrorEventTriggerDefinitions().size()); }