01: package org.objectweb.celtix.management;
02:
03: import java.util.List;
04:
05: import javax.management.MBeanServer;
06:
07: /**
08: * InstrumentationManager interface for the instrumentations query, register
09: * and unregister
10: */
11: public interface InstrumentationManager {
12:
13: /**
14: * register the instrumentation instance to the instrumentation manager
15: */
16: void register(Instrumentation instrumentation);
17:
18: /**
19: * unregister the instrumentation instance from the instrumentation manager
20: */
21: void unregister(Object component);
22:
23: /**
24: * get all instrumentation from the instrumentation manager
25: * @retrun the instrumentation list
26: */
27: List<Instrumentation> getAllInstrumentation();
28:
29: /**
30: * provide a clean up method for instrumentation manager to stop
31: */
32: void shutdown();
33:
34: /**
35: * get the MBeanServer which will host the celtix runtime component MBeans
36: * NOTE: if the configuration is not set the JMXEnabled to be true, this method
37: * will return null
38: * @return the MBeanServer
39: */
40: MBeanServer getMBeanServer();
41:
42: }
|