You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@camel.apache.org by "michael.olson" <mo...@cs.caltech.edu> on 2009/06/02 23:47:16 UTC

Camel 2.0+ functionality - dynamic route and endpoint creation?

I'm very interested in the Camel architecture and in what it supports.  My
only problem thus far has been in the static nature of the definitions of
the routes and components.  I am curious as to what extent Camel can handle
dynamic configuration.  I have spent quite a bit of time reviewing the
documentation for both the current version of Camel and the milestone
release for Camel 2.0, and I have been unable to find exactly what I'm
looking for.  I'm hoping that someone in the community can either steer me
to the appropriate information, or let me know that the architecture simply
can't handle what I want.

Here is the scenario.  I'd like to be able to start up a more or less
'blank' Camel instance, with only one running bean and no existing routes. 
I would like to put that bean in charge of creating other beans/endpoints
and making and changing routes between them.

So, the questions are:
- Can I programatically create and delete beans/endpoints and
create/mutate/delete routes with no prior configuration? i.e. there is zero
hardcoding of the definitions of the beans/endpoints/routes; that will all
be supplied to the sole running bean as a parameter.

If not, can anyone speculate as to the amount of work that would be required
to adapt the architecture to support this?  I'd be interested in
contributing this type of functionality to the project if it seems that it
would fit with the existing infrastructure, but if not I'll have to look for
another mechanism to implement this.

If it helps, I can elaborate further on what I'd like to implement.

Thanks in advance,
- Michael
-- 
View this message in context: http://www.nabble.com/Camel-2.0%2B-functionality---dynamic-route-and-endpoint-creation--tp23841602p23841602.html
Sent from the Camel - Users mailing list archive at Nabble.com.


Re: Camel 2.0+ functionality - dynamic route and endpoint creation?

Posted by "michael.olson" <mo...@cs.caltech.edu>.

Claus Ibsen-2 wrote:
> 
> Hi
> 
> Did my mail ever get to the user forum? I had some mail issues with my
> mails being denied that day.
> See below for answers.
> 

No, I never saw it until now, so thanks for reposting it.



Claus Ibsen-2 wrote:
> 
> On Tue, Jun 2, 2009 at 11:47 PM, michael.olson <mo...@cs.caltech.edu>
> wrote:
>>
>> I'm very interested in the Camel architecture and in what it supports.
>>  My
>> only problem thus far has been in the static nature of the definitions of
>> the routes and components.  I am curious as to what extent Camel can
>> handle
>> dynamic configuration.  I have spent quite a bit of time reviewing the
>> documentation for both the current version of Camel and the milestone
>> release for Camel 2.0, and I have been unable to find exactly what I'm
>> looking for.  I'm hoping that someone in the community can either steer
>> me
>> to the appropriate information, or let me know that the architecture
>> simply
>> can't handle what I want.
> 
> In Camel 2.0 James added the camel web-console that is a web based
> console for dynamic routing and viewing routes and the likes.
> 
> There should be a link to it on the camel wiki pages. Just use the
> google custom search bar.
> 
> And James recently replied to the Google Summer of code Project to
> improve the web console
> http://www.nabble.com/background-on-the-Web-Console-codebase-%28was-Re%3A--jira--Work-started%3A--%28CAMEL-1655%29-Groovy-Route-Editor-for-WebConsole-td23847302s22882.html
> 
> 
> Yes you can at runtime add routes etc.
> There are methods on CamelContext to do that.
> 
> You can build the routes using the model classes. That is what the DSL
> does.
> 
> And there should be a few unit tests in camel-core about mutating the
> route at runtime.
> For instance: StartAndStopRoutesTest
> 

Thanks for the answer.  I had actually found the StartAndStopRoutesTest, but
since I only found it filed in Camel Issues and not in the documentation I
wasn't sure what its status was.  I didn't find any other unit tests like
that, but I'll look around more carefully.

Regardless, that's exactly the kind of thing I'm looking for.  I'm going to
write up some code and see if I can make it do what I need.  Thanks for the
assistance.

- Michael



Claus Ibsen-2 wrote:
> 
>>
>> Here is the scenario.  I'd like to be able to start up a more or less
>> 'blank' Camel instance, with only one running bean and no existing
>> routes.
>> I would like to put that bean in charge of creating other beans/endpoints
>> and making and changing routes between them.
>>
>> So, the questions are:
>> - Can I programatically create and delete beans/endpoints and
>> create/mutate/delete routes with no prior configuration? i.e. there is
>> zero
>> hardcoding of the definitions of the beans/endpoints/routes; that will
>> all
>> be supplied to the sole running bean as a parameter.
>>
>> If not, can anyone speculate as to the amount of work that would be
>> required
>> to adapt the architecture to support this?  I'd be interested in
>> contributing this type of functionality to the project if it seems that
>> it
>> would fit with the existing infrastructure, but if not I'll have to look
>> for
>> another mechanism to implement this.
>>
>> If it helps, I can elaborate further on what I'd like to implement.
>>
>> Thanks in advance,
>> - Michael
>> --
>> View this message in context:
>> http://www.nabble.com/Camel-2.0%2B-functionality---dynamic-route-and-endpoint-creation--tp23841602p23841602.html
>> Sent from the Camel - Users mailing list archive at Nabble.com.
>>
>>
> 

-- 
View this message in context: http://www.nabble.com/Camel-2.0%2B-functionality---dynamic-route-and-endpoint-creation--tp23841602p23889377.html
Sent from the Camel - Users mailing list archive at Nabble.com.


Camel 2.0+ functionality - dynamic route and endpoint creation?

Posted by Claus Ibsen <cl...@gmail.com>.
Hi

Did my mail ever get to the user forum? I had some mail issues with my
mails being denied that day.
See below for answers.


---------- Forwarded message ----------
From: Claus Ibsen <cl...@gmail.com>
Date: Wed, Jun 3, 2009 at 10:31 AM
Subject: Re: Camel 2.0+ functionality - dynamic route and endpoint creation?
To: users@camel.apache.org


Hi

On Tue, Jun 2, 2009 at 11:47 PM, michael.olson <mo...@cs.caltech.edu> wrote:
>
> I'm very interested in the Camel architecture and in what it supports.  My
> only problem thus far has been in the static nature of the definitions of
> the routes and components.  I am curious as to what extent Camel can handle
> dynamic configuration.  I have spent quite a bit of time reviewing the
> documentation for both the current version of Camel and the milestone
> release for Camel 2.0, and I have been unable to find exactly what I'm
> looking for.  I'm hoping that someone in the community can either steer me
> to the appropriate information, or let me know that the architecture simply
> can't handle what I want.

In Camel 2.0 James added the camel web-console that is a web based
console for dynamic routing and viewing routes and the likes.

There should be a link to it on the camel wiki pages. Just use the
google custom search bar.

And James recently replied to the Google Summer of code Project to
improve the web console
http://www.nabble.com/background-on-the-Web-Console-codebase-%28was-Re%3A--jira--Work-started%3A--%28CAMEL-1655%29-Groovy-Route-Editor-for-WebConsole-td23847302s22882.html


Yes you can at runtime add routes etc.
There are methods on CamelContext to do that.

You can build the routes using the model classes. That is what the DSL does.

And there should be a few unit tests in camel-core about mutating the
route at runtime.
For instance: StartAndStopRoutesTest




>
> Here is the scenario.  I'd like to be able to start up a more or less
> 'blank' Camel instance, with only one running bean and no existing routes.
> I would like to put that bean in charge of creating other beans/endpoints
> and making and changing routes between them.
>
> So, the questions are:
> - Can I programatically create and delete beans/endpoints and
> create/mutate/delete routes with no prior configuration? i.e. there is zero
> hardcoding of the definitions of the beans/endpoints/routes; that will all
> be supplied to the sole running bean as a parameter.
>
> If not, can anyone speculate as to the amount of work that would be required
> to adapt the architecture to support this?  I'd be interested in
> contributing this type of functionality to the project if it seems that it
> would fit with the existing infrastructure, but if not I'll have to look for
> another mechanism to implement this.
>
> If it helps, I can elaborate further on what I'd like to implement.
>
> Thanks in advance,
> - Michael
> --
> View this message in context: http://www.nabble.com/Camel-2.0%2B-functionality---dynamic-route-and-endpoint-creation--tp23841602p23841602.html
> Sent from the Camel - Users mailing list archive at Nabble.com.
>
>



--
Claus Ibsen
Apache Camel Committer

Open Source Integration: http://fusesource.com
Blog: http://davsclaus.blogspot.com/
Twitter: http://twitter.com/davsclaus



-- 
Claus Ibsen
Apache Camel Committer

Open Source Integration: http://fusesource.com
Blog: http://davsclaus.blogspot.com/
Twitter: http://twitter.com/davsclaus