Package org.picocontainer.injectors

# Class AnnotatedMethodInjection

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

All Implemented Interfaces:
  `Serializable`, `ComponentFactory`, `InjectionFactory`

public class AnnotatedMethodInjection extends AbstractInjectionFactory
A `InjectionFactory` for Guice-style annotated methods. The factory creates `AnnotatedMethodInjector`.

Author:
  Paul Hammant
See Also:
  - Serialized Form

## Constructor Summary

Constructors
Constructor
Description
`AnnotatedMethodInjection()`
`AnnotatedMethodInjection(Class<? extends Annotation> injectionAnnotation, boolean useNames)`

## Method Summary

Modifier and Type
Method
Description
`<T> ComponentAdapter<T>`
`createComponentAdapter(ComponentMonitor monitor, LifecycleStrategy lifecycleStrategy, Properties componentProperties, Object componentKey, Class<T> componentImplementation, Parameter... parameters)`
Create a `SetterInjector`.

### Methods inherited from class org.picocontainer.injectors.AbstractInjectionFactory

`accept, verify, wrapLifeCycle`

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

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

## Constructor Details

### AnnotatedMethodInjection

public AnnotatedMethodInjection(Class<? extends Annotation> injectionAnnotation, boolean useNames)

### AnnotatedMethodInjection

public AnnotatedMethodInjection()

## Method Details

### createComponentAdapter

public <T> ComponentAdapter<T> createComponentAdapter(ComponentMonitor monitor, LifecycleStrategy lifecycleStrategy, Properties componentProperties, Object componentKey, Class<T> componentImplementation, Parameter... parameters) throws PicoCompositionException
Create a `SetterInjector`.

Parameters:
  `monitor` -
  `lifecycleStrategy` -
  `componentProperties` -
  `componentKey` - The component's key
  `componentImplementation` - The class of the bean.
  `parameters` - Any parameters for the setters. If null the adapter solves the dependencies for all setters internally. Otherwise the number parameters must match the number of the setter.
Returns:
  Returns a new `SetterInjector`.
Throws:
  `PicoCompositionException` - if dependencies cannot be solved or if the implementation is an interface or an abstract class.