Class EObjectProviderRegistry

java.lang.Object
com._1c.g5.v8.dt.internal.platform.EObjectProviderRegistry
All Implemented Interfaces:
IEObjectProvider.Registry, IRuntimeRegistryChangeListener, EventListener, org.eclipse.core.runtime.IRegistryChangeListener

public class EObjectProviderRegistry extends Object implements IEObjectProvider.Registry, org.eclipse.core.runtime.IRegistryChangeListener, IRuntimeRegistryChangeListener
Default implementation of IEObjectProvider.Registry.
  • Constructor Details

  • Method Details

    • get

      public IEObjectProvider get(org.eclipse.emf.ecore.EClass eClass, Version version)
      Gets registered IEObjectProvider by EClass and its version.
      Specified by:
      get in interface IEObjectProvider.Registry
      Parameters:
      eClass - EClass. May be null.
      version - corresponding version of the provider
      Returns:
      IEObjectProvider registered for EClass. null if IEObjectProvider for EClass hasn't been registered.
      Throws:
      AssertionError - if multiple providers with the same EClass with intersection version range found
    • getAllResourceUris

      public Iterable<org.eclipse.emf.common.util.URI> getAllResourceUris(Version version)
      Description copied from interface: IEObjectProvider.Registry
      Gets the URIs of all the resources defined in the specified version.
      Specified by:
      getAllResourceUris in interface IEObjectProvider.Registry
      Parameters:
      version - The version. May not be null.
      Returns:
      a iterable over the URIs.
    • registryChanged

      public void registryChanged(org.eclipse.core.runtime.IRegistryChangeEvent event)
      Specified by:
      registryChanged in interface org.eclipse.core.runtime.IRegistryChangeListener
    • registryChanged

      public void registryChanged()
      Description copied from interface: IRuntimeRegistryChangeListener
      Method to be called on 1C:Enterprise runtimes extension registry changes for event listeners
      Specified by:
      registryChanged in interface IRuntimeRegistryChangeListener
    • getEObjectProviders

      protected Map<org.eclipse.emf.ecore.EClass,Map<Version,IEObjectProvider>> getEObjectProviders()
      Returns providers map. Loads providers from Extension Point, if needed.
      Throws:
      AssertionError - if multiple providers with the same EClass with intersection version range found
    • loadEObjectProviders

      protected Map<org.eclipse.emf.ecore.EClass,Map<Version,IEObjectProvider>> loadEObjectProviders(org.eclipse.core.runtime.IExtensionRegistry registry)
      Laods all IEObjectProvider from Extension Point.
      Parameters:
      registry - Eclipse Extension Registry to use, cannot be null
      Returns:
      loaded providers map, never null