/bpmn2camel

BPMN2CAMEL

Primary LanguagePythonApache License 2.0Apache-2.0

POC: BPMN2CAMEL

Proof of Concept [On Progress] : BPMN2CAMEL

Motivation:

Enterprise integration pattern (EIP) is used to connect end-applications that can talk among themselves with same or different protocols. While connecting the end-applications, a work-flow is realized. These work-flow are executed by CAMEL-API in java world. CAMEL API is specizialized for realizing all possible EIPs (to connect applications)

To create such CAMEL_ROUTE, an end-user could define/design the connectivity using a UI (e.g BPMN modeler). Camunda BPMN modeler is one such modeler that comes in two forms: as desktop app or as web-app. Once the end-user models onnectivity, then this BPMN-XML generated by moderler has to be converted to CAMEL_ROUTE XML.

The CAMEL_ROUTE XML can then be fed to CAMEL API. This way, end to end-connectivity between different applications can be realized

In this repository there is a crude attempt to MAP the BPMN_XML to CAMEL_ROUTE XML.

Additonal note: As CAMEL-API is written using JAVA-API, configuring CAMEL-API module using an agnositic and programing-language independent DSL, such as CAMEL_ROUTE XML, is therefore a good approach.

The generated CAMEL_ROUTE XML can be now be fed to CAMEL-API. (This part is NOT covered in this repository and must be done using JAVA)

Summary :

a. CAMUNDA-UI-Modeler -----> BPMN-XML (Sample files for end-user to generate)

b. BPMN-XML ---------------> USING PYTHON API -----> CAMEL-DSL_XML (Covered in this repository)

c. CAMEL-DSL_XML-----------> USING JAVA API---------->CAMEL (Not covered in this repository)