Ok, great, thanks Chetan for clarifying, then it seems ConfigurationFactory is 
the right fit for my use case :)

Regards,
Tommaso

On 12/set/2013, at 06:16, Chetan Mehrotra wrote:

> Hi Tommaso,
> 
> In general you should always use the ConfigurationFactory approach as
> it is lot more simpler and easy to use.
> 
> ManagedServiceFactory is useful in few cases when you do not want your
> bundle to depend on any other service runtime apart from core OSGi
> framework. So suitable for infrastructure bundles like Logging ,
> WebConsole or other OSGi spec implementations etc
> Chetan Mehrotra
> 
> 
> On Wed, Sep 11, 2013 at 7:06 PM, Tommaso Teofili <teof...@adobe.com> wrote:
>> Thanks a lot Chetan, that helps a lot!
>> 
>> In the mentioned link it seems both ConfigurationFactory and 
>> ManagedServiceFactory could be used for that purpose, do you know if there 
>> is any difference / advantage / disadvantage of using one instead of the 
>> other?
>> 
>> Regards,
>> Tommaso
>> 
>> On 11/set/2013, at 11:53, Chetan Mehrotra wrote:
>> 
>>> You can use Component based on ConfigurationFactory. Have a look at
>>> [1] for one such example
>>> 
>>> [1] http://stackoverflow.com/a/15872131/1035417
>>> Chetan Mehrotra
>>> 
>>> 
>>> On Wed, Sep 11, 2013 at 3:05 PM, Tommaso Teofili <teof...@adobe.com> wrote:
>>>> Hi all,
>>>> 
>>>> that's probably a trivial question but I'm looking for the best practice 
>>>> to create and register OSGi Services from configurations.
>>>> Here's an example scenario:
>>>> - I have an interface FooBar
>>>> - I have an implementation DefaultFooBarImpl
>>>> - I want to be able to specify a node like:
>>>> {
>>>>   "jcr:primaryType" : "sling:OsgiConfig",
>>>>   "name" : "foo"
>>>>   "property-one" : "some-value",
>>>>   "property-two" : "another-value",
>>>> }
>>>> - and consequently I'd like a new instance of DefaultFooBarImpl to be 
>>>> created and registered as a Service (of course implementing FooBar)
>>>> - then if a new configuration node is added:
>>>> {
>>>>   "jcr:primaryType" : "sling:OsgiConfig",
>>>>   "name" : "bar"
>>>>   "property-one" : "some-other-value",
>>>>   "property-two" : "yet-another-value",
>>>> }
>>>> - another instance of DefaultFooBarImpl is created and registered as a 
>>>> Service.
>>>> 
>>>> From my basic understanding (which may be obviously completely wrong) it 
>>>> seems to me that the best fit for my use case would be using 
>>>> ManagedServices [1] but I'm not too sure I should do that to handle 
>>>> multiple instances.
>>>> 
>>>> Thanks in advance and have a nice day,
>>>> Tommaso
>>>> 
>>>> [1] : 
>>>> http://www.osgi.org/javadoc/r4v42/org/osgi/service/cm/ManagedService.html
>>>> 
>>>> 
>> 

Reply via email to