# Package org.apache.cayenne.di

- Interface Summary
  Interface | Description
  --- | ---
  AdhocObjectFactory | Creates objects for user-provided String class names, injecting dependencies into them.
  Binder | An object passed to a `Module` by the DI container during initialization, that provides the API for the module to bind its services to the container.
  BindingBuilder<T> | A binding builder that helps with fluent binding creation.
  ClassLoaderManager | Maps ClassLoaders to resources.
  DecoratorBuilder<T> |
  Injector | A facade to the Cayenne DI container.
  ListBuilder<T> | A binding builder for list configurations.
  MapBuilder<T> | A binding builder for map configurations.
  Module | Represents a unit of configuration of the Cayenne DI container.
  Provider<T> | A DI object factory interface.
  Scope | Defines the scope of the instances created by the DI container.
  ScopeEventListener | This interface duplicates default reflection based mechanism for receiving DI events.

- Class Summary
  Class | Description
  --- | ---
  DIBootstrap | A class that bootstraps the Cayenne DI container.
  Key<T> | An object that encapsulates a key used to store and lookup DI bindings.

- Exception Summary
  Exception | Description
  --- | ---
  DIRuntimeException | A runtime exception thrown on DI misconfiguration.

- Annotation Types Summary
  Annotation Type | Description
  --- | ---
  BeforeScopeEnd | An annotation used by objects that want to receive scope ending events from the DI registry.
  Inject |