String targetId = targetNode.get(EDITOR_SHAPE_ID).asText(); if (shapeMap.get(targetId) != null) { flow.setTargetRef(BpmnJsonConverterUtil.getElementId(shapeMap.get(targetId)));
@Override protected BaseElement convertXMLToElement(XMLStreamReader xtr, BpmnModel model) throws Exception { SequenceFlow sequenceFlow = new SequenceFlow(); BpmnXMLUtil.addXMLLocation(sequenceFlow, xtr); sequenceFlow.setSourceRef(xtr.getAttributeValue(null, ATTRIBUTE_FLOW_SOURCE_REF)); sequenceFlow.setTargetRef(xtr.getAttributeValue(null, ATTRIBUTE_FLOW_TARGET_REF)); sequenceFlow.setName(xtr.getAttributeValue(null, ATTRIBUTE_NAME)); sequenceFlow.setSkipExpression(xtr.getAttributeValue(null, ATTRIBUTE_FLOW_SKIP_EXPRESSION)); parseChildElements(getXMLElementName(), sequenceFlow, model, xtr); return sequenceFlow; }
protected SequenceFlow createSequenceFlow(String from, String to) { SequenceFlow flow = new SequenceFlow(); flow.setSourceRef(from); flow.setTargetRef(to); return flow; }
String targetId = targetNode.get(EDITOR_SHAPE_ID).asText(); if (shapeMap.get(targetId) != null) { flow.setTargetRef(BpmnJsonConverterUtil.getElementId(shapeMap.get(targetId)));
@Override protected BaseElement convertXMLToElement(XMLStreamReader xtr) throws Exception { SequenceFlow sequenceFlow = new SequenceFlow(); BpmnXMLUtil.addXMLLocation(sequenceFlow, xtr); sequenceFlow.setSourceRef(xtr.getAttributeValue(null, ATTRIBUTE_FLOW_SOURCE_REF)); sequenceFlow.setTargetRef(xtr.getAttributeValue(null, ATTRIBUTE_FLOW_TARGET_REF)); sequenceFlow.setName(xtr.getAttributeValue(null, ATTRIBUTE_NAME)); parseChildElements(getXMLElementName(), sequenceFlow, xtr); return sequenceFlow; }
@Override protected BaseElement convertXMLToElement(XMLStreamReader xtr, BpmnModel model) throws Exception { SequenceFlow sequenceFlow = new SequenceFlow(); BpmnXMLUtil.addXMLLocation(sequenceFlow, xtr); sequenceFlow.setSourceRef(xtr.getAttributeValue(null, ATTRIBUTE_FLOW_SOURCE_REF)); sequenceFlow.setTargetRef(xtr.getAttributeValue(null, ATTRIBUTE_FLOW_TARGET_REF)); sequenceFlow.setName(xtr.getAttributeValue(null, ATTRIBUTE_NAME)); sequenceFlow.setSkipExpression(xtr.getAttributeValue(null, ATTRIBUTE_FLOW_SKIP_EXPRESSION)); parseChildElements(getXMLElementName(), sequenceFlow, model, xtr); return sequenceFlow; }
public static SequenceFlow createSequenceFlow(WorkflowDefinitionConversion conversion, FlowNode source, FlowNode target, ActivitiListener... executionListeners) { SequenceFlow sequenceFlow = new SequenceFlow(); sequenceFlow.setId(conversion.getUniqueNumberedId(ConversionConstants.DEFAULT_SEQUENCEFLOW_PREFIX)); sequenceFlow.setSourceRef(source.getId()); sequenceFlow.setTargetRef(target.getId()); if (executionListeners != null && executionListeners.length > 0) { List<ActivitiListener> listeners = new ArrayList<ActivitiListener>(); for (ActivitiListener listener : executionListeners) { listeners.add(listener); } sequenceFlow.setExecutionListeners(listeners); } return sequenceFlow; }
/** * Add a sequence-flow to the current process from source to target. * Sequence-flow name is set to a user-friendly name, containing an * incrementing number. * * @param conversion * @param sourceActivityId * @param targetActivityId * @param condition */ protected SequenceFlow addSequenceFlow(WorkflowDefinitionConversion conversion, String sourceActivityId, String targetActivityId, String condition) { SequenceFlow sequenceFlow = new SequenceFlow(); sequenceFlow.setId(conversion.getUniqueNumberedId(getSequenceFlowPrefix())); sequenceFlow.setSourceRef(sourceActivityId); sequenceFlow.setTargetRef(targetActivityId); if (StringUtils.isNotEmpty(condition)) { sequenceFlow.setConditionExpression(condition); } conversion.getProcess().addFlowElement(sequenceFlow); return sequenceFlow; }
bypassingFlow.setTargetRef(joinGateway.getId());
public void afterStepsConversion(WorkflowDefinitionConversion conversion) { // Add end-event to process Process process = conversion.getProcess(); EndEvent endEvent = new EndEvent(); endEvent.setId(END_EVENT_ID); process.addFlowElement(endEvent); // Sequence flow from last created activity to end SequenceFlow sequenceFlow = new SequenceFlow(); sequenceFlow.setId(conversion.getUniqueNumberedId(ConversionConstants.DEFAULT_SEQUENCEFLOW_PREFIX)); sequenceFlow.setSourceRef(conversion.getLastActivityId()); sequenceFlow.setTargetRef(END_EVENT_ID); process.addFlowElement(sequenceFlow); // To make the generated workflow compatible with some tools (eg the // Modeler, but also others), // We must add the ingoing and outgoing sequence flow to each of the flow // nodes SequenceFlowMapping sequenceFlowMapping = generateSequenceflowMappings(process); for (FlowNode flowNode : process.findFlowElementsOfType(FlowNode.class)) { List<SequenceFlow> incomingSequenceFlow = sequenceFlowMapping.getIncomingSequenceFlowMapping().get(flowNode.getId()); if (incomingSequenceFlow != null) { flowNode.setIncomingFlows(incomingSequenceFlow); } List<SequenceFlow> outgoingSequenceFlow = sequenceFlowMapping.getOutgoingSequenceFlowMapping().get(flowNode.getId()); if (outgoingSequenceFlow != null) { flowNode.setOutgoingFlows(outgoingSequenceFlow); } } }