当我注册ServiceReference时,我定义了OSGi事件的主题,我在Dictionary类中发布,就像上下文方法定义所说:
registerService(班级,服务,词典)
我的字典定义是:dictionary.put(EventConstants.EVENT_TOPIC,topics);
主题是一个String数组,其中包含一些字符串,可以非常清楚地定义每个可能的事件类型I' m publising,如下所示:
String [] topics = new String [] {" ONE"," TWO" };
我想知道哪些bundle订阅了Dictionary中主题中定义的特定属性。我的意思是捆绑包将处理" TWO"
的出版物感谢。
答案 0 :(得分:0)
要接收事件,bundle会注册一个EventHandler服务,其主题为event.topics属性。因此,要查找侦听某些主题的捆绑包,请搜索EventHandler类型的所有服务,并检查其服务属性event.topics。