Just use @Component(name=“your-new-pid")

-- 
Guillaume Sauthier (OW2)
Sent with Airmail

On 14 Oct 2014 at 09:25:14, Milen Dyankov (milendyan...@gmail.com) wrote:

Thank you Clement,  

It works now! I suppose there is no really a easy way to change the factory  
PID in this case, right?  

Regards,  
Milen  

On Mon, Oct 13, 2014 at 3:22 PM, Clement Escoffier <  
clement.escoff...@gmail.com> wrote:  

> Hi,  
>  
> On 13 octobre 2014 at 13:35:49, Milen Dyankov (milendyan...@gmail.com)  
> wrote:  
> Thank you for clarifying Clement!  
>  
> The goal it pretty simple. Say I have:  
>  
> @Component(  
> immediate = true,  
> managedservice = "my.service")  
> @Provides  
> public class MyServiceImpl implements MyService {  
>  
> @Property  
> protected String someProperty;  
> ...  
> }  
>  
> I would like to be able to able to create new instances (register new  
> services) by just creating respective my.service-unique_name.cfg files in  
> karaf's etc folder. This does not seem to work and up until now I thought  
> it's because the ManagedServiceFactory was not created. But if understand  
> correctly what you are saying - it should still work just use a different  
> approach internally. If that is correct, then must be something else I'm  
> doing wrong. I would appreciate any example (a pointer to a project using  
> something similar is more than enough) to learn from.  
>  
>  
> Remove the ‘managedservice’ attribute exposing a ManagedService and not  
> creating new instances. To create new instances, just create a cfg file  
> with the given name:  
>  
> MyServiceImplQualifiedName-id.cfg  
>  
> The “MyServiceImplQualifiedName” is the qualified name of your class (like  
> org.acme.component.MyServiceImpl)  
>  
> Regards,  
>  
> Clement  
>  
>  
>  
>  
>  
> Regards,  
> Milen  
>  
>  
>  
>  
>  
> On Mon, Oct 13, 2014 at 1:10 PM, Clement Escoffier <  
> clement.escoff...@gmail.com> wrote:  
>  
> > Hi,  
> >  
> > You are right, 1.12.0 does not expose ManagedServiceFactory anymore  
> > because it uses a ‘configuration tracker’  
> > (org.apache.felix.ipojo.ConfigurationTracker). The documentation is not  
> up  
> > to date. However, the feature stay the same. Factory configurations  
> pushed  
> > in the config admin create instances et support dynamic reconfiguration.  
> >  
> > Depending of what you want to do, you can also rely on the Factory  
> service  
> > exposed for each @Component.  
> >  
> > Cheers,  
> >  
> > Clement  
> >  
> > On 13 octobre 2014 at 12:02:36, Milen Dyankov (milendyan...@gmail.com)  
> > wrote:  
> >  
> > Hi,  
> > can someone point me to an example of using ConfigAdmin's  
> > ManagedServiceFactory with iPOJO components, please?  
> >  
> > The reason I'm asking is, what the docs (  
> >  
> >  
> http://felix.apache.org/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-userguide/ipojo-advanced-topics/combining-ipojo-and-configuration-admin.html
>   
>  
> > )  
> > say:  
> >  
> > For each (public) component type, a ManagedServiceFactory is published.  
> > > For each configurations matching with the component type from the  
> > > Configuration Admin, a new component instance is created.  
> >  
> >  
> > does not seem to work for me (iPOJO 1.12.0 in Karaf 3.0.1). No matter  
> what  
> > I do, I can't get a "org.osgi.service.cm.ManagedServiceFactory"  
> registered  
> > for my component.  
> >  
> > iPOJO will register "org.osgi.service.cm.ManagedService" for the  
> component  
> > if I provide "managedservice = ..... " in the @Component and  
> @Instantiate  
> > it! In such case I can indeed use ConfigAdmin to configure the instance.  
> >  
> > However I couldn't figure out how to instruct iPOJO to register a "  
> > ManagedServiceFactory" so that I can later on create new component  
> > instances from ConfigAdmin. Am I misinterpreting the docs? Missing  
> > something obvious?  
> >  
> > Regards,  
> > Milen  
> >  
> >  
> > --  
> > http://about.me/milen  
> >  
>  
>  
>  
> --  
> http://about.me/milen  
>  



--  
http://about.me/milen  

Reply via email to