@Override protected void addEventDefinition(EventDefinition eventDefinition) { this.throwEvent.getEventDefinitions().add(eventDefinition); } }
protected void linkActivityRef(Process process, ThrowEvent throwEvent, String activityRef) { if (!isEmpty(activityRef)) { final CompensateEventDefinition compensateEvent = (CompensateEventDefinition) throwEvent.getEventDefinitions().get(0); final Activity activity = findActivity(process, activityRef); if (activity != null) { compensateEvent.setActivityRef(activity); } else { LOG.warn("Referred activity: " + activityRef + " was not found for event: id: " + throwEvent.getId() + ", name: " + throwEvent.getName()); } } } }
@Override public AssignmentsInfo getAssignmentsInfo() { return AssignmentsInfos.of( throwEvent.getDataInputs(), throwEvent.getDataInputAssociation(), Collections.emptyList(), Collections.emptyList(), false); }
public List<EventDefinition> getEventDefinitions() { List<EventDefinition> eventDefinitions = throwEvent.getEventDefinitions(); List<EventDefinition> eventDefinitionRefs = throwEvent.getEventDefinitionRefs(); ArrayList<EventDefinition> result = new ArrayList<>(); result.addAll(eventDefinitions); result.addAll(eventDefinitionRefs); return result; } }
private InputSet getInputSet() { InputSet inputSet = throwEvent.getInputSet(); if (inputSet == null) { inputSet = bpmn2.createInputSet(); throwEvent.setInputSet(inputSet); } return inputSet; }
String[] dataInputParts = dataInput.split(":\\s*"); if (dataInputParts.length == 2) { nextInput.setId(event.getId() + "_" + dataInputParts[0] + (dataInputParts[0].endsWith("InputX") ? "" : "InputX")); nextInput.setName(dataInputParts[0]); ExtendedMetaData metadata = ExtendedMetaData.INSTANCE; nextInput.getAnyAttribute().add(extensionEntry); } else { nextInput.setId(event.getId() + "_" + dataInput + (dataInput.endsWith("InputX") ? "" : "InputX")); nextInput.setName(dataInput); ExtendedMetaData metadata = ExtendedMetaData.INSTANCE; event.getDataInputs().add(nextInput); inset.getDataInputRefs().add(nextInput); event.setInputSet(inset); if (event.getInputSet() != null) { List<DataInput> dataInputs = event.getInputSet().getDataInputRefs(); for (DataInput di : dataInputs) { if (di.getId().equals(event.getId() + "_" + fromPart + (fromPart.endsWith("InputX") ? "" : "InputX"))) { dia.setTargetRef(di); a.setTo(toExpression); dia.getAssignment().add(a); event.getDataInputAssociation().add(dia); } else if (assignment.contains("->")) { String[] assignmentParts = assignment.split("->\\s*");
private void setThrowEventProperties(ThrowEvent event, Map<String, Object> properties, Definitions def) { if (event.getInputSet() != null) { List<DataInput> dataInputs = event.getInputSet().getDataInputRefs(); StringBuffer dinbuff = new StringBuffer(); for (DataInput din : dataInputs) { StringBuilder associationBuff = new StringBuilder(); marshallDataInputAssociations(associationBuff, event.getDataInputAssociation()); String assignmentString = associationBuff.toString(); if (assignmentString.endsWith(",")) { String signalScope = Utils.getMetaDataValue(event.getExtensionValues(), "customScope"); if (signalScope != null) { List<EventDefinition> eventdefs = event.getEventDefinitions(); for (EventDefinition ed : eventdefs) { if (ed instanceof TimerEventDefinition) {
@Before public void setup() { when(definitionResolver.getResolutionFactor()).thenReturn(RESOLUTION_FACTOR); when(catchEvent.getId()).thenReturn(CATCH_EVENT_ID); when(boundaryEvent.getId()).thenReturn(BOUNDARY_EVENT_ID); when(throwEvent.getId()).thenReturn(THROW_EVENT_ID); when(gateway.getId()).thenReturn(GATEWAY_EVENT_ID); when(definitionResolver.getShape(eq(CATCH_EVENT_ID))).thenReturn(catchEventShape); when(definitionResolver.getShape(eq(BOUNDARY_EVENT_ID))).thenReturn(boundaryEventShape); when(definitionResolver.getShape(eq(THROW_EVENT_ID))).thenReturn(throwEventShape); when(definitionResolver.getShape(eq(GATEWAY_EVENT_ID))).thenReturn(gatewayEventShape); this.catchEventPropertyReader = new CatchEventPropertyReader(catchEvent, diagram, definitionResolver); this.boundaryEventPropertyReader = spy(new BoundaryEventPropertyReader(boundaryEvent, diagram, definitionResolver)); this.throwEventPropertyReader = new ThrowEventPropertyReader(throwEvent, diagram, definitionResolver); this.gatewayPropertyReader = new GatewayPropertyReader(gateway, diagram, gatewayEventShape, RESOLUTION_FACTOR); }
List<DataInput> dataInputs = te.getDataInputs(); for (DataInput din : dataInputs) { if (din.getId().equals(te.getId() + "_" + da.getId() + "InputX")) { foundDataInput = true; datain.setId(te.getId() + "_" + da.getId() + "InputX"); datain.setName(da.getId() + "InputX"); te.getDataInputs().add(datain); if (te.getInputSet() == null) { InputSet inset = Bpmn2Factory.eINSTANCE.createInputSet(); te.setInputSet(inset); te.getInputSet().getDataInputRefs().add(datain); DataInputAssociation dia = Bpmn2Factory.eINSTANCE.createDataInputAssociation(); dia.setTargetRef(datain); dia.getSourceRef().add(da); te.getDataInputAssociation().add(dia);
public ThrowEventPropertyReader(ThrowEvent throwEvent, BPMNDiagram diagram, DefinitionResolver definitionResolver) { super(throwEvent, diagram, definitionResolver, EventPropertyReader.getSignalRefId(throwEvent.getEventDefinitions())); this.throwEvent = throwEvent; }
@Override public void setAssignmentsInfo(AssignmentsInfo info) { ParsedAssignmentsInfo assignmentsInfo = ParsedAssignmentsInfo.of(info); List<InitializedInputVariable> inputs = assignmentsInfo.createInitializedInputVariables(getId(), variableScope); if (inputs.isEmpty()) { return; } if (inputs.size() > 1) { throw new IllegalArgumentException("Input Associations should be at most 1 in Throw Events"); } InitializedInputVariable input = inputs.get(0); if (isReservedIdentifier(input.getIdentifier())) { return; } DataInput dataInput = input.getDataInput(); throwEvent.getDataInputs().add(dataInput); getInputSet().getDataInputRefs().add(dataInput); this.addItemDefinition(input.getItemDefinition()); DataInputAssociation dataInputAssociation = input.getDataInputAssociation(); if (dataInputAssociation != null) { throwEvent.getDataInputAssociation().add(dataInputAssociation); } }
@Override public ThrowEvent createBpmn2Event(CompensateEventDefinition compensateEvent) { ThrowEvent throwEvent = mock(ThrowEvent.class); List<EventDefinition> eventDefinitions = Collections.singletonList(compensateEvent); when(throwEvent.getEventDefinitions()).thenReturn(eventDefinitions); return throwEvent; }
public void setSignalRefForThrowEvents(FlowElementsContainer container, Definitions def) { List<FlowElement> flowElements = container.getFlowElements(); for (FlowElement fe : flowElements) { if (fe instanceof ThrowEvent) { if (((ThrowEvent) fe).getEventDefinitions().size() > 0) { EventDefinition ed = ((ThrowEvent) fe).getEventDefinitions().get(0); if (ed instanceof SignalEventDefinition) { SignalEventDefinition sed = (SignalEventDefinition) ed; if (sed.getSignalRef() != null) { Signal signal = findSignalWithName(sed.getSignalRef(), def); if (signal != null) { sed.setSignalRef(signal.getId()); } } } } } else if (fe instanceof FlowElementsContainer) { setSignalRefForThrowEvents((FlowElementsContainer) fe, def); } } }
public static BaseElement createElement(String stencilId, String taskType, boolean customElement) { if (customElement) { stencilId = "Task"; taskType = "Custom"; } Bpmn20Stencil stencil = Bpmn20Stencil.valueOf(taskType == null ? stencilId : stencilId + "_" + taskType.replaceAll(" ", "_")); if (stencil == null) { throw new IllegalArgumentException("unregistered stencil id: " + stencilId); } BaseElement elt = (BaseElement) Bpmn2Factory.eINSTANCE.create(stencil.className); if (stencil.eventType != null) { if (elt instanceof CatchEvent) { ((CatchEvent) elt).getEventDefinitions().add((EventDefinition) Bpmn2Factory.eINSTANCE.create(stencil.eventType)); } else if (elt instanceof ThrowEvent) { ((ThrowEvent) elt).getEventDefinitions().add((EventDefinition) Bpmn2Factory.eINSTANCE.create(stencil.eventType)); } else { throw new IllegalArgumentException("Cannot set eventType on " + elt); } } if (stencil.associationDirection != null) { ((Association) elt).setAssociationDirection(stencil.associationDirection); } return elt; } }
for (FlowElement fe : flowElements) { if (fe instanceof ThrowEvent) { if (((ThrowEvent) fe).getEventDefinitions().size() > 0) { EventDefinition ed = ((ThrowEvent) fe) .getEventDefinitions().get(0); if (ed instanceof SignalEventDefinition) { SignalEventDefinition sed = (SignalEventDefinition) ed;
for (FlowNode fe : laneFlowNodes) { if (fe instanceof ThrowEvent) { if (((ThrowEvent) fe).getEventDefinitions().size() > 0) { EventDefinition ed = ((ThrowEvent) fe) .getEventDefinitions().get(0); if (ed instanceof SignalEventDefinition) { SignalEventDefinition sed = (SignalEventDefinition) ed;
simPath.addActivity(fe.getId()); if (fe instanceof ThrowEvent) { String ref = processEventDefinitions(((ThrowEvent) fe).getEventDefinitions()); if (ref != null) { simPath.addThrowEvent(fe.getId(), ref);
simPath.addActivity(fe.getId()); if (fe instanceof ThrowEvent) { String ref = processEventDefinitions(((ThrowEvent) fe).getEventDefinitions()); if (ref != null) { simPath.addThrowEvent(fe.getId(), ref);