X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;f=system%2Fgeneral%2Fsrc%2Fmain%2Fjava%2Forg%2Fwamblee%2Fsystem%2Fcore%2FContainer.java;h=df92c0d099dcb4a61e219bb6047a7b5bea672783;hb=2768257dc89eeac0398e8b5ec42b0ff031e0e344;hp=fd322c6bbd49aabd10187501d630f2db762a2204;hpb=f4339a7cebbb66b82ce601a146e4c7defe574cb2;p=utils diff --git a/system/general/src/main/java/org/wamblee/system/core/Container.java b/system/general/src/main/java/org/wamblee/system/core/Container.java index fd322c6b..df92c0d0 100644 --- a/system/general/src/main/java/org/wamblee/system/core/Container.java +++ b/system/general/src/main/java/org/wamblee/system/core/Container.java @@ -252,7 +252,7 @@ public class Container extends AbstractComponent { + "' required by system '" + aComponent + "' matches multiple services provided by other systems: " - + Arrays.asList(filtered)); + + getServers(filtered)); } else { // filtered.length == 0 if ( !descriptor.isOptional()) { @@ -281,6 +281,22 @@ public class Container extends AbstractComponent { private void warn(String aMsg) { LOG.warn(getQualifiedName() + ": " + aMsg); } + + private String getServers(ProvidedInterface[] aProvidedList ) { + String result = ""; + for (ProvidedInterface provided: aProvidedList) { + result += "(components "; + for (Component component: _components) { + for (ProvidedInterface provided2: component.getProvidedInterfaces()) { + if ( provided.equals(provided2)) { + result += component + " "; + } + } + } + result += ", interface " + provided + ")"; + } + return result; + } private List getClients(RequiredInterface aRequirement) { List clients = new ArrayList();