我正在使用org.osgi.util.tracker.ServiceTracker
(PrintableServiceTracker实现ServiceTrackerCustomizer,只需在添加新服务时打印)。
Filter filter = bc.createFilter("(objectClass=se.enea.print.Printable)");
tracker = new ServiceTracker(bc, filter, new PrintableServiceTracker(bc));
我在新电子书“OSGi in action”中读过“伪注册”,我想知道我是否必须明确地进行伪注册,或者框架是否自动处理?
(已安装的Printable服务将被ServiceTracker捕获。将为每个预安装的Printable服务调用ServiceTracker.addingService(ServiceReference))
答案 0 :(得分:4)
不确定伪注册意味着什么,但是PrintableServiceTracker中的addsService方法不仅会针对新服务而且会针对现有服务进行调用。