I have two osgi service which implements the same interface with a different quality-of-service. One has a default ranking of 0 and the other one has a ranking of 3.

I am searching for a blueprint configuration where the default service acts as a fallback. So every other bundle should use the best available service (highest ranking) and must fallback to the default one if the better service disappears.

That is working right now.

The missing part is to automatically reconnect to the better service, when it comes online again. Is there a way to do it by configuring just the services without changing the consumers (implement ServiceTrackers an so on)?