|
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
java.lang.Objectorg.picocontainer.defaults.MonitoringComponentAdapter
org.picocontainer.defaults.AbstractComponentAdapter
org.picocontainer.defaults.InstantiatingComponentAdapter
This ComponentAdapter will instantiate a new object for each call to
ComponentAdapter.getComponentInstance(PicoContainer).
That means that when used with a PicoContainer, getComponentInstance will
return a new object each time.
| Nested Class Summary | |
protected static class |
InstantiatingComponentAdapter.Guard
The cycle guard for the verification. |
| Field Summary | |
protected boolean |
allowNonPublicClasses
Flag indicating instanciation of non-public classes. |
protected LifecycleStrategy |
lifecycleStrategy
The strategy used to control the lifecycle |
protected Parameter[] |
parameters
The parameters to use for initialization. |
protected InstantiatingComponentAdapter.Guard |
verifyingGuard
The cycle guard for the verification. |
| Constructor Summary | |
protected |
InstantiatingComponentAdapter(Object componentKey,
Class componentImplementation,
Parameter[] parameters,
boolean allowNonPublicClasses)
Constructs a new ComponentAdapter for the given key and implementation. |
protected |
InstantiatingComponentAdapter(Object componentKey,
Class componentImplementation,
Parameter[] parameters,
boolean allowNonPublicClasses,
ComponentMonitor monitor)
Constructs a new ComponentAdapter for the given key and implementation. |
protected |
InstantiatingComponentAdapter(Object componentKey,
Class componentImplementation,
Parameter[] parameters,
boolean allowNonPublicClasses,
ComponentMonitor monitor,
LifecycleStrategy lifecycleStrategy)
Constructs a new ComponentAdapter for the given key and implementation. |
| Method Summary | |
void |
accept(PicoVisitor visitor)
Accepts a visitor for this ComponentAdapter. |
protected Parameter[] |
createDefaultParameters(Class[] parameters)
Create default parameters for the given types. |
void |
dispose(Object component)
Invoke the "dispose" method on the component instance if this is disposable. |
protected abstract Constructor |
getGreediestSatisfiableConstructor(PicoContainer container)
Find and return the greediest satisfiable constructor. |
boolean |
hasLifecycle(Class type)
Test if a component instance has a lifecycle. |
protected Object |
newInstance(Constructor constructor,
Object[] parameters)
Instantiate an object with given parameters and respect the accessible flag. |
void |
start(Object component)
Invoke the "start" method on the component instance if this is startable. |
void |
stop(Object component)
Invoke the "stop" method on the component instance if this is stoppable. |
void |
verify(PicoContainer container)
Verify that all dependencies for this adapter can be satisifed. |
| Methods inherited from class org.picocontainer.defaults.AbstractComponentAdapter |
checkTypeCompatibility, getComponentImplementation, getComponentKey, toString |
| Methods inherited from class org.picocontainer.defaults.MonitoringComponentAdapter |
changeMonitor, currentMonitor |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Methods inherited from interface org.picocontainer.ComponentAdapter |
getComponentInstance |
| Field Detail |
protected transient InstantiatingComponentAdapter.Guard verifyingGuard
protected transient Parameter[] parameters
protected boolean allowNonPublicClasses
protected LifecycleStrategy lifecycleStrategy
| Constructor Detail |
protected InstantiatingComponentAdapter(Object componentKey,
Class componentImplementation,
Parameter[] parameters,
boolean allowNonPublicClasses,
ComponentMonitor monitor,
LifecycleStrategy lifecycleStrategy)
componentKey - the search key for this implementationcomponentImplementation - the concrete implementationparameters - the parameters to use for the initializationallowNonPublicClasses - flag to allow instantiation of non-public classesmonitor - the component monitor used by this ComponentAdapterlifecycleStrategy - the lifecycle strategy used by this ComponentAdapter
AssignabilityRegistrationException - if the key is a type and the implementation cannot be assigned to
NotConcreteRegistrationException - if the implementation is not a concrete class
NullPointerException - if one of the parameters is null
protected InstantiatingComponentAdapter(Object componentKey,
Class componentImplementation,
Parameter[] parameters,
boolean allowNonPublicClasses,
ComponentMonitor monitor)
componentKey - the search key for this implementationcomponentImplementation - the concrete implementationparameters - the parameters to use for the initializationallowNonPublicClasses - flag to allow instantiation of non-public classesmonitor - the component monitor used by this ComponentAdapter
AssignabilityRegistrationException - if the key is a type and the implementation cannot be assigned to
NotConcreteRegistrationException - if the implementation is not a concrete class
NullPointerException - if one of the parameters is null
protected InstantiatingComponentAdapter(Object componentKey,
Class componentImplementation,
Parameter[] parameters,
boolean allowNonPublicClasses)
componentKey - the search key for this implementationcomponentImplementation - the concrete implementationparameters - the parameters to use for the initializationallowNonPublicClasses - flag to allow instantiation of non-public classes.
AssignabilityRegistrationException - if the key is a type and the implementation cannot be assigned to.
NotConcreteRegistrationException - if the implementation is not a concrete class.
NullPointerException - if one of the parameters is null| Method Detail |
protected Parameter[] createDefaultParameters(Class[] parameters)
parameters - the parameter types
public void verify(PicoContainer container)
throws PicoIntrospectionException
ComponentAdapter
verify in interface ComponentAdaptercontainer - the PicoContainer, that is used to resolve any possible dependencies of the instance.
PicoIntrospectionException - if one or more dependencies cannot be resolved.public void accept(PicoVisitor visitor)
ComponentAdapterPicoContainer, that
cascades the visitor also down to all its ComponentAdapter instances.
accept in interface ComponentAdapteraccept in class AbstractComponentAdapterpublic void start(Object component)
LifecycleStrategy
start in interface LifecycleStrategycomponent - the instance of the component to startpublic void stop(Object component)
LifecycleStrategy
stop in interface LifecycleStrategycomponent - the instance of the component to stoppublic void dispose(Object component)
LifecycleStrategy
dispose in interface LifecycleStrategycomponent - the instance of the component to disposepublic boolean hasLifecycle(Class type)
LifecycleStrategy
hasLifecycle in interface LifecycleStrategytype - the component's type
true if the component has a lifecycle
protected Object newInstance(Constructor constructor,
Object[] parameters)
throws InstantiationException,
IllegalAccessException,
InvocationTargetException
constructor - the constructor to useparameters - the parameters for the constructor
InstantiationException
IllegalAccessException
InvocationTargetException
protected abstract Constructor getGreediestSatisfiableConstructor(PicoContainer container)
throws PicoIntrospectionException,
UnsatisfiableDependenciesException,
AmbiguousComponentResolutionException,
AssignabilityRegistrationException,
NotConcreteRegistrationException
container - the PicoContainer to resolve dependencies.
PicoIntrospectionException
UnsatisfiableDependenciesException
AmbiguousComponentResolutionException
AssignabilityRegistrationException
NotConcreteRegistrationException
|
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||