/******************************************************************************* * This file is protected by Copyright. * Please refer to the COPYRIGHT file distributed with this source distribution. * * This file is part of REDHAWK IDE. * * All rights reserved. This program and the accompanying materials are made available under * the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html *******************************************************************************/ package gov.redhawk.ide.sdr.ui; import gov.redhawk.eclipsecorba.idl.expressions.util.ExpressionsAdapterFactory; import gov.redhawk.eclipsecorba.idl.operations.provider.OperationsItemProviderAdapterFactory; import gov.redhawk.eclipsecorba.idl.provider.IdlItemProviderAdapterFactory; import gov.redhawk.eclipsecorba.idl.types.provider.TypesItemProviderAdapterFactory; import gov.redhawk.eclipsecorba.library.provider.RepositoryItemProviderAdapterFactory; import gov.redhawk.ide.sdr.provider.SdrItemProviderAdapterFactory; import org.eclipse.emf.common.notify.AdapterFactory; import org.eclipse.emf.edit.provider.ComposedAdapterFactory; import org.eclipse.emf.edit.provider.ReflectiveItemProviderAdapterFactory; import org.eclipse.emf.edit.provider.resource.ResourceItemProviderAdapterFactory; import org.eclipse.emf.transaction.TransactionalEditingDomain; import org.eclipse.emf.transaction.ui.provider.TransactionalAdapterFactoryLabelProvider; /** * @since 3.1 */ public class SdrLabelProvider extends TransactionalAdapterFactoryLabelProvider { public SdrLabelProvider() { super(TransactionalEditingDomain.Registry.INSTANCE.getEditingDomain(SdrUiPlugin.EDITING_DOMAIN_ID), SdrLabelProvider.createAdapterFactory()); } /** * Creates the adapter factory. * * @return the adapter factory */ private static AdapterFactory createAdapterFactory() { // Create an adapter factory that yields item providers. // final ComposedAdapterFactory adapterFactory = new ComposedAdapterFactory(ComposedAdapterFactory.Descriptor.Registry.INSTANCE); adapterFactory.addAdapterFactory(new RepositoryItemProviderAdapterFactory()); adapterFactory.addAdapterFactory(new SdrItemProviderAdapterFactory()); adapterFactory.addAdapterFactory(new IdlItemProviderAdapterFactory()); adapterFactory.addAdapterFactory(new OperationsItemProviderAdapterFactory()); adapterFactory.addAdapterFactory(new ExpressionsAdapterFactory()); adapterFactory.addAdapterFactory(new TypesItemProviderAdapterFactory()); adapterFactory.addAdapterFactory(new ResourceItemProviderAdapterFactory()); adapterFactory.addAdapterFactory(new ReflectiveItemProviderAdapterFactory()); return adapterFactory; } /** * {@inheritDoc} */ @Override public void dispose() { ((ComposedAdapterFactory) this.adapterFactory).dispose(); this.adapterFactory = null; super.dispose(); } }