在iPOJO中,有没有办法在服务消费者中读取服务属性(例如getProperty(key))?发布者非常简单,但在消费者中,我似乎只能使用过滤器。
谢谢
您必须使用回调来检索服务属性:
@Bind
public void bindService(HelloService hello, Dictionary<String, Object> properties) {
// ...
}
或
@Bind
public void bindService(HelloService hello, Map<String, Object> properties) {
// ...
}
您甚至可以检索OSGi服务注册:
@Bind
public void bindService(HelloService hello, ServiceReference<HelloService> reference) {
// ...
}
所有细节都在 http://felix.apache.org/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-userguide/describing-components/service-requirement-handler.html#note-about-callbacks