|
![]() |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface Parameter
This class provides control over the arguments that will be passed to a constructor. It can be used for finer control over what arguments are passed to a particular constructor.
a method on the
{@link MutablePicoContainer} interface which allows passing in of an array of {@linkplain Parameter Parameters}.
,
an implementation of this interface that allows you to specify the key
used for resolving the parameter.
,
an implementation of this interface that allows you to specify a constant
that will be used for resolving the parameter.
Field Summary | |
---|---|
static Parameter[] |
DEFAULT
|
static Parameter[] |
ZERO
Zero parameter is used when you wish a component to be instantiated with its default constructor. |
Method Summary | ||
---|---|---|
void |
accept(PicoVisitor visitor)
Accepts a visitor for this Parameter. |
|
boolean |
isResolvable(PicoContainer container,
ComponentAdapter adapter,
Class expectedType,
NameBinding expectedNameBinding,
boolean useNames,
Annotation binding)
Check if the Parameter can satisfy the expected type using the container. |
|
|
resolveInstance(PicoContainer container,
ComponentAdapter adapter,
Class<T> expectedType,
NameBinding expectedNameBinding,
boolean useNames,
Annotation binding)
Retrieve the object from the Parameter that satisfies the expected type. |
|
void |
verify(PicoContainer container,
ComponentAdapter adapter,
Class expectedType,
NameBinding expectedNameBinding,
boolean useNames,
Annotation binding)
Verify that the Parameter can satisfy the expected type using the container |
Field Detail |
---|
static final Parameter[] ZERO
MutablePicoContainer mpc = new PicoBuilder().build(); mpc.addComponent(Map.class, HashMap.class, Parameter.ZERO); mpc.addComponent(List.class, ArrayList.class, Parameter.ZERO);
By specifying the default constructor in this example code, you allow PicoContainer to recognize that HashMap(Collection) should not be used and avoid a CircularDependencyException.
static final Parameter[] DEFAULT
Method Detail |
---|
<T> T resolveInstance(PicoContainer container, ComponentAdapter adapter, Class<T> expectedType, NameBinding expectedNameBinding, boolean useNames, Annotation binding)
container
- the container from which dependencies are resolved.adapter
- the ComponentAdapter
that is asking for the instanceexpectedType
- the type that the returned instance needs to match.expectedNameBinding
- Expected parameter nameuseNames
- binding
-
null
if no suitable instance can be found.
PicoCompositionException
- if a referenced component could not be instantiated.boolean isResolvable(PicoContainer container, ComponentAdapter adapter, Class expectedType, NameBinding expectedNameBinding, boolean useNames, Annotation binding)
container
- the container from which dependencies are resolved.adapter
- the ComponentAdapter
that is asking for the instanceexpectedType
- the required typeexpectedNameBinding
- Expected parameter nameuseNames
- binding
-
true
if the component parameter can be resolved.void verify(PicoContainer container, ComponentAdapter adapter, Class expectedType, NameBinding expectedNameBinding, boolean useNames, Annotation binding)
container
- the container from which dependencies are resolved.adapter
- the ComponentAdapter
that is asking for the verificationexpectedType
- the required typeexpectedNameBinding
- Expected parameter nameuseNames
- binding
-
PicoCompositionException
- if parameter and its dependencies cannot be resolvedvoid accept(PicoVisitor visitor)
ComponentAdapter
, that
cascades the visitor also down to all its Parameters.
visitor
- the visitor.
|
![]() |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |