Hi all,

In the latest and coming Camel versions various CamelK functionalities are
made broadly available within Camel. Exciting things like Kamelets and
Multi language DSL's.

About the last one I have some questions. In the routeloader example and
also in the blog post on version 3.9 spoken is that the routes (in Java,
xml, yaml, Kotlin, Groovy, Javascript) are loaded from a directory.

1) Is it also available to add/update routes programmatically directly from
the context or managedcontext?

For example you now can do this with XML:

ManagedCamelContext managed =
context.getExtension(ManagedCamelContext.class);
ManagedCamelContextMBean managedContext = managed.getManagedCamelContext();
managedContext.addOrUpdateRoutesFromXml(xml);

Is there away to do this generically for all DSL's? Like this:

context.addOrUpdateRoute(routeAsString,camelDSL);

Here the Camel route is presented as string and the camelDSL specify the
used DSL language (for example as an enum)

2) Is there a conversion between DSL's? The rationale is that it's easier
to migrate and learn a new DSL. For example a company has a lot of routes
in XML or Java. Now developers want to use Kotlin for example, but they are
maybe holding back because of migration and lack of documentation/examples.

p.s. the link in the 3.9 blog post points to

https://github.com/apache/camel-examples/tree/master/examples/camel-example-routeloader

instead of

https://github.com/apache/camel-examples/tree/master/examples/routeloader

Kind regards,

Raymond

Reply via email to