org.picocontainer.parameters
Class BasicComponentParameter
java.lang.Object
  
org.picocontainer.parameters.AbstractParameter
      
org.picocontainer.parameters.BasicComponentParameter
- All Implemented Interfaces: 
 - Serializable, Parameter
 
- Direct Known Subclasses: 
 - ComponentParameter
 
public class BasicComponentParameter
- extends AbstractParameter
- implements Parameter, Serializable
  
A BasicComponentParameter should be used to pass in a particular component as argument to a
 different component's constructor. This is particularly useful in cases where several
 components of the same type have been registered, but with a different key. Passing a
 ComponentParameter as a parameter when registering a component will give PicoContainer a hint
 about what other component to use in the constructor. This Parameter will never resolve
 against a collecting type, that is not directly registered in the PicoContainer itself.
- Author:
 
  - Jon Tirsén, Aslak Hellesøy, Jörg Schaible, Thomas Heller
 
- See Also:
 - Serialized Form
 
 
 
 
 
 
| 
Method Summary | 
 void | 
accept(PicoVisitor visitor)
 
          Visit the current Parameter. | 
 Parameter.Resolver | 
resolve(PicoContainer container,
               ComponentAdapter<?> forAdapter,
               ComponentAdapter<?> injecteeAdapter,
               Type expectedType,
               NameBinding expectedNameBinding,
               boolean useNames,
               Annotation binding)
 
          Check whether the given Parameter can be satisfied by the container. | 
protected 
 | 
resolveAdapter(PicoContainer container,
                             ComponentAdapter adapter,
                             Class<T> expectedType,
                             NameBinding expectedNameBinding,
                             boolean useNames,
                             Annotation binding)
 
            | 
 void | 
verify(PicoContainer container,
             ComponentAdapter<?> forAdapter,
             Type expectedType,
             NameBinding expectedNameBinding,
             boolean useNames,
             Annotation binding)
 
          Verify that the Parameter can satisfy the expected type using the container | 
 
 
| Methods inherited from class java.lang.Object | 
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
 
 
BASIC_DEFAULT
public static final BasicComponentParameter BASIC_DEFAULT
BASIC_DEFAULT is an instance of BasicComponentParameter using the default constructor.
BasicComponentParameter
public BasicComponentParameter(Object componentKey)
- Expect a parameter matching a component of a specific key.
- Parameters:
 componentKey - the key of the desired addComponent
 
BasicComponentParameter
public BasicComponentParameter()
- Expect any parameter of the appropriate type.
 
resolve
public Parameter.Resolver resolve(PicoContainer container,
                                  ComponentAdapter<?> forAdapter,
                                  ComponentAdapter<?> injecteeAdapter,
                                  Type expectedType,
                                  NameBinding expectedNameBinding,
                                  boolean useNames,
                                  Annotation binding)
- Check whether the given Parameter can be satisfied by the container.
- Specified by:
 resolve in interface Parameter
 
- Parameters:
 container - the container from which dependencies are resolved.forAdapter - the ComponentAdapter that is asking for the instanceinjecteeAdapter - the adapter to be injected into (null for N/A)expectedType - the required typeexpectedNameBinding - Expected parameter nameuseNames - should use parameter names for disambiguationbinding - @return true if the component parameter can be resolved.
- Returns:
 true if the Parameter can be verified.
- Throws:
 PicoCompositionException- See Also:
 Parameter#isResolvable(PicoContainer, ComponentAdapter, Class, NameBinding ,boolean, Annotation)
 
 
verify
public void verify(PicoContainer container,
                   ComponentAdapter<?> forAdapter,
                   Type expectedType,
                   NameBinding expectedNameBinding,
                   boolean useNames,
                   Annotation binding)
- Description copied from interface: 
Parameter 
- Verify that the Parameter can satisfy the expected type using the container
- Specified by:
 verify in interface Parameter
 
- Parameters:
 container - the container from which dependencies are resolved.forAdapter - the ComponentAdapter that is asking for the verificationexpectedType - the required typeexpectedNameBinding - Expected parameter name
 
 
accept
public void accept(PicoVisitor visitor)
- Visit the current 
Parameter.
- Specified by:
 accept in interface Parameter
 
- Parameters:
 visitor - the visitor.- See Also:
 Parameter.accept(org.picocontainer.PicoVisitor)
 
 
resolveAdapter
protected <T> ComponentAdapter<T> resolveAdapter(PicoContainer container,
                                                 ComponentAdapter adapter,
                                                 Class<T> expectedType,
                                                 NameBinding expectedNameBinding,
                                                 boolean useNames,
                                                 Annotation binding)
 
 
Copyright © 2003-2010 Codehaus. All Rights Reserved.