@Test public void processEngineConfigurationImplTest() { CamundaBpmConfiguration camundaBpmConfiguration = new CamundaBpmConfiguration(); List<ProcessEnginePlugin> processEnginePlugins = createUnordedList(); ProcessEngineConfigurationImpl processEngineConfigurationImpl = camundaBpmConfiguration.processEngineConfigurationImpl(processEnginePlugins); CompositeProcessEnginePlugin compositeProcessEnginePlugin = (CompositeProcessEnginePlugin) processEngineConfigurationImpl.getProcessEnginePlugins().get(0); assertThat(compositeProcessEnginePlugin.getPlugins()).isEqualTo(processEnginePlugins); }
@Bean @ConditionalOnMissingBean(ProcessEngineConfigurationImpl.class) public ProcessEngineConfigurationImpl processEngineConfigurationImpl(List<ProcessEnginePlugin> processEnginePlugins) { final SpringProcessEngineConfiguration configuration = CamundaSpringBootUtil.springProcessEngineConfiguration(); configuration.getProcessEnginePlugins().add(new CompositeProcessEnginePlugin(processEnginePlugins)); return configuration; }
CamundaBpmConfiguration { @Bean @ConditionalOnMissingBean(ProcessEngineConfigurationImpl.class) public ProcessEngineConfigurationImpl processEngineConfigurationImpl(List<ProcessEnginePlugin> processEnginePlugins) { final SpringProcessEngineConfiguration configuration = CamundaSpringBootUtil.springProcessEngineConfiguration(); configuration.getProcessEnginePlugins().add(new CompositeProcessEnginePlugin(processEnginePlugins)); return configuration; } }
CamundaBpmConfiguration { @Bean @ConditionalOnMissingBean(ProcessEngineConfigurationImpl.class) public ProcessEngineConfigurationImpl processEngineConfigurationImpl(List<ProcessEnginePlugin> processEnginePlugins) { final SpringProcessEngineConfiguration configuration = CamundaSpringBootUtil.springProcessEngineConfiguration(); configuration.getProcessEnginePlugins().add(new CompositeProcessEnginePlugin(processEnginePlugins)); return configuration; }  }
CamundaBpmConfiguration { @Bean @ConditionalOnMissingBean(ProcessEngineConfigurationImpl.class) public ProcessEngineConfigurationImpl processEngineConfigurationImpl(List<ProcessEnginePlugin> processEnginePlugins) { final SpringProcessEngineConfiguration configuration = CamundaSpringBootUtil.springProcessEngineConfiguration(); configuration.getProcessEnginePlugins().add(new CompositeProcessEnginePlugin(processEnginePlugins)); return configuration; }  @Bean @ConditionalOnMissingBean(ProcessEngineConfigurationImpl.class) ProcessEngineConfigurationImpl processEngineConfigurationImpl(List<ProcessEnginePlugin> processEnginePlugins); @Bean @ConditionalOnMissingBean(DefaultProcessEngineConfiguration.class) static CamundaProcessEngineConfiguration camundaProcessEngineConfiguration(); @Bean @ConditionalOnMissingBean(CamundaDatasourceConfiguration.class) static CamundaDatasourceConfiguration camundaDatasourceConfiguration(); @Bean @ConditionalOnBean(name = "entityManagerFactory") @ConditionalOnMissingBean(CamundaJpaConfiguration.class) @ConditionalOnProperty(prefix = "camunda.bpm.jpa", name = "enabled", havingValue = "true", matchIfMissing = true) static CamundaJpaConfiguration camundaJpaConfiguration(); @Bean @ConditionalOnMissingBean(CamundaJobConfiguration.class) @ConditionalOnProperty(prefix = "camunda.bpm.job-execution", name = "enabled", havingValue = "true", matchIfMissing = true) static CamundaJobConfiguration camundaJobConfiguration(); @Bean @ConditionalOnMissingBean(CamundaHistoryConfiguration.class) static CamundaHistoryConfiguration camundaHistoryConfiguration(); @Bean @ConditionalOnMissingBean(CamundaMetricsConfiguration.class) static CamundaMetricsConfiguration camundaMetricsConfiguration(); @Bean(name = "historyLevelAutoConfiguration") @ConditionalOnMissingBean(CamundaHistoryLevelAutoHandlingConfiguration.class) @ConditionalOnProperty(prefix = "camunda.bpm", name = "history-level", havingValue = "auto", matchIfMissing = false) @Conditional(NeedsHistoryAutoConfigurationCondition.class) static CamundaHistoryLevelAutoHandlingConfiguration historyLevelAutoHandlingConfiguration(); @Bean(name = "historyLevelDeterminator") @ConditionalOnMissingBean(name = { "camundaBpmJdbcTemplate", "historyLevelDeterminator" }) @ConditionalOnBean(name = "historyLevelAutoConfiguration") static HistoryLevelDeterminator historyLevelDeterminator(CamundaBpmProperties camundaBpmProperties, JdbcTemplate jdbcTemplate); @Bean(name = "historyLevelDeterminator") @ConditionalOnBean(name = { "camundaBpmJdbcTemplate", "historyLevelAutoConfiguration", "historyLevelDeterminator" }) @ConditionalOnMissingBean(name = "historyLevelDeterminator") static HistoryLevelDeterminator historyLevelDeterminatorMultiDatabase(CamundaBpmProperties camundaBpmProperties,
      @Qualifier("camundaBpmJdbcTemplate") JdbcTemplate jdbcTemplate); @Bean @ConditionalOnMissingBean(CamundaAuthorizationConfiguration.class) static CamundaAuthorizationConfiguration camundaAuthorizationConfiguration(); @Bean @ConditionalOnMissingBean(CamundaDeploymentConfiguration.class) static CamundaDeploymentConfiguration camundaDeploymentConfiguration(); @Bean GenericPropertiesConfiguration genericPropertiesConfiguration(); @Bean @ConditionalOnProperty(prefix = "camunda.bpm.admin-user", name = "id") CreateAdminUserConfiguration createAdminUserConfiguration(); @Bean @ConditionalOnMissingBean(CamundaFailedJobConfiguration.class) static CamundaFailedJobConfiguration failedJobConfiguration(); @Bean @ConditionalOnProperty(prefix = "camunda.bpm.filter", name = "create") CreateFilterConfiguration createFilterConfiguration(); @Bean EventPublisherPlugin eventPublisherPlugin(CamundaBpmProperties properties, ApplicationEventPublisher publisher); @Bean CamundaIntegrationDeterminator camundaIntegrationDeterminator(); }
CamundaBpmConfiguration { @Bean @ConditionalOnMissingBean(ProcessEngineConfigurationImpl.class) public ProcessEngineConfigurationImpl processEngineConfigurationImpl(List<ProcessEnginePlugin> processEnginePlugins) { final SpringProcessEngineConfiguration configuration = CamundaSpringBootUtil.springProcessEngineConfiguration(); configuration.getProcessEnginePlugins().add(new CompositeProcessEnginePlugin(processEnginePlugins)); return configuration; }  @Bean @ConditionalOnMissingBean(ProcessEngineConfigurationImpl.class) ProcessEngineConfigurationImpl processEngineConfigurationImpl(List<ProcessEnginePlugin> processEnginePlugins); @Bean @ConditionalOnMissingBean(DefaultProcessEngineConfiguration.class) static CamundaProcessEngineConfiguration camundaProcessEngineConfiguration(); @Bean @ConditionalOnMissingBean(CamundaDatasourceConfiguration.class) static CamundaDatasourceConfiguration camundaDatasourceConfiguration(); @Bean @ConditionalOnBean(name = "entityManagerFactory") @ConditionalOnMissingBean(CamundaJpaConfiguration.class) @ConditionalOnProperty(prefix = "camunda.bpm.jpa", name = "enabled", havingValue = "true", matchIfMissing = true) static CamundaJpaConfiguration camundaJpaConfiguration(); @Bean @ConditionalOnMissingBean(CamundaJobConfiguration.class) @ConditionalOnProperty(prefix = "camunda.bpm.job-execution", name = "enabled", havingValue = "true", matchIfMissing = true) static CamundaJobConfiguration camundaJobConfiguration(); @Bean @ConditionalOnMissingBean(CamundaHistoryConfiguration.class) static CamundaHistoryConfiguration camundaHistoryConfiguration(); @Bean @ConditionalOnMissingBean(CamundaMetricsConfiguration.class) static CamundaMetricsConfiguration camundaMetricsConfiguration(); @Bean(name = "historyLevelAutoConfiguration") @ConditionalOnMissingBean(CamundaHistoryLevelAutoHandlingConfiguration.class) @ConditionalOnProperty(prefix = "camunda.bpm", name = "history-level", havingValue = "auto", matchIfMissing = false) @Conditional(NeedsHistoryAutoConfigurationCondition.class) static CamundaHistoryLevelAutoHandlingConfiguration historyLevelAutoHandlingConfiguration(); @Bean(name = "historyLevelDeterminator") @ConditionalOnMissingBean(name = { "camundaBpmJdbcTemplate", "historyLevelDeterminator" }) @ConditionalOnBean(name = "historyLevelAutoConfiguration") static HistoryLevelDeterminator historyLevelDeterminator(CamundaBpmProperties camundaBpmProperties, JdbcTemplate jdbcTemplate); @Bean(name = "historyLevelDeterminator") @ConditionalOnBean(name = { "camundaBpmJdbcTemplate", "historyLevelAutoConfiguration", "historyLevelDeterminator" }) @ConditionalOnMissingBean(name = "historyLevelDeterminator") static HistoryLevelDeterminator historyLevelDeterminatorMultiDatabase(CamundaBpmProperties camundaBpmProperties,
      @Qualifier("camundaBpmJdbcTemplate") JdbcTemplate jdbcTemplate); @Bean @ConditionalOnMissingBean(CamundaAuthorizationConfiguration.class) static CamundaAuthorizationConfiguration camundaAuthorizationConfiguration(); @Bean @ConditionalOnMissingBean(CamundaDeploymentConfiguration.class) static CamundaDeploymentConfiguration camundaDeploymentConfiguration(); @Bean GenericPropertiesConfiguration genericPropertiesConfiguration(); @Bean @ConditionalOnProperty(prefix = "camunda.bpm.admin-user", name = "id") CreateAdminUserConfiguration createAdminUserConfiguration(); @Bean @ConditionalOnMissingBean(CamundaFailedJobConfiguration.class) static CamundaFailedJobConfiguration failedJobConfiguration(); @Bean @ConditionalOnProperty(prefix = "camunda.bpm.filter", name = "create") CreateFilterConfiguration createFilterConfiguration(); @Bean EventPublisherPlugin eventPublisherPlugin(CamundaBpmProperties properties, ApplicationEventPublisher publisher); @Bean CamundaIntegrationDeterminator camundaIntegrationDeterminator();  }