文章目录
上一篇文章中,我们介绍了流程部署的整体过程。流程部署的时候,Activiti 需要先将 bpmn 对应的 XML 文件转换为对应 BpmnModel 对象,但在上一讲我们并没有详细分析这个过程。本章我们就来详细讲解 Activiti 是如何将流程文件 bpmn20.xml 转换为 BpmnModel 对象的。
一、BpmnModel 对象创建链路
流程部署的时候,在 BpmnDeployer 类的 deploy 方法中,通过如下方式会获取到 ParsedDeployment 实例对象,该对象包含了流程定义对象和 BpmnModel 对象:
// The ParsedDeployment represents the deployment, the process definitions, and the BPMN
// resource, parse, and model associated with each process definition.
// 通过 parsedDeploymentBuilderFactory 工厂的 build 方法生成 ParsedDeployment 对象,在 build 方法中,
// 会完成对 bpmn 的 xml 文件的解析,返回的 ParsedDeployment 中包含流程定义信息。
ParsedDeployment parsedDeployment =