Now the component provides read-only access to the interfaces.
[utils] / system / general / src / main / java / org / wamblee / system / core / RequiredInterface.java
index 7f7fc348d411b308f6b0fe1c40cb4dd6eb7b0b55..4dd77fc7dad510dcbc062eaab20a402008de627f 100644 (file)
  */ 
 package org.wamblee.system.core;
 
-public interface RequiredInterface {
-
-       /**
-        * Name for the interface. 
-        */
-       String getName();
+public interface RequiredInterface extends NamedInterface {
        
        /**
         * @return True iff the required interface is optional. 
@@ -46,4 +41,10 @@ public interface RequiredInterface {
         * @return Provider or null if not set. 
         */
        ProvidedInterface getProvider();
+       
+       /**
+        * Determines if the requirements of the current interface are at least those
+        * of the given required interface. 
+        */
+       boolean covers(RequiredInterface aInterface); 
 }