## Uses of Interface
oracle.dbtools.plugin.api.di.InstanceProvider

- Packages that use InstanceProvider
  Package | Description
  --- | ---
  oracle.dbtools.plugin.api.di | A `javax.inject` compatible Dependency Injection (D.I.) framework.

- - ### Uses of InstanceProvider in oracle.dbtools.plugin.api.di

    Classes in oracle.dbtools.plugin.api.di that implement InstanceProvider
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `DeferredInstanceProvider<T>` | `InstanceProvider` implementation that defers resolving an instance until `DeferredInstanceProvider.get()`, `DeferredInstanceProvider.hasMultiple()`, `DeferredInstanceProvider.isUnsatisfied()`, or `DeferredInstanceProvider.iterator()` is invoked
    `class` | `ResolvedInstances<T>` | Represents the discovered matches for a call to `InstanceLocator.select(TypeQualifier)`

    Methods in oracle.dbtools.plugin.api.di that return InstanceProvider
    Modifier and Type | Method | Description
    --- | --- | ---
    `default <T> InstanceProvider<T>` | InstanceLocator.`select​(java.lang.Class<T> service)` | Select all services matching the specified type.
    `default <T> InstanceProvider<T>` | InstanceLocator.`select​(java.lang.Class<T> service, java.lang.annotation.Annotation... qualifiers)` | Deprecated. Use `InstanceLocator.select(TypeQualifier)` instead
    `<T> InstanceProvider<T>` | InstanceLocator.`select​(TypeQualifier<T> qualifier)` | Select all services matching the specified `TypeQualifier`
    `<T> InstanceProvider<T>` | Instances.Builder.`select​(TypeQualifier<T> service)` |
    `<T> InstanceProvider<T>` | Instances.`select​(TypeQualifier<T> service)` |

    Methods in oracle.dbtools.plugin.api.di that return types with arguments of type InstanceProvider
    Modifier and Type | Method | Description
    --- | --- | ---
    `java.util.Set<java.util.Map.Entry<TypeQualifier<?>,​InstanceProvider<?>>>` | Instances.`entries()` | Enumerate each of the instances in this set

    Methods in oracle.dbtools.plugin.api.di with parameters of type InstanceProvider
    Modifier and Type | Method | Description
    --- | --- | ---
    `static <T> ResolvedInstances<T>` | ResolvedInstances.`matches​(InstanceProvider<T> firstMatch, InstanceProvider<T>... subsequentMatches)` | Concatenates a series of matches together
    `Instances.Builder` | Instances.Builder.`set​(TypeQualifier<?> service, InstanceProvider<?> provider)` | Set the sole `InstanceProvider` for the specified service