Another option is Aries Component DSL [1].

- Ray

[1] https://github.com/apache/aries/tree/trunk/component-dsl

On Thu, Feb 21, 2019 at 1:21 PM BJ Hargrave via osgi-dev <
osgi-dev@mail.osgi.org> wrote:

> There is not plan for Declarative Services to have an API for imperatively
> creating components/services. The whole point of Declarative Services is
> the declarative nature of it. You can always use the service APIs of the
> framework to create services. Or something like felix dependency manager.
> --
>
> BJ Hargrave
> Senior Technical Staff Member, IBM // office: +1 386 848 1781
> OSGi Fellow and CTO of the OSGi Alliance // mobile: +1 386 848 3788
> hargr...@us.ibm.com
>
>
>
> ----- Original message -----
> From: Thomas Driessen via osgi-dev <osgi-dev@mail.osgi.org>
> Sent by: osgi-dev-boun...@mail.osgi.org
> To: "OSGi Developer Mail List" <osgi-dev@mail.osgi.org>
> Cc:
> Subject: [osgi-dev] SCR API
> Date: Thu, Feb 21, 2019 7:16 AM
>
> Hi,
>
> currently I'm debating on a Vaadin FLow issue how to best create
> components in OSGi programmatically. The answer of my last question on this
> mailing list regarding this topic was to use scope=PROTOTYPE and then
> ServiceObjects<Type>#getService(). This is a solution far better than the
> approach I used before but still has some flaws, resulting in the following
> question:
>
> Is there (or is it planned to create) an API for SCR to programmatically
> create components at runtime?
>
> I think of something like the Apache Felix DependencyManager where I can
> register services but not components (with refrences and stuff).
>
> What I think of would be something like this:
>
> scr.createCmp(Class class)
>         .setActivateMethod(...)
>         .setReferenceField(...)
>         .etc...
>
> Kind regards,
> Thomas
> _______________________________________________
> OSGi Developer Mail List
> osgi-dev@mail.osgi.org
> https://mail.osgi.org/mailman/listinfo/osgi-dev
>
>
>
> _______________________________________________
> OSGi Developer Mail List
> osgi-dev@mail.osgi.org
> https://mail.osgi.org/mailman/listinfo/osgi-dev



-- 
*Raymond Augé* <http://www.liferay.com/web/raymond.auge/profile>
 (@rotty3000)
Senior Software Architect *Liferay, Inc.* <http://www.liferay.com>
 (@Liferay)
Board Member & EEG Co-Chair, OSGi Alliance <http://osgi.org> (@OSGiAlliance)
_______________________________________________
OSGi Developer Mail List
osgi-dev@mail.osgi.org
https://mail.osgi.org/mailman/listinfo/osgi-dev

Reply via email to