Package org.picocontainer.injectors
Class TypedFieldInjector<T>
- java.lang.Object
-
- org.picocontainer.adapters.AbstractAdapter<T>
-
- org.picocontainer.injectors.AbstractInjector<T>
-
- org.picocontainer.injectors.IterativeInjector<T>
-
- org.picocontainer.injectors.AbstractFieldInjector<T>
-
- org.picocontainer.injectors.TypedFieldInjector<T>
-
- All Implemented Interfaces:
Serializable,ComponentAdapter<T>,ComponentMonitorStrategy,Injector<T>
public class TypedFieldInjector<T> extends AbstractFieldInjector<T>
Injection happens after instantiation, and fields are marked as injection points via a field type.- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.picocontainer.injectors.AbstractInjector
AbstractInjector.AmbiguousComponentResolutionException, AbstractInjector.CyclicDependencyException, AbstractInjector.NotConcreteRegistrationException, AbstractInjector.UnsatisfiableDependenciesException
-
Nested classes/interfaces inherited from interface org.picocontainer.ComponentAdapter
ComponentAdapter.NOTHING
-
-
Field Summary
-
Fields inherited from class org.picocontainer.injectors.IterativeInjector
bindings, injectionMembers, injectionTypes
-
Fields inherited from class org.picocontainer.injectors.AbstractInjector
parameters, verifyingGuard
-
-
Constructor Summary
Constructors Constructor Description TypedFieldInjector(Object key, Class<?> impl, Parameter[] parameters, ComponentMonitor componentMonitor, String classNames)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description StringgetDescriptor()Get a string key descriptor of the component adapter for use in toString()protected voidinitializeInjectionMembersAndTypeLists()protected ObjectinjectIntoMember(AccessibleObject member, Object componentInstance, Object toInject)protected booleanisTypedForInjection(Field field)protected NameBindingmakeParameterNameImpl(AccessibleObject member)protected ObjectmemberInvocationReturn(Object lastReturn, AccessibleObject member, Object instance)-
Methods inherited from class org.picocontainer.injectors.AbstractFieldInjector
unsatisfiedDependencies
-
Methods inherited from class org.picocontainer.injectors.IterativeInjector
crudeMethodSignature, decorateComponentInstance, getComponentInstance, getConstructor, getName, isInjectorMethod, verify
-
Methods inherited from class org.picocontainer.injectors.AbstractInjector
accept, box, caughtIllegalAccessException, caughtIllegalAccessException, caughtInstantiationException, caughtInvocationTargetException, createDefaultParameters, getComponentInstance, newInstance, useNames
-
Methods inherited from class org.picocontainer.adapters.AbstractAdapter
changeMonitor, checkTypeCompatibility, currentMonitor, findAdapterOfType, getComponentImplementation, getComponentKey, getDelegate, toString
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.picocontainer.ComponentAdapter
findAdapterOfType, getComponentImplementation, getComponentKey, getDelegate
-
-
-
-
Constructor Detail
-
TypedFieldInjector
public TypedFieldInjector(Object key, Class<?> impl, Parameter[] parameters, ComponentMonitor componentMonitor, String classNames)
-
-
Method Detail
-
initializeInjectionMembersAndTypeLists
protected void initializeInjectionMembersAndTypeLists()
- Overrides:
initializeInjectionMembersAndTypeListsin classIterativeInjector<T>
-
isTypedForInjection
protected boolean isTypedForInjection(Field field)
-
injectIntoMember
protected Object injectIntoMember(AccessibleObject member, Object componentInstance, Object toInject) throws IllegalAccessException, InvocationTargetException
- Specified by:
injectIntoMemberin classIterativeInjector<T>- Throws:
IllegalAccessExceptionInvocationTargetException
-
getDescriptor
public String getDescriptor()
Description copied from interface:ComponentAdapterGet a string key descriptor of the component adapter for use in toString()- Specified by:
getDescriptorin interfaceComponentAdapter<T>- Overrides:
getDescriptorin classAbstractInjector<T>- Returns:
- the descriptor
-
makeParameterNameImpl
protected NameBinding makeParameterNameImpl(AccessibleObject member)
- Overrides:
makeParameterNameImplin classIterativeInjector<T>
-
memberInvocationReturn
protected Object memberInvocationReturn(Object lastReturn, AccessibleObject member, Object instance)
- Specified by:
memberInvocationReturnin classIterativeInjector<T>
-
-