@Override @SuppressWarnings("unchecked") protected Toolbar<S> newToolbar(final Annotation qualifier) { return (Toolbar<S>) InstanceUtils.lookup(toolbars, qualifier); }
private ToolbarCommand loadCommand(final Class<? extends ToolbarCommand> type, final Annotation qualifier) { return InstanceUtils.lookup(commandInstances, type, qualifier); }
@SuppressWarnings("unchecked") private void onOpen(final Diagram diagram) { final Annotation qualifier = definitionUtils.getQualifier(diagram.getMetadata().getDefinitionSetId()); final BaseCanvasHandler delegate = InstanceUtils.lookup(canvasHandlers, qualifier); canvas = InstanceUtils.lookup(canvases, qualifier); canvasPanel = InstanceUtils.lookup(canvasPanels, qualifier); canvasHandler = new SessionPreviewCanvasHandlerProxy(delegate, definitionUtils.getDefinitionManager(), graphUtils, shapeManager, textPropertyProviderFactory); zoomControl = InstanceUtils.lookup(zoomControls, qualifier); selectionControl = InstanceUtils.lookup(selectionControls, qualifier); commandFactory = InstanceUtils.lookup(canvasCommandFactories, qualifier); commandManager = InstanceUtils.lookup(canvasCommandManagers, qualifier); }
@Override public <S extends ClientSession> void newSession(final Metadata metadata, final Class<S> sessionType, final Consumer<S> sessionConsumer) { final S session = InstanceUtils.lookup(sessionInstances, sessionType, qualifierProvider.apply(metadata)); ((AbstractSession) session).init(metadata, () -> sessionConsumer.accept(session)); }
public <T> T get(final Annotation qualifier, Class<T> preferenceType) { return InstanceUtils .lookup(preferencesRegistries, qualifier) .get(preferenceType); } }
@Override protected void onOpen(final Diagram diagram) { final Annotation qualifier = definitionUtils.getQualifier(diagram.getMetadata().getDefinitionSetId()); canvasPanel = InstanceUtils.lookup(canvasPanelInstances, qualifier); canvas = InstanceUtils.lookup(canvasInstances, qualifier); canvasHandler = InstanceUtils.lookup(canvasHandlerInstances, qualifier); zoomControl = InstanceUtils.lookup(zoomControlInstances, qualifier); selectionControl = InstanceUtils.lookup(selectionControlInstances, qualifier); shapeListener = new DefaultCanvasShapeListener(Collections.singletonList(zoomControl)); canvas.addRegistrationListener(shapeListener); elementListener = new DefaultCanvasElementListener(Collections.singletonList(selectionControl)); canvasHandler.addRegistrationListener(elementListener); }
@SuppressWarnings("unchecked") public void bind(final ClientSession session) { final String id = session.getCanvasHandler().getDiagram().getMetadata().getDefinitionSetId(); final Annotation qualifier = definitionUtils.getQualifier(id); final List<ClientSessionCommand> instances = types.stream() .map(type -> InstanceUtils.lookup(sessionCommands, type, qualifier)) .collect(Collectors.toList()); clearCommands(); commands.addAll(instances); commands.forEach(c -> safeBind(c, session)); }
private void onOpen(final Diagram diagram) { final Annotation qualifier = definitionUtils.getQualifier(diagram.getMetadata().getDefinitionSetId()); commandManager = InstanceUtils.lookup(commandManagers, qualifier); locationControl = InstanceUtils.lookup(locationControls, qualifier); locationControl.setCommandManagerProvider(() -> commandManager); resizeControl = InstanceUtils.lookup(resizeControls, qualifier); resizeControl.setCommandManagerProvider(() -> commandManager); elementBuilderControl = InstanceUtils.lookup(elementBuilderControls, qualifier); elementBuilderControl.setCommandManagerProvider(() -> commandManager); nodeBuilderControl = InstanceUtils.lookup(nodeBuilderControls, qualifier); nodeBuilderControl.setCommandManagerProvider(() -> commandManager); edgeBuilderControl = InstanceUtils.lookup(edgeBuilderControls, qualifier); edgeBuilderControl.setCommandManagerProvider(() -> commandManager); controlPointControl = InstanceUtils.lookup(controlPointControls, qualifier); controlPointControl.setCommandManagerProvider(() -> commandManager); connectionAcceptorControl = InstanceUtils.lookup(connectionAcceptorControls, qualifier); connectionAcceptorControl.setCommandManagerProvider(() -> commandManager); containmentAcceptorControl = InstanceUtils.lookup(containmentAcceptorControls, qualifier); containmentAcceptorControl.setCommandManagerProvider(() -> commandManager); dockingAcceptorControl = InstanceUtils.lookup(dockingAcceptorControls, qualifier); containmentAcceptorControl.setCommandManagerProvider(() -> commandManager); elementListener = new DefaultCanvasElementListener(Arrays.asList(locationControl,
@Override public void init(final Metadata metadata, final Command callback) { if (null != canvas) { throw new IllegalStateException("Session is already loaded!"); } sessionLoader.load(metadata, prefs -> { // Obtain the right qualified types. final Annotation qualifier = definitionUtils.getQualifier(metadata.getDefinitionSetId()); canvas = lookup(canvasInstances, qualifier); canvasHandler = lookup(canvasHandlerInstances, qualifier); canvasControlRegistrationEntries .forEach(entry -> registerCanvasControlEntry(entry, qualifier)); canvasHandlerControlRegistrationEntries .forEach(entry -> registerCanvasHandlerControlEntry(entry, qualifier)); callback.execute(); }, throwable -> { if (LogConfiguration.loggingIsEnabled()) { LOGGER.log(Level.SEVERE, "An error was produced during StunnerPreferences initialization.", throwable); } throw new RuntimeException(throwable); }); }
public void load(final Metadata metadata, final ParameterizedCommand<StunnerPreferences> loadCompleteCallback, final ParameterizedCommand<Throwable> errorCallback) { final String definitionSetId = metadata.getDefinitionSetId(); final Annotation qualifier = definitionUtils.getQualifier(definitionSetId); final StunnerPreferencesRegistryHolder holder = InstanceUtils.lookup(preferencesHolders, qualifier); preferences.load(prefs -> { holder.set(prefs, StunnerPreferences.class); holder.set(textPreferences, StunnerTextPreferences.class); loadCompleteCallback.execute(prefs); }, errorCallback); }
public ToolbarCommand<S> initialize(final Toolbar<S> toolbar, final S session) { this.toolbar = toolbar; final Diagram diagram = session.getCanvasHandler().getDiagram(); final String id = diagram.getMetadata().getDefinitionSetId(); final Annotation qualifier = definitionUtils.getQualifier(id); command = InstanceUtils.lookup(commands, qualifier); command.listen(this::checkState); command.bind(session); checkState(); return this; }