private String _name;
private Class[] _interfaces;
- private String _uniqueId;
/**
* Constructs the descriptor.
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
return _interfaces;
}
- @Override
- public String getUniqueId() {
- return _uniqueId;
- }
-
@Override
public void publish(Object aImplementation, Scope aScope) {
aScope.publishInterface(this, aImplementation);
@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
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<String> result = new ArrayList<String>();