private String getDiagramId(Metadata metadata) { return metadata.getCanvasRootUUID(); }
public static boolean isCanvasRoot(final Diagram diagram, final String pUUID) { final String canvasRoot = diagram.getMetadata().getCanvasRootUUID(); return (null != canvasRoot && null != pUUID && canvasRoot.equals(pUUID)); }
protected void fireSavedEvent(D diagram) { saveEvent.fire(new SaveDiagramSessionCommandExecutedEvent(diagram.getMetadata().getCanvasRootUUID())); }
private Optional<String> getCanvasRootUUID(final AbstractCanvasHandler context) { return Optional.ofNullable(context.getDiagram().getMetadata().getCanvasRootUUID()); }
protected String getRootUUID() { return canvasHandler.getDiagram().getMetadata().getCanvasRootUUID(); }
protected boolean onlyCanvasRootSelected(final CanvasSelectionEvent event) { return event.getIdentifiers().size() == 1 && getCanvasHandler().getDiagram().getMetadata().getCanvasRootUUID().equals(event.getIdentifiers().iterator().next()); }
@Override protected Command<GraphCommandExecutionContext, RuleViolation> newGraphCommand(final AbstractCanvasHandler context) { final String rootUUID = context.getDiagram().getMetadata().getCanvasRootUUID(); return new ClearGraphCommand(rootUUID); }
private String getCanvasRootUUID() { return getCanvasHandler().getDiagram().getMetadata().getCanvasRootUUID(); }
@Override public Optional<Object> getSelectedItemDefinition() { String selectedItemUUID = null; final Collection<String> selectedItems = getSelectedItems(); if (null != selectedItems && !selectedItems.isEmpty()) { selectedItemUUID = selectedItems.iterator().next(); } if (Objects.isNull(selectedItemUUID)) { final AbstractCanvasHandler canvasHandler = getCanvasHandler(); if (!Objects.isNull(canvasHandler)) { final Diagram<?, ?> diagram = getCanvasHandler().getDiagram(); if (!Objects.isNull(diagram)) { final String cRoot = diagram.getMetadata().getCanvasRootUUID(); // Check if there exist any canvas root element. if (!StringUtils.isEmpty(cRoot)) { selectedItemUUID = cRoot; } } } } if (!Objects.isNull(selectedItemUUID)) { final Element<? extends Definition<?>> element = CanvasLayoutUtils.getElement(getCanvasHandler(), selectedItemUUID); return Optional.ofNullable(element); } else { return Optional.empty(); } }
@Override public DragProxy<AbstractCanvasHandler, Item, DragProxyCallback> proxyFor(final AbstractCanvasHandler context) { this.canvasHandler = context; this.shapeViewDragProxyFactory.proxyFor(context.getAbstractCanvas()); this.graphBoundsIndexer.setRootUUID(context.getDiagram().getMetadata().getCanvasRootUUID()); return this; }
private String getDiagramSvgFileName(Diagram diagram) { final Object metaProperty = definitionManager.adapters() .forDefinition() .getMetaProperty(PropertyMetaTypes.ID, ((Definition) diagram.getGraph() .getNode(diagram.getMetadata().getCanvasRootUUID()) .getContent()).getDefinition()); final Object diagramFileId = definitionManager.adapters().forProperty().getValue(metaProperty); return String.valueOf(diagramFileId).concat(SVG_SUFFIX); }
protected void onSaveDiagram(@Observes SaveDiagramSessionCommandExecutedEvent event) { checkNotNull("event", event); if (Objects.isNull(getSession())) { LOGGER.severe("Session is null. Event: " + event); return; } final Metadata diagramMetadata = getCanvasHandler().getDiagram().getMetadata(); if (Objects.equals(diagramMetadata.getCanvasRootUUID(), event.getDiagramUUID())) { final String rawSvg = canvasExport.exportToSvg(getCanvasHandler()); diagramService.saveOrUpdateSvg(diagramMetadata.getPath(), rawSvg, new ServiceCallback<Path>() { @Override public void onSuccess(Path path) { LOGGER.info("Diagram SVG saved on " + path); } @Override public void onError(ClientRuntimeError error) { LOGGER.severe("Error saving diagram SVG " + error.getMessage()); } }); } } }
@SuppressWarnings("unchecked") private void start(final AbstractCanvasHandler canvasHandler) { canvasHighlight = canvasHighlightBuilder.apply(canvasHandler); graphBoundsIndexer.setRootUUID(canvasHandler.getDiagram().getMetadata().getCanvasRootUUID()); graphBoundsIndexer.build(canvasHandler.getDiagram().getGraph()); edgeBuilderControl.init(canvasHandler); edgeBuilderControl.setCommandManagerProvider(() -> sessionCommandManager); }
@SuppressWarnings("unchecked") public void setup() { MockitoAnnotations.initMocks(this); this.graph = new GraphImpl<>("graph", new GraphNodeStoreImpl()); this.index = new MapIndex(graph, new HashMap<>(), new HashMap<>()); when(canvasHandler.getDiagram()).thenReturn(diagram); when(canvasHandler.getCanvas()).thenReturn(canvas); when(canvasHandler.getGraphExecutionContext()).thenReturn(context); when(context.getGraphIndex()).thenReturn(index); when(canvasHandler.getGraphIndex()).thenReturn(index); when(diagram.getMetadata()).thenReturn(metadata); when(diagram.getGraph()).thenReturn(graph); when(metadata.getDefinitionSetId()).thenReturn(DEF_SET_ID); when(metadata.getShapeSetId()).thenReturn(SHAPE_SET_ID); when(metadata.getCanvasRootUUID()).thenReturn(CANVAS_ROOT_UUID); when(node.getUUID()).thenReturn(UUID.randomUUID().toString()); when(parent.getUUID()).thenReturn(UUID.randomUUID().toString()); when(candidate.getUUID()).thenReturn(UUID.randomUUID().toString()); shapeUUID = UUID.randomUUID().toString(); } }
@SuppressWarnings("unchecked") public Node<View<?>, Edge> getParent(final double _x, final double _y) { if (_x > -1 && _y > -1) { final String rootUUID = canvasHandler.getDiagram().getMetadata().getCanvasRootUUID(); graphBoundsIndexer.setRootUUID(rootUUID).build(canvasHandler.getDiagram().getGraph()); final Node<View<?>, Edge> r = graphBoundsIndexer.getAt(_x, _y); return r; } return null; }
private Element<?> getParentOfParent(AbstractCanvasHandler context, Node parent) { final Element parentOfParent = GraphUtils.getParent(parent); return (GraphUtils.isRootNode((Element<? extends View<?>>) parentOfParent, context.getGraphIndex().getGraph()) ? context.getGraphIndex().getNode(context.getDiagram().getMetadata().getCanvasRootUUID()) : parentOfParent); }
public static Node getNode(final AbstractCanvasHandler canvasHandler, final WiresContainer shape) { if (null == shape) { return null; } if (shape instanceof ShapeView) { final ShapeView view = (ShapeView) shape; return canvasHandler.getGraphIndex().getNode(view.getUUID()); } else if (shape instanceof WiresLayer) { final String canvasRoot = canvasHandler.getDiagram().getMetadata().getCanvasRootUUID(); if (null != canvasRoot) { return canvasHandler.getGraphIndex().getNode(canvasRoot); } } return null; }
public void init(ClientSession session) { Diagram diagram = session.getCanvasHandler().getDiagram(); String canvasRootUUID = diagram.getMetadata().getCanvasRootUUID(); @SuppressWarnings("unchecked") Node<?, ? extends Edge> selectedNode = getSourceNode(diagram, getSelectedElementUUID(session)); if (selectedNode != null) { Map<String, VariableMetadata> collectedVariables = new HashMap<>(); Set<String> collectedTypes = new HashSet<>(); Node<?, ? extends Edge> parentNode = getParent(selectedNode).asNode(); String parentVariables; while (parentNode != null) { parentVariables = getVariables(parentNode); if (!isEmpty(parentVariables)) { addVariables(parentVariables, collectedVariables, collectedTypes); } if (parentNode.getUUID().equals(canvasRootUUID)) { parentNode = null; } else { parentNode = getParent(parentNode).asNode(); } } Path path = session.getCanvasHandler().getDiagram().getMetadata().getPath(); TypeMetadataQuery query = new TypeMetadataQuery(path, collectedTypes); service.call(result -> initVariables(collectedVariables.values(), ((TypeMetadataQueryResult) result))).findMetadata(query); } }
@Override protected Collection<Pair<Object, String>> findElements(Predicate<Node> filter, Function<Node, Pair<Object, String>> mapper) { Collection<Pair<Object, String>> result = new ArrayList<>(); String elementUUID = sessionManager.getCurrentSession().getCanvasHandler().getDiagram().getMetadata().getCanvasRootUUID(); Node node; if (elementUUID != null) { node = sessionManager.getCurrentSession().getCanvasHandler().getDiagram().getGraph().getNode(elementUUID); Object oDefinition = ((View) node.getContent()).getDefinition(); if (oDefinition instanceof BPMNDiagram) { BPMNDiagramImpl bpmnDiagram = (BPMNDiagramImpl) oDefinition; ProcessVariables processVars = bpmnDiagram.getProcessData().getProcessVariables(); addPropertyVariableToResult(result, processVars.getValue()); CaseFileVariables caseVars = bpmnDiagram.getCaseManagementSet().getCaseFileVariables(); addCaseFileVariableToResult(result, caseVars.getValue()); } } return result; }
@Test public void testDecodeTest1() throws Exception { InputStream is = loadStream(TEST1); Metadata metadata = tested.unmarshall(is); assertNotNull(metadata); assertEquals("defSet1", metadata.getDefinitionSetId()); assertEquals("ss1", metadata.getShapeSetId()); assertEquals("thumbData1", metadata.getThumbData()); assertEquals("title1", metadata.getTitle()); assertEquals("root1", metadata.getCanvasRootUUID()); }