public void setValues(TerminateEventDefinition otherDefinition) { super.setValues(otherDefinition); this.terminateAll = otherDefinition.isTerminateAll(); this.terminateMultiInstance = otherDefinition.isTerminateMultiInstance(); }
@Override public TerminateEventDefinition clone() { TerminateEventDefinition clone = new TerminateEventDefinition(); clone.setValues(this); return clone; }
protected void parseTerminateAllAttribute(XMLStreamReader xtr, TerminateEventDefinition eventDefinition) { String terminateAllValue = BpmnXMLUtil.getAttributeValue(ATTRIBUTE_TERMINATE_ALL, xtr); if (terminateAllValue != null && "true".equals(terminateAllValue)) { eventDefinition.setTerminateAll(true); } else { eventDefinition.setTerminateAll(false); } }
@Override protected FlowElement convertJsonToElement(JsonNode elementNode, JsonNode modelNode, Map<String, JsonNode> shapeMap) { EndEvent endEvent = new EndEvent(); String stencilId = BpmnJsonConverterUtil.getStencilId(elementNode); if (STENCIL_EVENT_END_ERROR.equals(stencilId)) { convertJsonToErrorDefinition(elementNode, endEvent); } else if (STENCIL_EVENT_END_CANCEL.equals(stencilId)) { CancelEventDefinition eventDefinition = new CancelEventDefinition(); endEvent.getEventDefinitions().add(eventDefinition); } else if (STENCIL_EVENT_END_TERMINATE.equals(stencilId)) { TerminateEventDefinition eventDefinition = new TerminateEventDefinition(); String terminateAllStringValue = getPropertyValueAsString(PROPERTY_TERMINATE_ALL, elementNode); if (StringUtils.isNotEmpty(terminateAllStringValue)) { eventDefinition.setTerminateAll("true".equals(terminateAllStringValue)); } String terminateMiStringValue = getPropertyValueAsString(PROPERTY_TERMINATE_MULTI_INSTANCE, elementNode); if (StringUtils.isNotEmpty(terminateMiStringValue)) { eventDefinition.setTerminateMultiInstance("true".equals(terminateMiStringValue)); } endEvent.getEventDefinitions().add(eventDefinition); } return endEvent; } }
public TerminateEndEventActivityBehavior(EndEvent endEvent) { this.endEvent = endEvent.clone(); // Terminate all attribute if (endEvent.getEventDefinitions() != null) { for (EventDefinition eventDefinition : endEvent.getEventDefinitions()) { if (eventDefinition instanceof TerminateEventDefinition) { TerminateEventDefinition terminateEventDefinition = (TerminateEventDefinition) eventDefinition; if (terminateEventDefinition.isTerminateAll()) { this.terminateAll = true; break; } } } } }
@Override public void parseChildElement(XMLStreamReader xtr, BaseElement parentElement, BpmnModel model) throws Exception { if (!(parentElement instanceof EndEvent)) { return; } TerminateEventDefinition eventDefinition = new TerminateEventDefinition(); parseTerminateAllAttribute(xtr, eventDefinition); parseTerminateMultiInstanceAttribute(xtr, eventDefinition); BpmnXMLUtil.addXMLLocation(eventDefinition, xtr); BpmnXMLUtil.parseChildElements(ELEMENT_EVENT_TERMINATEDEFINITION, eventDefinition, xtr, model); ((Event) parentElement).getEventDefinitions().add(eventDefinition); }
protected void parseTerminateMultiInstanceAttribute(XMLStreamReader xtr, TerminateEventDefinition eventDefinition) { String terminateMiValue = BpmnXMLUtil.getAttributeValue(ATTRIBUTE_TERMINATE_MULTI_INSTANCE, xtr); if (terminateMiValue != null && "true".equals(terminateMiValue)) { eventDefinition.setTerminateMultiInstance(true); } else { eventDefinition.setTerminateMultiInstance(false); } } }
public void setValues(TerminateEventDefinition otherDefinition) { super.setValues(otherDefinition); this.terminateAll = otherDefinition.isTerminateAll(); this.terminateMultiInstance = otherDefinition.isTerminateMultiInstance(); }
@Override public TerminateEventDefinition clone() { TerminateEventDefinition clone = new TerminateEventDefinition(); clone.setValues(this); return clone; }
protected void writeTerminateDefinition(Event parentEvent, TerminateEventDefinition terminateDefinition, XMLStreamWriter xtw) throws Exception { xtw.writeStartElement(ELEMENT_EVENT_TERMINATEDEFINITION); if (terminateDefinition.isTerminateAll()) { writeQualifiedAttribute(ATTRIBUTE_TERMINATE_ALL, "true", xtw); } if (terminateDefinition.isTerminateMultiInstance()) { writeQualifiedAttribute(ATTRIBUTE_TERMINATE_MULTI_INSTANCE, "true", xtw); } boolean didWriteExtensionStartElement = BpmnXMLUtil.writeExtensionElements(terminateDefinition, false, xtw); if (didWriteExtensionStartElement) { xtw.writeEndElement(); } xtw.writeEndElement(); }
@Override public TerminateEndEventActivityBehavior createTerminateEndEventActivityBehavior(EndEvent endEvent) { boolean terminateAll = false; boolean terminateMultiInstance = false; if (endEvent.getEventDefinitions() != null && endEvent.getEventDefinitions().size() > 0 && endEvent.getEventDefinitions().get(0) instanceof TerminateEventDefinition) { terminateAll = ((TerminateEventDefinition) endEvent.getEventDefinitions().get(0)).isTerminateAll(); terminateMultiInstance = ((TerminateEventDefinition) endEvent.getEventDefinitions().get(0)).isTerminateMultiInstance(); } TerminateEndEventActivityBehavior terminateEndEventActivityBehavior = new TerminateEndEventActivityBehavior(); terminateEndEventActivityBehavior.setTerminateAll(terminateAll); terminateEndEventActivityBehavior.setTerminateMultiInstance(terminateMultiInstance); return terminateEndEventActivityBehavior; }
propertiesNode.put(PROPERTY_TERMINATE_ALL, terminateEventDefinition.isTerminateAll()); propertiesNode.put(PROPERTY_TERMINATE_MULTI_INSTANCE, terminateEventDefinition.isTerminateMultiInstance());