我正在使用 Apache Felix 及其声明式服务 (SCR) 来连接包之间的服务依赖关系。
例如,如果我需要访问 java.util.Dictionary 我可以说以下内容让 SCR 提供:
/**
* @scr.reference name=properties interface=java.util.Dictionary
*/
protected void bindProperties(Dictionary d) {
}
protected void unbindProperties(Dictionary d) {
}
现在,我有多个可用的 Dictionary 服务,我想使用“name”服务属性(我只想要“name=myDictionary”)过滤它们。我可以使用代码(使用 ServiceTracker)来做到这一点,但我宁愿在 @scr 注释中指定过滤器。