Package org.eclipse.emf.compare.ide.ui.dependency

# Class ModelDependencyProviderRegistry

java.lang.Object
org.eclipse.emf.compare.ide.ui.dependency.ModelDependencyProviderRegistry

public class ModelDependencyProviderRegistry extends Object
The registry managing the registered dependency extension point information.

Since:
  4.1

## Constructor Summary

Constructors
Constructor
Description
`ModelDependencyProviderRegistry()`
Constructs and initialized this registry.

## Method Summary

Modifier and Type
Method
Description
`void`
`addProvider(String className, DependencyProviderDescriptor descriptor)`
Adds the given `DependencyProviderDescriptor` to this registry, using the given `className` as the identifier.
`void`
`clear()`
Clears out all registered providers from this registry.
`Set<URI>`
`getDependencies(URI uri, URIConverter uriConverter)`
Returns the set of all `URIs` that are determined as a dependency by the registered dependency providers.
`DependencyProviderDescriptor`
`removeProvider(String className)`
Removes the `DependencyProviderDescriptor` and its managed `IDependencyProvider` identified by the given `className` from this registry.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### ModelDependencyProviderRegistry

public ModelDependencyProviderRegistry()
Constructs and initialized this registry.

## Method Details

### getDependencies

public Set<URI> getDependencies(URI uri, URIConverter uriConverter)
Returns the set of all `URIs` that are determined as a dependency by the registered dependency providers. If multiple providers declare dependencies the results are combined.

Parameters:
  `uri` - The `URI` for which the dependencies are to be determined.
  `uriConverter` - The `URIConverter` to be used.
Returns:
  The set of dependencies of `uri`. If `uri` has no dependency, the returned set is empty.

### addProvider

public void addProvider(String className, DependencyProviderDescriptor descriptor)
Adds the given `DependencyProviderDescriptor` to this registry, using the given `className` as the identifier.

Parameters:
  `className` - The identifier for the given `DependencyProviderDescriptor`.
  `descriptor` - The `DependencyProviderDescriptor` which is to be added to this registry.

### removeProvider

public DependencyProviderDescriptor removeProvider(String className)
Removes the `DependencyProviderDescriptor` and its managed `IDependencyProvider` identified by the given `className` from this registry.

Parameters:
  `className` - Identifier of the provider we are to remove from this registry.
Returns:
  The removed `DependencyProviderDescriptor`, if any.

### clear

public void clear()
Clears out all registered providers from this registry.