public void execute() { // Reset any previous DI information bpmnModel.getLocationMap().clear(); bpmnModel.getFlowLocationMap().clear(); // Generate DI for each process for (Process process : bpmnModel.getProcesses()) { layout(process); // Operations that can only be done after all elements have received // DI translateNestedSubprocesses(process); } }
flowLocations.putAll(model.getFlowLocationMap()); labelLocations.putAll(model.getLabelLocationMap()); mainModel.getFlowLocationMap().put(elementId, flowLocations.get(elementId)); } else {
allGraphicInfos.addAll(bpmnModel.getLabelLocationMap().values()); if (bpmnModel.getFlowLocationMap() != null) { for (List<GraphicInfo> flowGraphicInfos : bpmnModel.getFlowLocationMap().values()) { allGraphicInfos.addAll(flowGraphicInfos);
subModel.getFlowLocationMap().put(elementId, flowLocations.get(elementId)); } else {
if (!tempModel.getFlowLocationMap().isEmpty() || !tempModel.getLocationMap().isEmpty()) { BPMNDIExport.writeBPMNDI(tempModel, xtw);
for (String elementId : model.getFlowLocationMap().keySet()) {
for (String bpmnReference : bpmnModel.getFlowLocationMap().keySet()) { if (bpmnModel.getFlowElement(bpmnReference) == null) { processDefinition.setGraphicalNotationDefined(true); for (String edgeId : bpmnModel.getFlowLocationMap().keySet()) { if (bpmnModel.getFlowElement(edgeId) != null) { createBPMNEdge(edgeId, bpmnModel.getFlowLocationGraphicInfo(edgeId));
protected void translateNestedSubprocessElements(SubProcess subProcess) { GraphicInfo subProcessGraphicInfo = bpmnModel.getLocationMap().get(subProcess.getId()); double subProcessX = subProcessGraphicInfo.getX(); double subProcessY = subProcessGraphicInfo.getY(); List<SubProcess> nestedSubProcesses = new ArrayList<SubProcess>(); for (FlowElement flowElement : subProcess.getFlowElements()) { if (flowElement instanceof SequenceFlow) { List<GraphicInfo> graphicInfos = bpmnModel.getFlowLocationMap().get(flowElement.getId()); for (GraphicInfo graphicInfo : graphicInfos) { graphicInfo.setX(graphicInfo.getX() + subProcessX + subProcessMargin); graphicInfo.setY(graphicInfo.getY() + subProcessY + subProcessMargin); } } else if (flowElement instanceof DataObject == false) { // Regular element GraphicInfo graphicInfo = bpmnModel.getLocationMap().get(flowElement.getId()); graphicInfo.setX(graphicInfo.getX() + subProcessX + subProcessMargin); graphicInfo.setY(graphicInfo.getY() + subProcessY + subProcessMargin); } if (flowElement instanceof SubProcess) { nestedSubProcesses.add((SubProcess) flowElement); } } // Continue for next level of nested subprocesses for (SubProcess nestedSubProcess : nestedSubProcesses) { translateNestedSubprocessElements(nestedSubProcess); } }
if (!bpmnModel.getFlowLocationMap().isEmpty()) { for (String bpmnReference : bpmnModel.getFlowLocationMap().keySet()) { if (bpmnModel.getFlowElement(bpmnReference) == null) {
public void execute() { // Reset any previous DI information bpmnModel.getLocationMap().clear(); bpmnModel.getFlowLocationMap().clear(); // Generate DI for each process for (Process process : bpmnModel.getProcesses()) { layout(process); } }
flowLocations.putAll(model.getFlowLocationMap()); labelLocations.putAll(model.getLabelLocationMap()); mainModel.getFlowLocationMap().put(elementId, flowLocations.get(elementId)); } else {
subModel.getFlowLocationMap().put(elementId, flowLocations.get(elementId)); } else {
for (String bpmnReference : bpmnModel.getFlowLocationMap().keySet()) { if (bpmnModel.getFlowElement(bpmnReference) == null) { LOGGER.warn("Invalid reference in diagram interchange definition: could not find " + bpmnReference); } else if (! (bpmnModel.getFlowElement(bpmnReference) instanceof SequenceFlow)) { if (bpmnModel.getFlowLocationMap().get(bpmnReference).size() > 0) { LOGGER.warn("Invalid reference in diagram interchange definition: " + bpmnReference + " does not reference a sequence flow"); } else { for (String edgeId : bpmnModel.getFlowLocationMap().keySet()) { if (bpmnModel.getFlowElement(edgeId) != null) { createBPMNEdge(edgeId, bpmnModel.getFlowLocationGraphicInfo(edgeId));
for (String elementId : model.getFlowLocationMap().keySet()) {
for (String elementId : model.getFlowLocationMap().keySet()) {
if (!tempModel.getFlowLocationMap().isEmpty() || !tempModel.getLocationMap().isEmpty()) { BPMNDIExport.writeBPMNDI(tempModel, xtw);
for (String bpmnReference : bpmnModel.getFlowLocationMap().keySet()) { if (bpmnModel.getFlowElement(bpmnReference) == null) { processDefinition.setGraphicalNotationDefined(true); for (String edgeId : bpmnModel.getFlowLocationMap().keySet()) { if (bpmnModel.getFlowElement(edgeId) != null) { createBPMNEdge(edgeId, bpmnModel.getFlowLocationGraphicInfo(edgeId));
if (!bpmnModel.getFlowLocationMap().isEmpty()) { for (String bpmnReference : bpmnModel.getFlowLocationMap().keySet()) { if (bpmnModel.getFlowElement(bpmnReference) == null) {
BpmnModel bpmnModel = new BpmnXMLConverter().convertToBpmnModel(xtr); if (!bpmnModel.getFlowLocationMap().isEmpty()) {
BpmnModel bpmnModel = new BpmnXMLConverter().convertToBpmnModel(xtr); if (!bpmnModel.getFlowLocationMap().isEmpty()) {