这个类主要作用的就是流程引擎的配置,注解@EnableConfigurationProperties({ActivitiProperties.class, AsyncExecutorProperties.class})会将在properties中的配置属性映射到对应的类的属性中去。例如常用的在application-dev.properties配置的database-schema-update,history-level,db-history-used等属性就是在这里被映射到类ActivitiProperties中去的,然后在SpringProcessEngineConfiguration springProcessEngineConfiguration()方法中添加到引擎配置类中的。
ProcessEngineAutoConfiguration中会注册很多Bean,其中有个比较重要:
SpringProcessEngineConfiguration这个Bean主要负责流程引擎的配置,将数据源和Springboot配置文件中配置的activiti7的相关属性配置到引擎中去。这个Bean被注解@ConditionalOnMissingBean修饰,意思是只有在容器中不存在SpringProcessEngineConfiguration的情况下这个Bean才会被注册,因此如果要自定义自己的引擎配置,重新定义一个SpringProcessEngineConfiguration类型的Bean即可。
ProcessEngineAutoConfiguration继承了AbstractProcessEngineAutoConfiguration,这个抽象类里面定义了几个比较重要的Bean:
ProcessEngineFa