X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;f=system%2Fgeneral%2Fsrc%2Fmain%2Fjava%2Forg%2Fwamblee%2Fsystem%2Fcore%2FDefaultProvidedInterface.java;fp=system%2Fgeneral%2Fsrc%2Fmain%2Fjava%2Forg%2Fwamblee%2Fsystem%2Fcore%2FDefaultProvidedInterface.java;h=6ec52a44291dfb8d89c88b026669b5502b91b297;hb=ad6e06e3c1ba0c4ae0dea100596b1c5503bfe1c6;hp=d3a40bfe227f4aec5d449f2e262b1e76670a093c;hpb=8c773ebc6af18d4c0c0c973551f582856644f4d3;p=utils diff --git a/system/general/src/main/java/org/wamblee/system/core/DefaultProvidedInterface.java b/system/general/src/main/java/org/wamblee/system/core/DefaultProvidedInterface.java index d3a40bfe..6ec52a44 100644 --- a/system/general/src/main/java/org/wamblee/system/core/DefaultProvidedInterface.java +++ b/system/general/src/main/java/org/wamblee/system/core/DefaultProvidedInterface.java @@ -31,7 +31,6 @@ public class DefaultProvidedInterface implements ProvidedInterface { private String _name; private Class[] _interfaces; - private String _uniqueId; /** * Constructs the descriptor. @@ -43,8 +42,7 @@ public class DefaultProvidedInterface implements ProvidedInterface { public DefaultProvidedInterface(String aName, Class[] aInterfaces) { _name = aName; - _interfaces = Arrays.copyOf(aInterfaces, aInterfaces.length); - _uniqueId = UUID.randomUUID().toString(); + _interfaces = Arrays.copyOf(aInterfaces, aInterfaces.length); } @Override @@ -57,11 +55,6 @@ public class DefaultProvidedInterface implements ProvidedInterface { return _interfaces; } - @Override - public String getUniqueId() { - return _uniqueId; - } - @Override public void publish(Object aImplementation, Scope aScope) { aScope.publishInterface(this, aImplementation); @@ -80,11 +73,14 @@ public class DefaultProvidedInterface implements ProvidedInterface { @Override public boolean equals(Object aObj) { + return this == aObj; + /* if ( !(aObj instanceof DefaultProvidedInterface)) { return false; } DefaultProvidedInterface provided = (DefaultProvidedInterface)aObj; return getEqualsRepresentation().equals(provided.getEqualsRepresentation()); + */ } @Override @@ -92,6 +88,15 @@ public class DefaultProvidedInterface implements ProvidedInterface { return getEqualsRepresentation().hashCode(); } + @Override + public boolean covers(ProvidedInterface aInterface) { + // TODO do more than just equals. + if ( !(aInterface instanceof DefaultProvidedInterface)) { + return false; + } + return getEqualsRepresentation().equals(((DefaultProvidedInterface)aInterface).getEqualsRepresentation()); + } + private String getEqualsRepresentation() { List result = new ArrayList();