Hi Kishan,
some thoughts inline

On Thu, May 14, 2020 at 12:58 PM Kishan Gajjar
<[email protected]> wrote:
>    Route Management: Our usecase is to cater various kinds of orchestration
>    flows which needs to be executed on their trigger event. In Camel’s term we
>    need capability to capture the multiple routes which can be used as a
>    centralised place for managing them.

Are you aware of Hawt.io (https://hawt.io/) it's often used to provide
graphical UI to manage Camel. About your last remarks, I'm not exactly
clear what you mean by "capture", if you mean ability to run multiple
routes within one deployment -- you can have as many as you need
routes in a single Camel context, there are EIPs for routing and
splitting the payload if you need to pass them to other routes.

>    Route Versioning: Any new change in the existing Route will be
>    rolled-out in the gradual fashion, which means there will be multiple
>    versions of a route which needs to be supported and executed in A/B manner.

Your best option here is to version the artefact you deploy, if that's
a Camel route definition have two of them with different IDs. Naming
conventions come in handy.

>    Data exchange control across the processor: Camel exchanges generic data
>    across the processors, which can lead to change of data in unexpected
>    processor boundaries. To restrict the data access boundary needs a
>    type-safe way of data sharing across the processors.

If you need strong typing define a Java domain model defined and put
only objects from that domain model into the message body. If using a
Java model is not what you want you can enforce schema checks for many
common data formats.

>    Data driven routing. Camel provides the way to route control based on
>    static and dynamic across the processors. We need additional capability to
>    route processors based on the data dependency.

I'm not really clear on what you mean with data dependency, but have a
look at content based router EIP and see if that fits your use case.

>    Mapping with Json DSL: Mapping the route definition with JSON DSL. So
>    far Camel supports XML and java DSL for route definition.

I think there's an effort for a YAML based DSL, not sure if either
JSON or YAML is expressive enough to achieve fidelity you can have
with the XML and Java DSLs, the effort needed to put another DSL on
par with XML and Java DSLs is substantial and I (personally) don't see
much benefit in having one.

zoran
-- 
Zoran Regvart

Reply via email to