activiti学习资料(ProcessEngine引用服务及其依赖关系)

ProcessEngine引用服务及其依赖关系

ProcessEngine可以对外提供四个服务:分别是ProcessService、TaskService、IdentityService和ManagementService。

这四个服务最终的执行行为都依赖于CommandExecutor这个命令执行器来完成。

CommandExecutor用来执行Command,Command是一个接口,定义了设置ProcessEngineConfiguration的setProcessEngineConfiguration()方法和执行命令的execute(Command<T> command)的方法。

由此可见,只要改变实现Command接口的类,就可以改变CommandExecutor的行为,也即改变了上述四个服务的行为。


而每次执行的Command是在执行的时候设置进去的(如果将来activiti引入Spring,同样也可以通过配置实现),因此扩展起来非常的灵活。

 

 

activiti学习资料(ProcessEngine引用服务及其依赖关系)_第1张图片

 

 

ProcessEngine对外暴露了4个服务,而ProcessEngineImpl除了实现ProcessEngine对外暴露的四个服务外,还增加了两个服务JobExecutor和PersistenceSessionFactory。在ProcessEngineImpl部分会详细说明。

而ProcessEngineConfiguration包含了18个服务,包括了上面提到的ProcessEngine用到的四个服务,在ProcessEngineConfiguration部分说明。

你可能感兴趣的:(spring,command,扩展)