now distinguishing between provided and required service and added
[utils] / system / general / src / main / java / org / wamblee / system / ServiceDescriptor.java
1 package org.wamblee.system;
2
3 /**
4  * Service descriptor providing a description and characteristics
5  * of the provided service. 
6  * 
7  * NOTE: The current implemention only stores the type of the 
8  * descriptor but his can be extended towards more complex rules
9  * for matching services. 
10  * 
11  * Implementations must implement {@link #equals(Object)} and {@link #hashCode()}.
12  */
13 public interface ServiceDescriptor {
14         
15         /**
16          * Symbolic name for the service as used by the subsystem.  
17          * @return Service name. 
18          */
19         String getName();
20         
21         /**
22          * Returns the service type. 
23          * @return Service type. 
24          */
25         Class[] getInterfaceTypes();
26 }