987a85954ad3562c4a8bf1170de6fdd8957b92bf
[utils] / system / general / src / main / java / org / wamblee / system / InterfaceDescriptor.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  * @author Erik Brakkee
14  */
15 public interface InterfaceDescriptor {
16         
17         /**
18          * Symbolic name for the service as used by the subsystem.  
19          * @return Service name. 
20          */
21         String getName();
22         
23         /**
24          * Returns the service type. 
25          * @return Service type. 
26          */
27         Class[] getInterfaceTypes();
28 }