org.activiti.engine.cfg

## Interface ProcessEngineConfigurator

- All Known Implementing Classes:
    AbstractProcessEngineConfigurator

      public interface ProcessEngineConfigurator

  Implementations of this class can be plugged into a `ProcessEngineConfigurationImpl`. Such implementations can configure the engine in any way programmatically possible.
  Author:
    Joram Barrez

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `beforeInit(org.activiti.engine.impl.cfg.ProcessEngineConfigurationImpl processEngineConfiguration)` Called before any initialisation has been done.
    `void` | `configure(org.activiti.engine.impl.cfg.ProcessEngineConfigurationImpl processEngineConfiguration)` Called when the engine boots up, before it is usable, but after the initialisation of internal objects is done.
    `int` | `getPriority()` When the `ProcessEngineConfigurator` instances are used, they are first ordered by this priority number (lowest to highest).

- - ### Method Detail

    - #### beforeInit

          void beforeInit(org.activiti.engine.impl.cfg.ProcessEngineConfigurationImpl processEngineConfiguration)

      Called before any initialisation has been done. This can for example be useful to change configuration settings before anything that uses those properties is created. Allows to tweak the process engine by passing the `ProcessEngineConfigurationImpl` which allows tweaking it programmatically. An example is the jdbc url. When a `ProcessEngineConfigurator` instance wants to change it, it needs to do it in this method, or otherwise the datasource would already have been created with the 'old' value for the jdbc url.

    - #### configure

          void configure(org.activiti.engine.impl.cfg.ProcessEngineConfigurationImpl processEngineConfiguration)

      Called when the engine boots up, before it is usable, but after the initialisation of internal objects is done. Allows to tweak the process engine by passing the `ProcessEngineConfigurationImpl` which allows tweaking it programmatically. An example is the ldap user/group manager, which is an addition to the engine. No default properties need to be overridden for this (otherwise the `beforeInit(ProcessEngineConfigurationImpl)` method should be used) so the logic contained in this method is executed after initialisation of the default objects. Probably a better name would be 'afterInit' (cfr `beforeInit(ProcessEngineConfigurationImpl)`), but not possible due to backwards compatibility.

    - #### getPriority

          int getPriority()

      When the `ProcessEngineConfigurator` instances are used, they are first ordered by this priority number (lowest to highest). If you have dependencies between `ProcessEngineConfigurator` instances, use the priorities accordingly to order them as needed.

Copyright © 2016 Alfresco. All rights reserved.