我正在开发一个OSGi平台,遵循Pattern Extender的意识形态。 有一个名为Kernel的模块,用于验证其他模块的安装,验证Manifest中的元数据。 该模块为其他模块提供了一系列接口,并为每个模块提供了已注册的Web服务和其他内容。 我想知道的是,是否可以在依赖模块中控制HttpServices等服务的使用。 内核,在特定网址中记录Servlet和服务。 我喜欢,没有一个模块是平台的一部分,例如HttpService 。这可能吗?
由于
答案 0 :(得分:3)
如果要限制捆绑包查找特定服务的能力,可以实现一些服务挂钩。见http://www.osgi.org/javadoc/r5/core/index.html?org/osgi/framework/hooks/service/package-summary.html
您可能希望实现FindHook以防止捆绑包在服务注册表中找到该服务,并且还希望实现EventListenerHook以防止捆绑包接收有关该服务的服务事件。这两个将阻止bundle正常获取绑定到服务所必需的服务的ServiceReference。