/** * The contribution is unregistered. * * @param factory The component factory. */ protected void unsetContribution(ComponentFactory factory) { ComponentInstance ci; Component c; synchronized (this) { ci = mapping.remove(factory); c = (Component) ci.getInstance(); tabs.removeComponent(c); } c.detach(); ci.dispose(); }