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.picocontainer.injectors
Class ConstructorInjection

    java.lang.Object
      org.picocontainer.injectors.AbstractInjectionFactory
          org.picocontainer.injectors.ConstructorInjection

All Implemented Interfaces:
  Serializable, ComponentFactory, InjectionFactory

Direct Known Subclasses:
  ForgetfulConstructorInjection

    public class ConstructorInjection

extends AbstractInjectionFactory

A `InjectionFactory` for constructor injection. The factory creates `ConstructorInjector`. If there is more than one constructor for the component, the one with the most satisfiable parameters will be used. By default, the choice of constructor for the component in question will be remembered between usages.

Author:
  Paul Hammant, Jon Tirsén
See Also:
  Serialized Form

Constructor Summary
`ConstructorInjection()` Will remember which constructor to use between usages on the associated Injector.
`ConstructorInjection(boolean rememberChosenConstructor)`

Method Summary
`
`<T> ComponentAdapter<T>`
` | `createComponentAdapter(ComponentMonitor componentMonitor, LifecycleStrategy lifecycleStrategy, Properties properties, Object componentKey, Class<T> componentImplementation, Parameter... parameters)` Create a new component adapter based on the specified arguments.

Methods inherited from class org.picocontainer.injectors.AbstractInjectionFactory
`accept, verify`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### ConstructorInjection

    public ConstructorInjection(boolean rememberChosenConstructor)

Parameters:
  `rememberChosenConstructor` - whether 'which constructor?' should be remembered from use to use for the associated injector.

### ConstructorInjection

    public ConstructorInjection()

  Will remember which constructor to use between usages on the associated Injector.

Method Detail

### createComponentAdapter

    public <T> ComponentAdapter<T> createComponentAdapter(ComponentMonitor componentMonitor,
                                                          LifecycleStrategy lifecycleStrategy,
                                                          Properties properties,
                                                          Object componentKey,
                                                          Class<T> componentImplementation,
                                                          Parameter... parameters)
                                               throws PicoCompositionException

  Description copied from interface: `ComponentFactory`
  Create a new component adapter based on the specified arguments.

  Parameters:
    `componentMonitor` - the component monitor
    `lifecycleStrategy` - te lifecycle strategy
    `properties` - the component properties
    `componentKey` - the key to be associated with this adapter. This value should be returned from a call to `ComponentAdapter.getComponentKey()` on the created adapter.
    `componentImplementation` - the implementation class to be associated with this adapter. This value should be returned from a call to `ComponentAdapter.getComponentImplementation()` on the created adapter. Should not be null.
    `parameters` - additional parameters to use by the component adapter in constructing component instances. These may be used, for example, to make decisions about the arguments passed into the component constructor. These should be considered hints; they may be ignored by some implementations. May be null, and may be of zero length.
  Returns:
    a new component adapter based on the specified arguments. Should not return null.
  Throws:
    `PicoCompositionException` - if the creation of the component adapter results in a `PicoCompositionException`.

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 © 2003-2009 Codehaus. All Rights Reserved.