luigidemasi commented on issue #15: URL: https://github.com/apache/camel-kit/issues/15#issuecomment-6336775538
> Comment by [vaprea](https://github.com/vaprea) on 2026-05-04 ([original](https://github.com/luigidemasi/camel-kit/issues/19#issuecomment-4372238772)). --- @davsclaus happy to add more details on the parsing side The project is released under the [Apache 2.0 License](https://github.com/wso2/integration-bi-migration-assistant/blob/main/LICENSE.txt). It's worth being clear about what is and isn't reusable: **What's reusable: the parse and analysis stages** The parsing stage understands TIBCO project structures, both single projects and multi-module ones, and produces a clean in-memory `ParsedProject` model containing: - **processes** — from `.bwp` files (the TIBCO process flows) - **types** — from `.xsd` schema definitions - **resources** — from `.jdbcResource` and other adapter/resource descriptors The key class for the parsing side is [`XmlToTibcoModelParser`](https://github.com/wso2/integration-bi-migration-assistant/blob/main/tibco/src/main/java/tibco/parser/XmlToTibcoModelParser.java), which is the reference point for understanding how TIBCO projects are parsed into the in-memory model. The parsed model then flows into an analysis stage (`ModelAnalyser`) which runs a set of analysis passes and produces an `AnalyzedProject`. Crucially, this stage is able to **order the execution flow** of the TIBCO processes, which would be directly valuable for generating well-structured Camel routes. The analysis passes include: - **DefaultAnalysisPass** — general model analysis - **LoggingAnalysisPass** — logging-related analysis - **DependencyAnalysisPass** — dependency resolution across sub-projects (multi-root) **What's NOT reusable: everything after analysis (generate code and serialize project)** The code generation and serialization stages are tightly coupled to **Ballerina** as the output language. The code generation stage produces a `BallerinaModel` and the serialization stage emits Ballerina syntax trees — none of this is applicable here. On top of that, the project pulls in **Ballerina-specific dependencies** that would be dead weight in a Camel context. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
