[
https://issues.apache.org/jira/browse/CAMEL-25565?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Claus Ibsen resolved CAMEL-25565.
---------------------------------
Resolution: Fixed
> camel-jbang - route-diagram, route-structure and route-topology read Java
> source files with the Java DSL parser instead of compiling them
> -----------------------------------------------------------------------------------------------------------------------------------------
>
> Key: CAMEL-25565
> URL: https://issues.apache.org/jira/browse/CAMEL-25565
> Project: Camel
> Issue Type: Improvement
> Components: camel-jbang
> Reporter: Claus Ibsen
> Assignee: Claus Ibsen
> Priority: Minor
> Fix For: 4.24.0
>
>
> When given Java source files, {{camel cmd route-diagram}}, {{camel cmd
> route-structure}} and {{camel cmd route-topology}} (and the
> {{camel_render_route_diagram}} MCP tool) boot a short-lived Camel through
> {{Run.runTransform}}, which compiles the Java routes and dumps the route
> model as JSON. That takes seconds, needs the project's classes and
> dependencies to compile, and cannot be unit tested.
> {{camel transform route}} already reads Java routes with the Java DSL parser
> of camel-java-io and dumps them from a CamelContext that is never started
> (CAMEL-25202), and {{camel overview}} and the TUI Topology view read them the
> same way.
> h3. Proposal
> * For Java source files, read the routes with the Java DSL parser (with the
> catalog endpoint DSL resolver and the constants of the other sources in the
> folder), add them to a CamelContext that is never started, and dump the route
> structure and topology JSON with the same dump strategy. The commands then
> read that JSON as they do today.
> * A step the parser cannot work out (a lambda, a processor) stays in the
> route as its placeholder, as in {{camel overview}}; the parts it could not
> read are listed, so a partial diagram says so.
> * Add a {{--compile}} option to compile and boot the routes as before.
> * YAML and XML sources are unchanged.
> * Correct the {{camel_render_route_diagram}} tool description to say how Java
> routes are read.
> _Created by Claude Code on behalf of davsclaus_
--
This message was sent by Atlassian Jira
(v8.20.10#820010)