Package com.flowable.policy.engine
Class PolicyEngineConfiguration
- java.lang.Object
-
- org.flowable.common.engine.impl.AbstractEngineConfiguration
-
- com.flowable.policy.engine.PolicyEngineConfiguration
-
- All Implemented Interfaces:
PolicyEngineConfigurationApi
,SpringEngineConfiguration
,Aware
,ApplicationContextAware
,Lifecycle
,Phased
,SmartLifecycle
public class PolicyEngineConfiguration extends AbstractEngineConfiguration implements SpringEngineConfiguration, PolicyEngineConfigurationApi
-
-
Field Summary
-
Fields inherited from class org.flowable.common.engine.impl.AbstractEngineConfiguration
additionalEventDispatchActions, agendaOperationRunner, allConfigurators, alwaysLookupLatestDefinitionVersion, beans, byteArrayDataManager, byteArrayEntityManager, classLoader, clock, commandContextFactory, commandExecutor, commandInterceptors, commandInvoker, commonSchemaManager, configurators, customMybatisInterceptors, customMybatisMappers, customMybatisXMLMappers, customPostCommandInterceptors, customPostDeployers, customPreCommandInterceptors, customPreDeployers, customSessionFactories, DATABASE_TYPE_COCKROACHDB, DATABASE_TYPE_DB2, DATABASE_TYPE_H2, DATABASE_TYPE_HSQL, DATABASE_TYPE_MSSQL, DATABASE_TYPE_MYSQL, DATABASE_TYPE_ORACLE, DATABASE_TYPE_POSTGRES, databaseCatalog, databaseSchema, databaseSchemaUpdate, databaseTablePrefix, databaseType, databaseTypeMappings, databaseWildcardEscapeCharacter, dataSource, dataSourceJndiName, DB_SCHEMA_UPDATE_CREATE, DB_SCHEMA_UPDATE_CREATE_DROP, DB_SCHEMA_UPDATE_DROP_CREATE, DB_SCHEMA_UPDATE_FALSE, DB_SCHEMA_UPDATE_TRUE, dbSqlSessionFactory, DEFAULT_GENERIC_MAX_LENGTH_STRING, DEFAULT_MAX_NR_OF_STATEMENTS_BULK_INSERT_SQL_SERVER, DEFAULT_ORACLE_MAX_LENGTH_STRING, defaultCommandConfig, defaultCommandInterceptors, defaultTenantProvider, dependentEngineMybatisTypeAliasConfigs, dependentEngineMybatisTypeHandlerConfigs, dependentEngineMyBatisXmlMappers, deployers, enableConfiguratorServiceLoader, enableEventDispatcher, enableLogSqlExecutionTime, engineConfigurations, engineLifecycleListeners, eventDispatcher, eventListeners, eventRegistryConfigurator, eventRegistryEventConsumers, fallbackToDefaultTenant, forceCloseMybatisConnectionPool, idGenerator, idmEngineConfigurator, isBulkInsertEnabled, isDbHistoryUsed, jdbcDefaultTransactionIsolationLevel, jdbcDriver, jdbcMaxActiveConnections, jdbcMaxCheckoutTime, jdbcMaxIdleConnections, jdbcMaxWaitTime, jdbcPassword, jdbcPingConnectionNotUsedFor, jdbcPingEnabled, jdbcPingQuery, jdbcUrl, jdbcUsername, lockPollRate, logger, loggingListener, maxLengthStringVariableType, maxNrOfStatementsInBulkInsert, mybatisMappingFile, NO_TENANT_ID, objectMapper, PRODUCT_NAME_CRDB, PRODUCT_NAME_POSTGRES, propertyDataManager, propertyEntityManager, schemaCommandConfig, schemaLockWaitTime, schemaManagementCmd, schemaManager, serviceConfigurations, sessionFactories, sqlSessionFactory, tableDataManager, tablePrefixIsSchema, transactionContextFactory, transactionFactory, transactionsExternallyManaged, typedEventListeners, useClassForNameClassLoading, useLockForDatabaseSchemaUpdate, usePrefixId, usingRelationalDatabase, usingSchemaMgmt, xmlEncoding
-
Fields inherited from interface org.springframework.context.SmartLifecycle
DEFAULT_PHASE
-
Fields inherited from interface org.flowable.common.spring.SpringEngineConfiguration
PHASE, PHASE_DELTA
-
-
Constructor Summary
Constructors Constructor Description PolicyEngineConfiguration()
-
Method Summary
-
Methods inherited from class org.flowable.common.engine.impl.AbstractEngineConfiguration
addConfigurator, addCustomSessionFactory, addEngineConfiguration, addEngineLifecycleListener, addEventRegistryEventConsumer, addServiceConfiguration, addSessionFactory, close, configuratorsAfterInit, configuratorsBeforeInit, createDbSqlSessionFactory, defaultInitDbSqlSessionFactoryEntitySettings, getAdditionalDefaultCommandInterceptors, getAdditionalEventDispatchActions, getAgendaOperationRunner, getAllConfigurators, getBeans, getByteArrayDataManager, getByteArrayEntityManager, getClassLoader, getClock, getCommandContextFactory, getCommandExecutor, getCommandInterceptors, getCommandInvoker, getCommonSchemaManager, getConfigurators, getCustomMybatisInterceptors, getCustomMybatisMappers, getCustomMybatisXMLMappers, getCustomPostCommandInterceptors, getCustomPostDeployers, getCustomPreCommandInterceptors, getCustomPreDeployers, getCustomSessionFactories, getDatabaseCatalog, getDatabaseSchema, getDatabaseSchemaUpdate, getDatabaseTablePrefix, getDatabaseType, getDatabaseWildcardEscapeCharacter, getDataSource, getDataSourceJndiName, getDbSqlSessionFactory, getDefaultCommandConfig, getDefaultCommandInterceptors, getDefaultDatabaseTypeMappings, getDefaultTenantProvider, getDefaultTenantValue, getDependentEngineMybatisTypeAliasConfigs, getDependentEngineMybatisTypeHandlerConfigs, getDependentEngineMyBatisXmlMappers, getDeployers, getEngineConfigurations, getEngineLifecycleListeners, getEngineSpecificEngineConfigurators, getEventDispatcher, getEventListeners, getEventRegistryConfigurator, getEventRegistryEventConsumers, getIdGenerator, getIdmEngineConfigurator, getJdbcDefaultTransactionIsolationLevel, getJdbcDriver, getJdbcMaxActiveConnections, getJdbcMaxCheckoutTime, getJdbcMaxIdleConnections, getJdbcMaxWaitTime, getJdbcPassword, getJdbcPingConnectionNotUsedFor, getJdbcPingQuery, getJdbcUrl, getJdbcUsername, getLockManager, getLockPollRate, getLoggingListener, getMaxLengthString, getMaxLengthStringVariableType, getMaxNrOfStatementsInBulkInsert, getMybatisMappingFile, getObjectMapper, getPropertyDataManager, getPropertyEntityManager, getResourceAsStream, getSchemaCommandConfig, getSchemaLockWaitTime, getSchemaManagementCmd, getSchemaManager, getServiceConfigurations, getSessionFactories, getSqlSessionFactory, getTableDataManager, getTransactionContextFactory, getTransactionFactory, getTypedEventListeners, getXmlEncoding, initAdditionalEventDispatchActions, initBeans, initClock, initCommandContextFactory, initCommandExecutor, initCommandExecutors, initCommandInterceptors, initCommandInvoker, initConfigurators, initCustomMybatisInterceptors, initCustomMybatisMappers, initDatabaseType, initDataSource, initDbSqlSessionFactory, initEngineConfigurations, initEventDispatcher, initEventListeners, initIdGenerator, initInterceptorChain, initMybatisConfiguration, initMyBatisLogSqlExecutionTimePlugin, initMybatisTypeHandlers, initObjectMapper, initSchemaCommandConfig, initService, initSessionFactories, initSqlSessionFactory, initTransactionFactory, initTypedEventListeners, isAlwaysLookupLatestDefinitionVersion, isBulkInsertEnabled, isDbHistoryUsed, isEnableConfiguratorServiceLoader, isEnableEventDispatcher, isEnableLogSqlExecutionTime, isFallbackToDefaultTenant, isForceCloseMybatisConnectionPool, isJdbcPingEnabled, isLoggingSessionEnabled, isTablePrefixIsSchema, isTransactionsExternallyManaged, isUseClassForNameClassLoading, isUseLockForDatabaseSchemaUpdate, isUsePrefixId, isUsingRelationalDatabase, isUsingSchemaMgmt, parseCustomMybatisXMLMappers, parseDependentEngineMybatisXMLMappers, parseMybatisConfiguration, parseMybatisXmlMapping, pathToEngineDbProperties, setAdditionalEventDispatchActions, setAgendaOperationRunner, setAlwaysLookupLatestDefinitionVersion, setBeans, setBulkInsertEnabled, setByteArrayDataManager, setByteArrayEntityManager, setClassLoader, setClock, setCommandContextFactory, setCommandExecutor, setCommandInterceptors, setCommandInvoker, setCommonSchemaManager, setConfigurators, setCustomMybatisInterceptors, setCustomMybatisMappers, setCustomMybatisXMLMappers, setCustomPostCommandInterceptors, setCustomPostDeployers, setCustomPreCommandInterceptors, setCustomPreDeployers, setCustomSessionFactories, setDatabaseCatalog, setDatabaseSchema, setDatabaseSchemaUpdate, setDatabaseTablePrefix, setDatabaseType, setDatabaseWildcardEscapeCharacter, setDataSourceJndiName, setDbHistoryUsed, setDbSqlSessionFactory, setDefaultCommandConfig, setDefaultCommandInterceptors, setDefaultTenantProvider, setDefaultTenantValue, setDependentEngineMybatisTypeAliasConfigs, setDependentEngineMybatisTypeHandlerConfigs, setDependentEngineMyBatisXmlMappers, setDeployers, setEnableConfiguratorServiceLoader, setEnableEventDispatcher, setEnableLogSqlExecutionTime, setEngineConfigurations, setEngineLifecycleListeners, setEventDispatcher, setEventListeners, setEventRegistryConfigurator, setEventRegistryEventConsumers, setFallbackToDefaultTenant, setForceCloseMybatisConnectionPool, setIdGenerator, setIdmEngineConfigurator, setJdbcDefaultTransactionIsolationLevel, setJdbcDriver, setJdbcMaxActiveConnections, setJdbcMaxCheckoutTime, setJdbcMaxIdleConnections, setJdbcMaxWaitTime, setJdbcPassword, setJdbcPingConnectionNotUsedFor, setJdbcPingEnabled, setJdbcPingQuery, setJdbcUrl, setJdbcUsername, setLockPollRate, setLoggingListener, setMaxLengthStringVariableType, setMaxNrOfStatementsInBulkInsert, setMybatisMappingFile, setObjectMapper, setPropertyDataManager, setPropertyEntityManager, setSchemaCommandConfig, setSchemaLockWaitTime, setSchemaManagementCmd, setSchemaManager, setServiceConfigurations, setSessionFactories, setSqlSessionFactory, setTableDataManager, setTablePrefixIsSchema, setTransactionContextFactory, setTransactionFactory, setTransactionsExternallyManaged, setTypedEventListeners, setUseClassForNameClassLoading, setUseLockForDatabaseSchemaUpdate, setUsePrefixId, setUsingRelationalDatabase, setUsingSchemaMgmt, setXmlEncoding
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.flowable.common.spring.SpringEngineConfiguration
getBeans, isAutoStartup, stop
-
-
-
-
Field Detail
-
DEFAULT_MYBATIS_MAPPING_FILE
public static final String DEFAULT_MYBATIS_MAPPING_FILE
- See Also:
- Constant Field Values
-
DEFAULT_ENGINE_NAME
public static final String DEFAULT_ENGINE_NAME
- See Also:
- Constant Field Values
-
KEY_POLICY_ENGINE_CONFIG
public static final String KEY_POLICY_ENGINE_CONFIG
- See Also:
- Constant Field Values
-
LIQUIBASE_CHANGELOG_PREFIX
public static final String LIQUIBASE_CHANGELOG_PREFIX
- See Also:
- Constant Field Values
-
policyEngineName
protected String policyEngineName
-
policyRepositoryService
protected PolicyRepositoryService policyRepositoryService
-
dataManagers
protected final PolicyDataManagers dataManagers
-
entityManagers
protected final PolicyEntityManagers entityManagers
-
transactionManager
protected PlatformTransactionManager transactionManager
-
transactionSynchronizationAdapterOrder
protected Integer transactionSynchronizationAdapterOrder
-
applicationContext
protected ApplicationContext applicationContext
-
running
protected volatile boolean running
-
policyDefinitionDeployer
protected PolicyDefinitionDeployer policyDefinitionDeployer
-
deploymentManager
protected PolicyDeploymentManager deploymentManager
-
policyResourceConverter
protected PolicyResourceConverter policyResourceConverter
-
policyDefinitionCacheLimit
protected int policyDefinitionCacheLimit
-
policyDefinitionCache
protected DeploymentCache<PolicyDefinitionCacheEntry> policyDefinitionCache
-
deploymentName
protected String deploymentName
-
deploymentResources
protected Resource[] deploymentResources
-
deploymentMode
protected String deploymentMode
-
lifeCycleMonitor
protected final Object lifeCycleMonitor
-
history
protected String history
-
historyLevel
protected HistoryLevel historyLevel
-
-
Method Detail
-
getEngineCfgKey
public String getEngineCfgKey()
- Specified by:
getEngineCfgKey
in classAbstractEngineConfiguration
-
getEngineScopeType
public String getEngineScopeType()
- Specified by:
getEngineScopeType
in classAbstractEngineConfiguration
-
createTransactionInterceptor
public CommandInterceptor createTransactionInterceptor()
- Specified by:
createTransactionInterceptor
in classAbstractEngineConfiguration
-
initDbSqlSessionFactoryEntitySettings
protected void initDbSqlSessionFactoryEntitySettings()
- Specified by:
initDbSqlSessionFactoryEntitySettings
in classAbstractEngineConfiguration
-
getMyBatisXmlConfigurationStream
public InputStream getMyBatisXmlConfigurationStream()
- Specified by:
getMyBatisXmlConfigurationStream
in classAbstractEngineConfiguration
-
getEngineName
public String getEngineName()
- Specified by:
getEngineName
in classAbstractEngineConfiguration
-
setTransactionSynchronizationAdapterOrder
public void setTransactionSynchronizationAdapterOrder(Integer transactionSynchronizationAdapterOrder)
-
getDataManagers
public PolicyDataManagers getDataManagers()
-
getEntityManagers
public PolicyEntityManagers getEntityManagers()
-
setDataSource
public PolicyEngineConfiguration setDataSource(DataSource dataSource)
- Overrides:
setDataSource
in classAbstractEngineConfiguration
-
buildActionEngine
public PolicyEngine buildActionEngine()
-
init
protected void init()
-
initServices
protected void initServices()
-
initTransactionContextFactory
public void initTransactionContextFactory()
- Overrides:
initTransactionContextFactory
in classAbstractEngineConfiguration
-
initDefaultCommandConfig
public void initDefaultCommandConfig()
- Overrides:
initDefaultCommandConfig
in classAbstractEngineConfiguration
-
initDataManagers
public void initDataManagers()
- Overrides:
initDataManagers
in classAbstractEngineConfiguration
-
initEntityManagers
public void initEntityManagers()
- Overrides:
initEntityManagers
in classAbstractEngineConfiguration
-
initHistoryLevel
public void initHistoryLevel()
-
initSchemaManager
public void initSchemaManager()
- Overrides:
initSchemaManager
in classAbstractEngineConfiguration
-
initSchemaManagementCommand
public void initSchemaManagementCommand()
-
initDeployers
protected void initDeployers()
-
getDefaultDeployers
public Collection<? extends EngineDeployer> getDefaultDeployers()
-
initPolicyDefinitionCache
protected void initPolicyDefinitionCache()
-
initPolicyResourceConverter
protected void initPolicyResourceConverter()
-
initDeploymentManager
protected void initDeploymentManager()
-
getTransactionManager
public PlatformTransactionManager getTransactionManager()
- Specified by:
getTransactionManager
in interfaceSpringEngineConfiguration
-
setTransactionManager
public void setTransactionManager(PlatformTransactionManager transactionManager)
- Specified by:
setTransactionManager
in interfaceSpringEngineConfiguration
-
getDeploymentName
public String getDeploymentName()
- Specified by:
getDeploymentName
in interfaceSpringEngineConfiguration
-
setDeploymentName
public void setDeploymentName(String deploymentName)
- Specified by:
setDeploymentName
in interfaceSpringEngineConfiguration
-
getDeploymentResources
public Resource[] getDeploymentResources()
- Specified by:
getDeploymentResources
in interfaceSpringEngineConfiguration
-
setDeploymentResources
public void setDeploymentResources(Resource[] deploymentResources)
- Specified by:
setDeploymentResources
in interfaceSpringEngineConfiguration
-
getApplicationContext
public ApplicationContext getApplicationContext()
- Specified by:
getApplicationContext
in interfaceSpringEngineConfiguration
-
setApplicationContext
public void setApplicationContext(ApplicationContext applicationContext)
- Specified by:
setApplicationContext
in interfaceApplicationContextAware
- Specified by:
setApplicationContext
in interfaceSpringEngineConfiguration
-
getDeploymentMode
public String getDeploymentMode()
- Specified by:
getDeploymentMode
in interfaceSpringEngineConfiguration
-
setDeploymentMode
public void setDeploymentMode(String deploymentMode)
- Specified by:
setDeploymentMode
in interfaceSpringEngineConfiguration
-
getPolicyEngineName
public String getPolicyEngineName()
-
setPolicyEngineName
public void setPolicyEngineName(String policyEngineName)
-
getPolicyDefinitionDeployer
public PolicyDefinitionDeployer getPolicyDefinitionDeployer()
-
setPolicyDefinitionDeployer
public void setPolicyDefinitionDeployer(PolicyDefinitionDeployer policyDefinitionDeployer)
-
getDeploymentManager
public PolicyDeploymentManager getDeploymentManager()
-
setDeploymentManager
public void setDeploymentManager(PolicyDeploymentManager deploymentManager)
-
getPolicyResourceConverter
public PolicyResourceConverter getPolicyResourceConverter()
-
setPolicyResourceConverter
public void setPolicyResourceConverter(PolicyResourceConverter policyResourceConverter)
-
getPolicyDefinitionCacheLimit
public int getPolicyDefinitionCacheLimit()
-
setPolicyDefinitionCacheLimit
public void setPolicyDefinitionCacheLimit(int policyDefinitionCacheLimit)
-
getPolicyDefinitionCache
public DeploymentCache<PolicyDefinitionCacheEntry> getPolicyDefinitionCache()
-
setPolicyDefinitionCache
public void setPolicyDefinitionCache(DeploymentCache<PolicyDefinitionCacheEntry> policyDefinitionCache)
-
getHistory
public String getHistory()
-
setHistory
public void setHistory(String history)
-
getHistoryLevel
public HistoryLevel getHistoryLevel()
-
setHistoryLevel
public void setHistoryLevel(HistoryLevel historyLevel)
-
getDeploymentStrategies
public Collection<AutoDeploymentStrategy<PolicyEngine>> getDeploymentStrategies()
-
setDeploymentStrategies
public void setDeploymentStrategies(Collection<AutoDeploymentStrategy<PolicyEngine>> deploymentStrategies)
-
getPhase
public int getPhase()
- Specified by:
getPhase
in interfacePhased
- Specified by:
getPhase
in interfaceSmartLifecycle
- Specified by:
getPhase
in interfaceSpringEngineConfiguration
-
getPolicyRepositoryService
public PolicyRepositoryService getPolicyRepositoryService()
- Specified by:
getPolicyRepositoryService
in interfacePolicyEngineConfigurationApi
-
setPolicyRepositoryService
public void setPolicyRepositoryService(PolicyRepositoryService policyRepositoryService)
-
autoDeployResources
protected void autoDeployResources(PolicyEngine policyEngine)
-
getAutoDeploymentStrategy
public AutoDeploymentStrategy<PolicyEngine> getAutoDeploymentStrategy(String mode)
Gets theAutoDeploymentStrategy
for the provided mode. This method may be overridden to implement custom deployment strategies if required, but implementors should take care not to returnnull
.- Parameters:
mode
- the mode to get the strategy for- Returns:
- the deployment strategy to use for the mode. Never
null
-
-