You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@karaf.apache.org by Matthias Leinweber <m....@datatactics.de> on 2020/06/04 12:06:17 UTC

Programatically (Camel) Blueprint

Hello People,

actually I try to programmatically deploy a (Camel) Blueprint. E.g. Create
something with a String. After reading source of aries, camel and
felix.fileinstall my only idea is to dynamically create bundles the way
felix file install is handling this problem.
Is there anything easier/less complicated?

best regards,
Matthias

Re: Programatically (Camel) Blueprint

Posted by Jean-Baptiste Onofre <jb...@nanthrax.net>.
Hi,

I don’t talk about a full Camel DSL, but more from creating the RouteBuilder from your canonical format.

I did that for some customers.

For instance, their routes were describe with a file like deploy/my.route containing:

route.source=key
route.phaseIn=…
route.phaseOut=…
route.target=…

The use case was kind of API Gateway. I created a artifact installer and I created the RouteBuilder "on the fly" based on this description.

Regards
JB

> Le 15 juin 2020 à 16:24, Matthias Leinweber <m....@datatactics.de> a écrit :
> 
> Hi,
> 
> i'm still (again) on this topic. Maybe you misunderstood that i plan to configure camelcontext during runtime from a central configuration and or user interface.
> With your own RouteBuilder you mean creating my own dsl and somehow extending org.apache.camel.builder.RouteBuilder?
> Is this not a bit too much effort and for what reason the camel dsl/blueprints exists?
> I think I will basically do the same like Artifact transformer does and create and install a bundle. So it's a bit easier to track the bundle state instead of writing a file to the deploy folder.
> 
> 
> best regards,
> Matthias
> 
> Am Do., 4. Juni 2020 um 15:49 Uhr schrieb Jean-Baptiste Onofre <jb@nanthrax.net <ma...@nanthrax.net>>:
> You can do kind of your own RouteBuilder.
> 
>> Le 4 juin 2020 à 15:15, Matthias Leinweber <m.leinweber@datatactics.de <ma...@datatactics.de>> a écrit :
>> 
>> Somehow dirty, but easy. Maybe the best solution. :)
>> 
>> Am Do., 4. Juni 2020 um 14:56 Uhr schrieb Jean-Baptiste Onofre <jb@nanthrax.net <ma...@nanthrax.net>>:
>> Why not having a service creating blueprint file in deploy folder ?
>> 
>> That’s probably the easiest in your case.
>> 
>> Regards
>> JB
>> 
>>> Le 4 juin 2020 à 14:54, Matthias Leinweber <m.leinweber@datatactics.de <ma...@datatactics.de>> a écrit :
>>> 
>>> Thank you for your quick reply JB,
>>> 
>>> Yeah my plan was a bit more generic. Which service or class would be a good starting point for "bootstrapping". BlueprintContainerImpl is not so easy to understand (at least for me).
>>> 
>>> best regards
>>> 
>>> Am Do., 4. Juni 2020 um 14:14 Uhr schrieb Jean-Baptiste Onofre <jb@nanthrax.net <ma...@nanthrax.net>>:
>>> Hi Matthias,
>>> 
>>> If the "source" is a file, then, you can create an FileInstall ArtifactInstaller service.
>>> If you want something more generic, it’s easy to create a service taking the string and bootstrapping the blueprint.
>>> 
>>> Regards
>>> JB
>>> 
>>> > Le 4 juin 2020 à 14:06, Matthias Leinweber <m.leinweber@datatactics.de <ma...@datatactics.de>> a écrit :
>>> > 
>>> > Hello People,
>>> > 
>>> > actually I try to programmatically deploy a (Camel) Blueprint. E.g. Create something with a String. After reading source of aries, camel and felix.fileinstall my only idea is to dynamically create bundles the way felix file install is handling this problem.
>>> > Is there anything easier/less complicated?
>>> > 
>>> > best regards,
>>> > Matthias
>>> 
>>> 
>> 
>> 
> 
> 
> 
> 


Re: Programatically (Camel) Blueprint

Posted by Matthias Leinweber <m....@datatactics.de>.
Hi,

i'm still (again) on this topic. Maybe you misunderstood that i plan to
configure camelcontext during runtime from a central configuration and or
user interface.
With your own RouteBuilder you mean creating my own dsl and somehow
extending org.apache.camel.builder.RouteBuilder?
Is this not a bit too much effort and for what reason the camel
dsl/blueprints exists?
I think I will basically do the same like Artifact transformer does and
create and install a bundle. So it's a bit easier to track the bundle state
instead of writing a file to the deploy folder.


best regards,
Matthias

Am Do., 4. Juni 2020 um 15:49 Uhr schrieb Jean-Baptiste Onofre <
jb@nanthrax.net>:

> You can do kind of your own RouteBuilder.
>
> Le 4 juin 2020 à 15:15, Matthias Leinweber <m....@datatactics.de> a
> écrit :
>
> Somehow dirty, but easy. Maybe the best solution. :)
>
> Am Do., 4. Juni 2020 um 14:56 Uhr schrieb Jean-Baptiste Onofre <
> jb@nanthrax.net>:
>
>> Why not having a service creating blueprint file in deploy folder ?
>>
>> That’s probably the easiest in your case.
>>
>> Regards
>> JB
>>
>> Le 4 juin 2020 à 14:54, Matthias Leinweber <m....@datatactics.de>
>> a écrit :
>>
>> Thank you for your quick reply JB,
>>
>> Yeah my plan was a bit more generic. Which service or class would be a
>> good starting point for "bootstrapping". BlueprintContainerImpl is not so
>> easy to understand (at least for me).
>>
>> best regards
>>
>> Am Do., 4. Juni 2020 um 14:14 Uhr schrieb Jean-Baptiste Onofre <
>> jb@nanthrax.net>:
>>
>>> Hi Matthias,
>>>
>>> If the "source" is a file, then, you can create an FileInstall
>>> ArtifactInstaller service.
>>> If you want something more generic, it’s easy to create a service taking
>>> the string and bootstrapping the blueprint.
>>>
>>> Regards
>>> JB
>>>
>>> > Le 4 juin 2020 à 14:06, Matthias Leinweber <m....@datatactics.de>
>>> a écrit :
>>> >
>>> > Hello People,
>>> >
>>> > actually I try to programmatically deploy a (Camel) Blueprint. E.g.
>>> Create something with a String. After reading source of aries, camel and
>>> felix.fileinstall my only idea is to dynamically create bundles the way
>>> felix file install is handling this problem.
>>> > Is there anything easier/less complicated?
>>> >
>>> > best regards,
>>> > Matthias
>>>
>>>
>>
>>
>
>

Re: Programatically (Camel) Blueprint

Posted by Jean-Baptiste Onofre <jb...@nanthrax.net>.
You can do kind of your own RouteBuilder.

> Le 4 juin 2020 à 15:15, Matthias Leinweber <m....@datatactics.de> a écrit :
> 
> Somehow dirty, but easy. Maybe the best solution. :)
> 
> Am Do., 4. Juni 2020 um 14:56 Uhr schrieb Jean-Baptiste Onofre <jb@nanthrax.net <ma...@nanthrax.net>>:
> Why not having a service creating blueprint file in deploy folder ?
> 
> That’s probably the easiest in your case.
> 
> Regards
> JB
> 
>> Le 4 juin 2020 à 14:54, Matthias Leinweber <m.leinweber@datatactics.de <ma...@datatactics.de>> a écrit :
>> 
>> Thank you for your quick reply JB,
>> 
>> Yeah my plan was a bit more generic. Which service or class would be a good starting point for "bootstrapping". BlueprintContainerImpl is not so easy to understand (at least for me).
>> 
>> best regards
>> 
>> Am Do., 4. Juni 2020 um 14:14 Uhr schrieb Jean-Baptiste Onofre <jb@nanthrax.net <ma...@nanthrax.net>>:
>> Hi Matthias,
>> 
>> If the "source" is a file, then, you can create an FileInstall ArtifactInstaller service.
>> If you want something more generic, it’s easy to create a service taking the string and bootstrapping the blueprint.
>> 
>> Regards
>> JB
>> 
>> > Le 4 juin 2020 à 14:06, Matthias Leinweber <m.leinweber@datatactics.de <ma...@datatactics.de>> a écrit :
>> > 
>> > Hello People,
>> > 
>> > actually I try to programmatically deploy a (Camel) Blueprint. E.g. Create something with a String. After reading source of aries, camel and felix.fileinstall my only idea is to dynamically create bundles the way felix file install is handling this problem.
>> > Is there anything easier/less complicated?
>> > 
>> > best regards,
>> > Matthias
>> 
>> 
>> 
>> Postanschrift: Grabenheckerstraße 9, 35232 Dautphetal
>> 
> 
> 
> 
> -- 
> Matthias Leinweber - Data Tactics
> 
> Telefon: +49 176 810 24580
> E-Mail: m.leinweber@datatactics.de <ma...@datatactics.de>
> Internet: http://www.datatactics.de <http://www.datatactics.de/>
> Postanschrift: Grabenheckerstraße 9, 35232 Dautphetal
> 


Re: Programatically (Camel) Blueprint

Posted by Jean-Baptiste Onofre <jb...@nanthrax.net>.
Personally I won’t use blueprint for that: directly creating Camel model (not via a DSL).
It’s basically what camel-blueprint is doing ;)

Regards
JB

> Le 4 juin 2020 à 15:15, Matthias Leinweber <m....@datatactics.de> a écrit :
> 
> Somehow dirty, but easy. Maybe the best solution. :)
> 
> Am Do., 4. Juni 2020 um 14:56 Uhr schrieb Jean-Baptiste Onofre <jb@nanthrax.net <ma...@nanthrax.net>>:
> Why not having a service creating blueprint file in deploy folder ?
> 
> That’s probably the easiest in your case.
> 
> Regards
> JB
> 
>> Le 4 juin 2020 à 14:54, Matthias Leinweber <m.leinweber@datatactics.de <ma...@datatactics.de>> a écrit :
>> 
>> Thank you for your quick reply JB,
>> 
>> Yeah my plan was a bit more generic. Which service or class would be a good starting point for "bootstrapping". BlueprintContainerImpl is not so easy to understand (at least for me).
>> 
>> best regards
>> 
>> Am Do., 4. Juni 2020 um 14:14 Uhr schrieb Jean-Baptiste Onofre <jb@nanthrax.net <ma...@nanthrax.net>>:
>> Hi Matthias,
>> 
>> If the "source" is a file, then, you can create an FileInstall ArtifactInstaller service.
>> If you want something more generic, it’s easy to create a service taking the string and bootstrapping the blueprint.
>> 
>> Regards
>> JB
>> 
>> > Le 4 juin 2020 à 14:06, Matthias Leinweber <m.leinweber@datatactics.de <ma...@datatactics.de>> a écrit :
>> > 
>> > Hello People,
>> > 
>> > actually I try to programmatically deploy a (Camel) Blueprint. E.g. Create something with a String. After reading source of aries, camel and felix.fileinstall my only idea is to dynamically create bundles the way felix file install is handling this problem.
>> > Is there anything easier/less complicated?
>> > 
>> > best regards,
>> > Matthias
>> 
>> 
>> 
>> Postanschrift: Grabenheckerstraße 9, 35232 Dautphetal
>> 
> 
> 
> 
> -- 
> Matthias Leinweber - Data Tactics
> 
> Telefon: +49 176 810 24580
> E-Mail: m.leinweber@datatactics.de <ma...@datatactics.de>
> Internet: http://www.datatactics.de <http://www.datatactics.de/>
> Postanschrift: Grabenheckerstraße 9, 35232 Dautphetal
> 


Re: Programatically (Camel) Blueprint

Posted by Matthias Leinweber <m....@datatactics.de>.
Somehow dirty, but easy. Maybe the best solution. :)

Am Do., 4. Juni 2020 um 14:56 Uhr schrieb Jean-Baptiste Onofre <
jb@nanthrax.net>:

> Why not having a service creating blueprint file in deploy folder ?
>
> That’s probably the easiest in your case.
>
> Regards
> JB
>
> Le 4 juin 2020 à 14:54, Matthias Leinweber <m....@datatactics.de> a
> écrit :
>
> Thank you for your quick reply JB,
>
> Yeah my plan was a bit more generic. Which service or class would be a
> good starting point for "bootstrapping". BlueprintContainerImpl is not so
> easy to understand (at least for me).
>
> best regards
>
> Am Do., 4. Juni 2020 um 14:14 Uhr schrieb Jean-Baptiste Onofre <
> jb@nanthrax.net>:
>
>> Hi Matthias,
>>
>> If the "source" is a file, then, you can create an FileInstall
>> ArtifactInstaller service.
>> If you want something more generic, it’s easy to create a service taking
>> the string and bootstrapping the blueprint.
>>
>> Regards
>> JB
>>
>> > Le 4 juin 2020 à 14:06, Matthias Leinweber <m....@datatactics.de>
>> a écrit :
>> >
>> > Hello People,
>> >
>> > actually I try to programmatically deploy a (Camel) Blueprint. E.g.
>> Create something with a String. After reading source of aries, camel and
>> felix.fileinstall my only idea is to dynamically create bundles the way
>> felix file install is handling this problem.
>> > Is there anything easier/less complicated?
>> >
>> > best regards,
>> > Matthias
>>
>>
>
> Postanschrift: Grabenheckerstraße 9, 35232 Dautphetal
>
>
>

-- 

Matthias Leinweber - Data Tactics

Telefon: +49 176 810 24580
E-Mail: m.leinweber@datatactics.de
Internet: http://www.datatactics.de
Postanschrift: Grabenheckerstraße 9, 35232 Dautphetal

Re: Programatically (Camel) Blueprint

Posted by Jean-Baptiste Onofre <jb...@nanthrax.net>.
Why not having a service creating blueprint file in deploy folder ?

That’s probably the easiest in your case.

Regards
JB

> Le 4 juin 2020 à 14:54, Matthias Leinweber <m....@datatactics.de> a écrit :
> 
> Thank you for your quick reply JB,
> 
> Yeah my plan was a bit more generic. Which service or class would be a good starting point for "bootstrapping". BlueprintContainerImpl is not so easy to understand (at least for me).
> 
> best regards
> 
> Am Do., 4. Juni 2020 um 14:14 Uhr schrieb Jean-Baptiste Onofre <jb@nanthrax.net <ma...@nanthrax.net>>:
> Hi Matthias,
> 
> If the "source" is a file, then, you can create an FileInstall ArtifactInstaller service.
> If you want something more generic, it’s easy to create a service taking the string and bootstrapping the blueprint.
> 
> Regards
> JB
> 
> > Le 4 juin 2020 à 14:06, Matthias Leinweber <m.leinweber@datatactics.de <ma...@datatactics.de>> a écrit :
> > 
> > Hello People,
> > 
> > actually I try to programmatically deploy a (Camel) Blueprint. E.g. Create something with a String. After reading source of aries, camel and felix.fileinstall my only idea is to dynamically create bundles the way felix file install is handling this problem.
> > Is there anything easier/less complicated?
> > 
> > best regards,
> > Matthias
> 
> 
> 
> Postanschrift: Grabenheckerstraße 9, 35232 Dautphetal
> 


Re: Programatically (Camel) Blueprint

Posted by Matthias Leinweber <m....@datatactics.de>.
Thank you for your quick reply JB,

Yeah my plan was a bit more generic. Which service or class would be a good
starting point for "bootstrapping". BlueprintContainerImpl is not so easy
to understand (at least for me).

best regards

Am Do., 4. Juni 2020 um 14:14 Uhr schrieb Jean-Baptiste Onofre <
jb@nanthrax.net>:

> Hi Matthias,
>
> If the "source" is a file, then, you can create an FileInstall
> ArtifactInstaller service.
> If you want something more generic, it’s easy to create a service taking
> the string and bootstrapping the blueprint.
>
> Regards
> JB
>
> > Le 4 juin 2020 à 14:06, Matthias Leinweber <m....@datatactics.de>
> a écrit :
> >
> > Hello People,
> >
> > actually I try to programmatically deploy a (Camel) Blueprint. E.g.
> Create something with a String. After reading source of aries, camel and
> felix.fileinstall my only idea is to dynamically create bundles the way
> felix file install is handling this problem.
> > Is there anything easier/less complicated?
> >
> > best regards,
> > Matthias
>
>

Postanschrift: Grabenheckerstraße 9, 35232 Dautphetal

Re: Programatically (Camel) Blueprint

Posted by Jean-Baptiste Onofre <jb...@nanthrax.net>.
Hi Matthias,

If the "source" is a file, then, you can create an FileInstall ArtifactInstaller service.
If you want something more generic, it’s easy to create a service taking the string and bootstrapping the blueprint.

Regards
JB

> Le 4 juin 2020 à 14:06, Matthias Leinweber <m....@datatactics.de> a écrit :
> 
> Hello People,
> 
> actually I try to programmatically deploy a (Camel) Blueprint. E.g. Create something with a String. After reading source of aries, camel and felix.fileinstall my only idea is to dynamically create bundles the way felix file install is handling this problem.
> Is there anything easier/less complicated?
> 
> best regards,
> Matthias