I am using Apache Felix and its Declarative Services (SCR) to wire the service dependencies between bundles.
For example, if I need access to a java.util.Dictionary I can say the following to have SCR provide one:
/**
* @scr.reference name=properties interface=java.util.Dictionary
*/
protected void bindProperties(Dictionary d) {
}
protected void unbindProperties(Dictionary d) {
}
Now, I have more than one Dictionary service available, and I want to filter them using the "name" service property (I only want "name=myDictionary"). I can do that with code (using a ServiceTracker), but I'd rather specify the filter in the @scr annotation instead.