X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;f=system%2Fgeneral%2Fsrc%2Fmain%2Fjava%2Forg%2Fwamblee%2Fsystem%2Fcore%2FDefaultProvidedInterface.java;h=d30a8c150d39c5c956cd3295f5901d87cdc0ccf0;hb=81fe8784a2182e25f92a7591ec5b0fba00afb828;hp=10b8f6184cbbf5c5c50ce192720b8037b7132138;hpb=ea2340638cdd4c29e9cca652fb9c41543853beae;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 10b8f618..d30a8c15 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 @@ -28,9 +28,8 @@ import java.util.List; */ public class DefaultProvidedInterface implements ProvidedInterface { - private String _name; - private Class[] _interfaces; - private String _uniqueId; + private String name; + private Class[] interfaces; /** * Constructs the descriptor. @@ -41,34 +40,18 @@ public class DefaultProvidedInterface implements ProvidedInterface { } public DefaultProvidedInterface(String aName, Class[] aInterfaces) { - _name = aName; - _interfaces = Arrays.copyOf(aInterfaces, aInterfaces.length); - _uniqueId = null; + name = aName; + interfaces = Arrays.copyOf(aInterfaces, aInterfaces.length); } @Override public String getName() { - return _name; + return name; } @Override public Class[] getInterfaceTypes() { - return _interfaces; - } - - @Override - public void setUniqueId(String aId) { - _uniqueId = aId; - } - - @Override - public String getUniqueId() { - return _uniqueId; - } - - @Override - public void publish(Object aImplementation, Scope aScope) { - aScope.publishInterface(this, aImplementation); + return interfaces; } @Override @@ -76,7 +59,7 @@ public class DefaultProvidedInterface implements ProvidedInterface { StringBuffer buf = new StringBuffer(); buf.append(getName()); buf.append(":"); - for (Class intf: _interfaces) { + for (Class intf: interfaces) { buf.append(" " + intf.getName()); } return buf.toString(); @@ -84,11 +67,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 @@ -96,10 +82,19 @@ 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(); - for (Class cls: _interfaces) { + for (Class cls: interfaces) { result.add(cls.getName()); } Collections.sort(result);