servicefactory will not help with your issue. It just tells SCR to create and activate a unique instance of the component implementation class for each bundle using the service.
The use case you have (separate service implementation class from component implementation class) can't be done with DS. DS is designed upon the premise that the service and the component are one and the same. It is possible that your use case be handled by RFC 124[1] coming in 4.2 but I am not sure. [1] http://www.osgi.org/Download/File?url=/download/osgi-4.2-early-draft.pdf -- BJ Hargrave Senior Technical Staff Member, IBM OSGi Fellow and CTO of the OSGi Alliance [EMAIL PROTECTED] office: +1 386 848 1781 mobile: +1 386 848 3788 From: "Fredrik Alströmer" <[EMAIL PROTECTED]> To: "OSGi Developer Mail List" <[email protected]> Date: 2008/10/21 04:13 AM Subject: [osgi-dev] Re: Declarative Services factory components. I just realized I should probably be dealing with the 'servicefactory' attribute instead, I'm working on it right now, if anyone has any input/ideas/concerns, please don't hesitate to voice them anyway. ;) I'm still interested in how factory components should be used though, if anyone has got any guidelines or good examples... Thanks, Fredrik. On Tue, Oct 21, 2008 at 09:30, Fredrik Alströmer <[EMAIL PROTECTED]> wrote: > Hi! > > I'd like to have a component, with normal requires and provides, which > are satisfied in the normal manner. However, when the component has > been activated and a request for the service is made, I need to use an > other object as implementation for the provided service, rather than > an instance of the implementation mentioned in the component > description. This is part of a legacy implementation, where the > implementation of the interface provided is separated from the class > doing the life cycle (this class incidentally creates the instance of > the class providing the interface that I need, so I can't make a > separate component which just depends on the life cycle component > either). I also don't want to make a wrapper (or proxy..), as there > are a bunch of these cases, and I would to solve it in a general > manner. > > Can I use factory components for this? I tried to understand the > compendium, but it appears to be very brief on this matter. If this > cannot be done with factory components, could someone please explain > how to use factory components? Who calls newInstance? (Does it have to > be done explicitly?) > > I hope my question was halfway comprehensible, it felt pretty > confusing to me... :) > > Thanks, > Fredrik. > _______________________________________________ OSGi Developer Mail List [email protected] https://mail.osgi.org/mailman/listinfo/osgi-dev
_______________________________________________ OSGi Developer Mail List [email protected] https://mail.osgi.org/mailman/listinfo/osgi-dev
