org.picocontainer.injectors
Class CompositeInjector<T>
java.lang.Object
org.picocontainer.adapters.AbstractAdapter<T>
org.picocontainer.injectors.AbstractInjector<T>
org.picocontainer.injectors.CompositeInjector<T>
- All Implemented Interfaces:
- Serializable, ComponentAdapter<T>, ComponentMonitorStrategy, Injector<T>
- Direct Known Subclasses:
- MultiInjector
public class CompositeInjector<T>
- extends AbstractInjector<T>
- See Also:
- Serialized Form
CompositeInjector
public CompositeInjector(Object componentKey,
Class<?> componentImplementation,
Parameter[] parameters,
ComponentMonitor monitor,
boolean useNames,
Injector... injectors)
getComponentInstance
public T 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.
- Specified by:
getComponentInstance in interface ComponentAdapter<T>- Overrides:
getComponentInstance in class AbstractInjector<T>
- Parameters:
container - the PicoContainer, that is used to resolve any possible dependencies of the instance.
- Returns:
- the component instance.
- Throws:
PicoCompositionException - if the component has dependencies which could not be resolved, or
instantiation of the component lead to an ambigous situation within the
container.
getComponentInstance
public T getComponentInstance(PicoContainer container,
Type into)
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.
- Specified by:
getComponentInstance in interface ComponentAdapter<T>- Specified by:
getComponentInstance in class AbstractInjector<T>
- Parameters:
container - the PicoContainer, that is used to resolve any possible dependencies of the instance.into - the class that is about to be injected into. Use ComponentAdapter.NOTHING.class if this is not important to you.
- Returns:
- the component instance.
- Throws:
PicoCompositionException - if the component has dependencies which could not be resolved, or
instantiation of the component lead to an ambiguous situation within the
container.
decorateComponentInstance
public Object decorateComponentInstance(PicoContainer container,
Type into,
T instance)
- Description copied from interface:
Injector
- A preexiting component instance can be injected into after instantiation
- Specified by:
decorateComponentInstance in interface Injector<T>- Overrides:
decorateComponentInstance in class AbstractInjector<T>
- Parameters:
container - the container that can provide injectable dependenciesinstance - the instance to
- Returns:
- the object returned is the result of the last of the injectors delegated to
verify
public void verify(PicoContainer container)
throws PicoCompositionException
- Description copied from interface:
ComponentAdapter
- Verify that all dependencies for this adapter can be satisfied. Normally, the adapter should verify this by
checking that the associated PicoContainer contains all the needed dependencies.
- Specified by:
verify in interface ComponentAdapter<T>- Overrides:
verify in class AbstractInjector<T>
- 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.
accept
public final void accept(PicoVisitor visitor)
- Description copied from interface:
ComponentAdapter
- Accepts a visitor for this ComponentAdapter. The method is normally called by visiting a
PicoContainer, that
cascades the visitor also down to all its ComponentAdapter instances.
- Specified by:
accept in interface ComponentAdapter<T>- Overrides:
accept in class AbstractInjector<T>
- Parameters:
visitor - the visitor.
getDescriptor
public String getDescriptor()
- Description copied from interface:
ComponentAdapter
- Get a string key descriptor of the component adapter for use in toString()
- Specified by:
getDescriptor in interface ComponentAdapter<T>- Overrides:
getDescriptor in class AbstractInjector<T>
- Returns:
- the descriptor
Copyright © 2003-2010 Codehaus. All Rights Reserved.