[picocontainer-scm] [5755] java/2.x/trunk/pico/container/src/java/org/picocontainer/injectors/IterativeInjector.java: better ambiguous injection messaging - merged from pico3

paul-yCVjj/[email protected] Sat, 12 Feb 2011 07:58:52 -0600 (CST)
Newsgroups gmane.comp.java.picocontainer.cvs
Message-ID <[email protected]>
Revision 5755
Author paul
Date 2011-02-12 07:58:52 -0600 (Sat, 12 Feb 2011)

Log Message

better ambiguous injection messaging - merged from pico3

Modified Paths

- java/2.x/trunk/pico/container/src/java/org/picocontainer/injectors/IterativeInjector.java

Diff

Modified: java/2.x/trunk/pico/container/src/java/org/picocontainer/injectors/IterativeInjector.java (5754 => 5755)

--- java/2.x/trunk/pico/container/src/java/org/picocontainer/injectors/IterativeInjector.java 2011-02-03 01:49:41 UTC (rev 5754)
+++ java/2.x/trunk/pico/container/src/java/org/picocontainer/injectors/IterativeInjector.java 2011-02-12 13:58:52 UTC (rev 5755)
@@ -114,12 +114,16 @@
private boolean matchParameter(PicoContainer container, List<Object> matchingParameterList, Parameter parameter) {
for (int j = 0; j < injectionTypes.length; j++) {
Object o = matchingParameterList.get(j);
- if (o == null
- && parameter.resolve(container, this, null, injectionTypes[j],
- makeParameterNameImpl(injectionMembers.get(j)),
- useNames(), bindings[j]).isResolved()) {
- matchingParameterList.set(j, parameter);
- return true;
+ try {
+ if (o == null && parameter.resolve(container, this, null, injectionTypes[j],
+ makeParameterNameImpl(injectionMembers.get(j)),
+ useNames(), bindings[j]).isResolved()) {
+ matchingParameterList.set(j, parameter);
+ return true;
+ }
+ } catch (AmbiguousComponentResolutionException e) {
+ e.setComponent(getComponentImplementation());
+ throw e;
}
}
return false;

----------

To unsubscribe from this list please visit:

http://xircles.codehaus.org/manage_email