public void widgetDisposed(DisposeEvent e) { ContextInjectionFactory.uninject(tcImpl, parentContext); model.setObject(null); } });
/** * Disposes of the 3.x part's site if it has one. Subclasses may override * but must call <code>super.disposeSite()</code> in its implementation. */ void disposeSite(PartSite site) { site.dispose(); if (part.getTags().contains(IWorkbenchConstants.TAG_USE_DEPENDENCY_INJECTION)) { ContextInjectionFactory.uninject(legacyPart, part.getContext()); } legacyPart = null; }
@PreDestroy public void contextDisposed() { eventBroker.unsubscribe(itemUpdater); eventBroker.unsubscribe(selectionUpdater); eventBroker.unsubscribe(enabledUpdater); eventBroker.unsubscribe(toBeRenderedUpdater); ContextInjectionFactory.uninject(MenuManagerEventHelper.showHelper, context); MenuManagerEventHelper.showHelper = null; ContextInjectionFactory.uninject(MenuManagerEventHelper.hideHelper, context); MenuManagerEventHelper.hideHelper = null; context.remove(MenuManagerRendererFilter.class); Display display = context.get(Display.class); if (display != null && !display.isDisposed() && rendererFilter != null) { display.removeFilter(SWT.Show, rendererFilter); display.removeFilter(SWT.Hide, rendererFilter); display.removeFilter(SWT.Dispose, rendererFilter); } if (rendererFilter != null) { ContextInjectionFactory.uninject(rendererFilter, context); rendererFilter = null; } context.remove(MenuManagerRenderer.class); }
@PreDestroy public void contextDisposed() { eventBroker.unsubscribe(selectionUpdater); ContextInjectionFactory.uninject(MenuManagerEventHelper.getInstance().getShowHelper(), context); MenuManagerEventHelper.getInstance().setShowHelper(null); ContextInjectionFactory.uninject(MenuManagerEventHelper.getInstance().getHideHelper(), context); MenuManagerEventHelper.getInstance().setHideHelper(null); context.remove(MenuManagerRendererFilter.class); Display display = context.get(Display.class); if (display != null && !display.isDisposed() && rendererFilter != null) { display.removeFilter(SWT.Show, rendererFilter); display.removeFilter(SWT.Hide, rendererFilter); display.removeFilter(SWT.Dispose, rendererFilter); } if (rendererFilter != null) { ContextInjectionFactory.uninject(rendererFilter, context); rendererFilter = null; } context.remove(MenuManagerRenderer.class); if (Policy.DEBUG_RENDERER) { logger.debug("\nMMR:dispose: modelToManager size = {0}, managerToModel size = {1}", //$NON-NLS-1$ modelToManager.size(), managerToModel.size()); } }
@Override protected Control createControl(Composite parent) { IEclipseContext localContext = EclipseContextFactory.create(); final Composite newComposite = new Composite(parent, SWT.NONE); newComposite.setLayout(new FillLayout()); localContext.set(Composite.class, newComposite); localContext.set(MToolControl.class, model); final IEclipseContext parentContext = modelService.getContainingContext(model); if (model.getObject() == null) { final Object tcImpl = contribFactory.create(model.getContributionURI(), parentContext, localContext); model.setObject(tcImpl); newComposite.addDisposeListener(e -> { ContextInjectionFactory.uninject(tcImpl, parentContext); model.setObject(null); }); } model.setWidget(newComposite); newComposite.setData(AbstractPartRenderer.OWNING_ME, model); newComposite.setData(this); return newComposite; }
ContextInjectionFactory.uninject(this, window.getContext());
if (parentContext != null && client != null) { try { ContextInjectionFactory.uninject(client, parentContext); } catch (Exception e) { e.printStackTrace();