public class PolicyEngineConfiguration extends AbstractEngineConfiguration implements SpringEngineConfiguration, PolicyEngineConfigurationApi
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
PHASE, PHASE_DELTA
DEFAULT_PHASE
Constructor and Description |
---|
PolicyEngineConfiguration() |
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
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getBeans, isAutoStartup, stop
public static final String DEFAULT_MYBATIS_MAPPING_FILE
public static final String DEFAULT_ENGINE_NAME
public static final String KEY_POLICY_ENGINE_CONFIG
public static final String LIQUIBASE_CHANGELOG_PREFIX
protected String policyEngineName
protected PolicyRepositoryService policyRepositoryService
protected final PolicyDataManagers dataManagers
protected final PolicyEntityManagers entityManagers
protected PlatformTransactionManager transactionManager
protected Integer transactionSynchronizationAdapterOrder
protected ApplicationContext applicationContext
protected volatile boolean running
protected PolicyDefinitionDeployer policyDefinitionDeployer
protected PolicyDeploymentManager deploymentManager
protected PolicyResourceConverter policyResourceConverter
protected int policyDefinitionCacheLimit
protected DeploymentCache<PolicyDefinitionCacheEntry> policyDefinitionCache
protected String deploymentName
protected Resource[] deploymentResources
protected String deploymentMode
protected final Object lifeCycleMonitor
protected String history
protected HistoryLevel historyLevel
public String getEngineCfgKey()
getEngineCfgKey
in class AbstractEngineConfiguration
public String getEngineScopeType()
getEngineScopeType
in class AbstractEngineConfiguration
public CommandInterceptor createTransactionInterceptor()
createTransactionInterceptor
in class AbstractEngineConfiguration
protected void initDbSqlSessionFactoryEntitySettings()
initDbSqlSessionFactoryEntitySettings
in class AbstractEngineConfiguration
public InputStream getMyBatisXmlConfigurationStream()
getMyBatisXmlConfigurationStream
in class AbstractEngineConfiguration
public String getEngineName()
getEngineName
in class AbstractEngineConfiguration
public void setTransactionSynchronizationAdapterOrder(Integer transactionSynchronizationAdapterOrder)
public PolicyDataManagers getDataManagers()
public PolicyEntityManagers getEntityManagers()
public PolicyEngineConfiguration setDataSource(DataSource dataSource)
setDataSource
in class AbstractEngineConfiguration
public PolicyEngine buildActionEngine()
protected void init()
protected void initServices()
public void initTransactionContextFactory()
initTransactionContextFactory
in class AbstractEngineConfiguration
public void initDefaultCommandConfig()
initDefaultCommandConfig
in class AbstractEngineConfiguration
public void initDataManagers()
initDataManagers
in class AbstractEngineConfiguration
public void initEntityManagers()
initEntityManagers
in class AbstractEngineConfiguration
public void initHistoryLevel()
public void initSchemaManager()
initSchemaManager
in class AbstractEngineConfiguration
public void initSchemaManagementCommand()
protected void initDeployers()
public Collection<? extends EngineDeployer> getDefaultDeployers()
protected void initPolicyDefinitionCache()
protected void initPolicyResourceConverter()
protected void initDeploymentManager()
public PlatformTransactionManager getTransactionManager()
getTransactionManager
in interface SpringEngineConfiguration
public void setTransactionManager(PlatformTransactionManager transactionManager)
setTransactionManager
in interface SpringEngineConfiguration
public String getDeploymentName()
getDeploymentName
in interface SpringEngineConfiguration
public void setDeploymentName(String deploymentName)
setDeploymentName
in interface SpringEngineConfiguration
public Resource[] getDeploymentResources()
getDeploymentResources
in interface SpringEngineConfiguration
public void setDeploymentResources(Resource[] deploymentResources)
setDeploymentResources
in interface SpringEngineConfiguration
public ApplicationContext getApplicationContext()
getApplicationContext
in interface SpringEngineConfiguration
public void setApplicationContext(ApplicationContext applicationContext)
setApplicationContext
in interface SpringEngineConfiguration
setApplicationContext
in interface ApplicationContextAware
public String getDeploymentMode()
getDeploymentMode
in interface SpringEngineConfiguration
public void setDeploymentMode(String deploymentMode)
setDeploymentMode
in interface SpringEngineConfiguration
public String getPolicyEngineName()
public void setPolicyEngineName(String policyEngineName)
public PolicyDefinitionDeployer getPolicyDefinitionDeployer()
public void setPolicyDefinitionDeployer(PolicyDefinitionDeployer policyDefinitionDeployer)
public PolicyDeploymentManager getDeploymentManager()
public void setDeploymentManager(PolicyDeploymentManager deploymentManager)
public PolicyResourceConverter getPolicyResourceConverter()
public void setPolicyResourceConverter(PolicyResourceConverter policyResourceConverter)
public int getPolicyDefinitionCacheLimit()
public void setPolicyDefinitionCacheLimit(int policyDefinitionCacheLimit)
public DeploymentCache<PolicyDefinitionCacheEntry> getPolicyDefinitionCache()
public void setPolicyDefinitionCache(DeploymentCache<PolicyDefinitionCacheEntry> policyDefinitionCache)
public String getHistory()
public void setHistory(String history)
public HistoryLevel getHistoryLevel()
public void setHistoryLevel(HistoryLevel historyLevel)
public Collection<AutoDeploymentStrategy<PolicyEngine>> getDeploymentStrategies()
public void setDeploymentStrategies(Collection<AutoDeploymentStrategy<PolicyEngine>> deploymentStrategies)
public int getPhase()
getPhase
in interface SpringEngineConfiguration
getPhase
in interface Phased
getPhase
in interface SmartLifecycle
public PolicyRepositoryService getPolicyRepositoryService()
getPolicyRepositoryService
in interface PolicyEngineConfigurationApi
public void setPolicyRepositoryService(PolicyRepositoryService policyRepositoryService)
protected void autoDeployResources(PolicyEngine policyEngine)
public AutoDeploymentStrategy<PolicyEngine> getAutoDeploymentStrategy(String mode)
AutoDeploymentStrategy
for the provided mode. This method may be overridden to implement custom deployment strategies if required,
but implementors should take care not to return null
.mode
- the mode to get the strategy fornull