Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.cayenne.di
Interface Injector

All Known Implementing Classes:
  DefaultInjector

    public interface Injector

A facade to the Cayenne DI container. To create an injector use `DIBootstrap` static methods.

Since:
  3.1

Method Summary
`
`<T> T`
` | `getInstance(Class<T> type)` Returns a service instance bound in the container for a specific type.
`
`<T> T`
` | `getInstance(Key<T> key)` Returns a service instance bound in the container for a specific binding key.
`
`<T> Provider<T>`
` | `getProvider(Class<T> type)`
`
`<T> Provider<T>`
` | `getProvider(Key<T> key)`
`void` | `injectMembers(Object object)` Performs field injection on a given object, ignoring constructor injection.
`void` | `shutdown()` A lifecycle method that let's the injector's services to clean up their state and release resources.

Method Detail

### getInstance

    <T> T getInstance(Class<T> type)
                  throws ConfigurationException

  Returns a service instance bound in the container for a specific type. Throws `ConfigurationException` if the type is not bound, or an instance can not be created.

  Throws:
    `ConfigurationException`

### getInstance

    <T> T getInstance(Key<T> key)
                  throws ConfigurationException

  Returns a service instance bound in the container for a specific binding key. Throws `ConfigurationException` if the key is not bound, or an instance can not be created.

  Throws:
    `ConfigurationException`

### getProvider

    <T> Provider<T> getProvider(Class<T> type)
                            throws ConfigurationException

  Throws:
    `ConfigurationException`

### getProvider

    <T> Provider<T> getProvider(Key<T> key)
                            throws ConfigurationException

  Throws:
    `ConfigurationException`

### injectMembers

    void injectMembers(Object object)

  Performs field injection on a given object, ignoring constructor injection. Since Cayenne DI injector returns fully injected objects, this method is rarely used directly.

  Note that using this method inside a custom DI `Provider` will most likely result in double injection, as custom provider is wrapped in a field-injecting provider by the DI container. Instead custom providers must initialize object properties manually, obtaining dependencies from Injector.

### shutdown

    void shutdown()

  A lifecycle method that let's the injector's services to clean up their state and release resources. This method would normally generate a scope end event for the injector's one and only singleton scope.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2001-2011 Apache Cayenne. All Rights Reserved.