`
guanhuaing
  • 浏览: 1200110 次
文章分类
社区版块
存档分类
最新评论

ProcessCache

 
阅读更多

ProcessCache保存了所有的processDefinition

所有的processDefinition是在BpmnDeployer中创建的。BpmnDeployer实现了Deployer接口,用来解析bpmn20.xml为后缀的文件。
解析后生成的processDefinition保存在ProcessCache中。

整个运行环境中,只有一个ProcessCache实例,是在ProcessEngineConfiguration实例化的时候创建的。在构建流程引擎的时候,设置到CommandContextFactory中。

通常在执行每一个Command的时候,都会创建一个CommandContext实例,这个实例是CommandContextInterceptor中的execute方法通过一个commandContextFactory实例创建的,CommandContext保存commandContextFactory这个实例。因此通过CommandContext就可以使用commandContextFactory中保存的服务(commandContextFactory是两大容器之一)。CommandContext包含了commandContextFactory,也成了拥有众多服务的容器。

在大多数情况下,processCache是通过CommandContext获得的。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics