In OSGi, interface is not the only way to export and then consume services. You can also use properties (export) and filters (consumption).
With Spring DM, you export the service with some properties (i.e. metadata):
Code:
<service ref="beanToBeExported" interface="com.xyz.MyServiceInterface">
<service-properties>
<beans:entry key="myOtherKey" value="aStringValue"/>
<beans:entry key="aThirdKey" value-ref="beanToExposeAsProperty"/>
</service-properties>
</service>
And then consume it with filters:
Code:
<reference id="asyncMessageService" interface="com.xyz.MessageService"
filter="(asynchronous-delivery=true)"/>
In your case, the properties would value to rss or pop.imap, etc.