org.picocontainer.injectors
Class IterativeInjector
java.lang.Object
org.picocontainer.adapters.AbstractAdapter
org.picocontainer.injectors.AbstractInjector
org.picocontainer.injectors.IterativeInjector
- All Implemented Interfaces:
- Serializable, ComponentAdapter, ComponentMonitorStrategy, LifecycleStrategy
- Direct Known Subclasses:
- AnnotatedFieldInjector, SetterInjector
public abstract class IterativeInjector
- extends AbstractInjector
- See Also:
- Serialized Form
| Methods inherited from class org.picocontainer.injectors.AbstractInjector |
accept, caughtIllegalAccessException, caughtIllegalAccessException, caughtInstantiationException, caughtInvocationTargetException, createDefaultParameters, dispose, hasLifecycle, newInstance, start, stop |
injectionMembers
protected transient List<Member> injectionMembers
injectionTypes
protected transient Class[] injectionTypes
IterativeInjector
public IterativeInjector(Object componentKey,
Class componentImplementation,
Parameter[] parameters,
ComponentMonitor monitor,
LifecycleStrategy lifecycleStrategy)
throws AbstractInjector.NotConcreteRegistrationException
- Constructs a IterativeInjector
- Parameters:
componentKey - the search key for this implementationcomponentImplementation - the concrete implementationparameters - the parameters to use for the initializationmonitor - the component monitor used by this addAdapterlifecycleStrategy - the component lifecycle strategy used by this addAdapter
- Throws:
AbstractInjector.NotConcreteRegistrationException - if the implementation is not a concrete class.
NullPointerException - if one of the parameters is null
getConstructor
protected Constructor getConstructor()
unsatisfiedDependencies
protected void unsatisfiedDependencies(PicoContainer container,
Set<Class> unsatisfiableDependencyTypes)
getComponentInstance
public Object getComponentInstance(PicoContainer container)
throws PicoCompositionException
- Description copied from interface:
ComponentAdapter
- Retrieve the component instance. This method will usually create a new instance each time it is called, but that
is not required. For example,
Cached will always return the
same instance.
- Parameters:
container - the PicoContainer, that is used to resolve any possible dependencies of the instance.
- Returns:
- the component instance.
- Throws:
PicoCompositionException - if the component could not be instantiated.
getOrMakeInstance
protected Object getOrMakeInstance(PicoContainer container,
Constructor constructor,
ComponentMonitor componentMonitor)
injectIntoMember
protected void injectIntoMember(Member member,
Object componentInstance,
Object toInject)
throws IllegalAccessException,
InvocationTargetException
- Throws:
IllegalAccessException
InvocationTargetException
verify
public void verify(PicoContainer container)
throws PicoCompositionException
- Description copied from interface:
ComponentAdapter
- Verify that all dependencies for this adapter can be satisifed. Normally, the adapter should verify this by
checking that the associated PicoContainer contains all the needed dependnecies.
- Specified by:
verify in interface ComponentAdapter- Specified by:
verify in class AbstractInjector
- Parameters:
container - the PicoContainer, that is used to resolve any possible dependencies of the instance.
- Throws:
PicoCompositionException - if one or more dependencies cannot be resolved.
initializeInjectionMembersAndTypeLists
protected void initializeInjectionMembersAndTypeLists()
isInjectorMethod
protected boolean isInjectorMethod(Method method)
Copyright © 2003-2007 Codehaus. All Rights Reserved.