org.picocontainer.behaviors
Class Guarded<T>
java.lang.Object
org.picocontainer.behaviors.AbstractBehavior<T>
org.picocontainer.behaviors.Guarded<T>
- Type Parameters:
T
-
- All Implemented Interfaces:
- Serializable, Behavior<T>, ComponentAdapter<T>, ComponentLifecycle<T>, ComponentMonitorStrategy, LifecycleStrategy
public class Guarded<T>
- extends AbstractBehavior<T>
behaviour for allows components to be guarded by another component
- Author:
- Paul Hammant
- See Also:
- Serialized Form
Methods inherited from class org.picocontainer.behaviors.AbstractBehavior |
accept, changeMonitor, componentHasLifecycle, currentMonitor, dispose, dispose, findAdapterOfType, getComponentImplementation, getComponentInstance, getComponentKey, getDelegate, hasLifecycle, isLazy, isStarted, start, start, stop, stop, toString, verify |
Guarded
public Guarded(ComponentAdapter delegate,
String guard)
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>
- Overrides:
getComponentInstance
in class AbstractBehavior<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.
getDescriptor
public String getDescriptor()
- Description copied from interface:
ComponentAdapter
- Get a string key descriptor of the component adapter for use in toString()
- Returns:
- the descriptor
Copyright © 2003-2010 Codehaus. All Rights Reserved.