Class AuditEngineConfiguration

  • All Implemented Interfaces:
    AuditEngineConfigurationApi, org.flowable.common.spring.SpringEngineConfiguration, org.springframework.beans.factory.Aware, org.springframework.context.ApplicationContextAware, org.springframework.context.Lifecycle, org.springframework.context.Phased, org.springframework.context.SmartLifecycle

    public class AuditEngineConfiguration
    extends org.flowable.common.engine.impl.AbstractEngineConfiguration
    implements org.flowable.common.spring.SpringEngineConfiguration, AuditEngineConfigurationApi
    Author:
    Filip Hrisafov
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected java.lang.String actionEngineName  
      protected org.springframework.context.ApplicationContext applicationContext  
      protected AuditService auditService  
      protected AuditDataManagers dataManagers  
      static java.lang.String DEFAULT_ENGINE_NAME  
      static java.lang.String DEFAULT_MYBATIS_MAPPING_FILE  
      protected java.util.List<java.lang.String> enginesBuild  
      protected AuditEntityManagers entityManagers  
      static java.lang.String KEY_AUDIT_ENGINE_CONFIG  
      static java.lang.String LIQUIBASE_CHANGELOG_PREFIX  
      protected boolean running  
      protected org.springframework.transaction.PlatformTransactionManager transactionManager  
      protected java.lang.Integer transactionSynchronizationAdapterOrder  
      • 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
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      AuditEngine buildAuditEngine()  
      org.flowable.common.engine.impl.interceptor.CommandInterceptor createTransactionInterceptor()  
      java.lang.String getActionEngineName()  
      org.springframework.context.ApplicationContext getApplicationContext()  
      AuditService getAuditService()
      Returns the audit service where audit entries can be created and retrieved.
      AuditDataManagers getDataManagers()  
      java.lang.String getDeploymentMode()  
      java.lang.String getDeploymentName()  
      org.springframework.core.io.Resource[] getDeploymentResources()  
      java.lang.String getEngineCfgKey()  
      java.lang.String getEngineName()  
      java.lang.String getEngineScopeType()  
      AuditEntityManagers getEntityManagers()  
      java.io.InputStream getMyBatisXmlConfigurationStream()  
      org.springframework.transaction.PlatformTransactionManager getTransactionManager()  
      protected void init()  
      void initDataManagers()  
      protected void initDbSqlSessionFactoryEntitySettings()  
      void initDefaultCommandConfig()  
      void initEntityManagers()  
      void initMybatisTypeHandlers​(org.apache.ibatis.session.Configuration configuration)  
      void initSchemaManagementCommand()  
      void initSchemaManager()  
      protected void initServices()  
      void initTransactionContextFactory()  
      boolean isRunning()  
      void setActionEngineName​(java.lang.String actionEngineName)  
      void setApplicationContext​(org.springframework.context.ApplicationContext applicationContext)  
      void setAuditService​(AuditService auditService)  
      AuditEngineConfiguration setDataSource​(javax.sql.DataSource dataSource)  
      void setDeploymentMode​(java.lang.String deploymentMode)  
      void setDeploymentName​(java.lang.String deploymentName)  
      void setDeploymentResources​(org.springframework.core.io.Resource[] deploymentResources)  
      void setTransactionManager​(org.springframework.transaction.PlatformTransactionManager transactionManager)  
      void setTransactionSynchronizationAdapterOrder​(java.lang.Integer transactionSynchronizationAdapterOrder)  
      void start()  
      void stop()  
      • 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, 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, getPhase, isAutoStartup, stop
    • Field Detail

      • DEFAULT_MYBATIS_MAPPING_FILE

        public static final java.lang.String DEFAULT_MYBATIS_MAPPING_FILE
        See Also:
        Constant Field Values
      • DEFAULT_ENGINE_NAME

        public static final java.lang.String DEFAULT_ENGINE_NAME
        See Also:
        Constant Field Values
      • KEY_AUDIT_ENGINE_CONFIG

        public static final java.lang.String KEY_AUDIT_ENGINE_CONFIG
        See Also:
        Constant Field Values
      • LIQUIBASE_CHANGELOG_PREFIX

        public static final java.lang.String LIQUIBASE_CHANGELOG_PREFIX
        See Also:
        Constant Field Values
      • actionEngineName

        protected java.lang.String actionEngineName
      • transactionManager

        protected org.springframework.transaction.PlatformTransactionManager transactionManager
      • transactionSynchronizationAdapterOrder

        protected java.lang.Integer transactionSynchronizationAdapterOrder
      • applicationContext

        protected org.springframework.context.ApplicationContext applicationContext
      • running

        protected volatile boolean running
      • enginesBuild

        protected java.util.List<java.lang.String> enginesBuild
    • Constructor Detail

      • AuditEngineConfiguration

        public AuditEngineConfiguration()
    • Method Detail

      • getEngineCfgKey

        public java.lang.String getEngineCfgKey()
        Specified by:
        getEngineCfgKey in class org.flowable.common.engine.impl.AbstractEngineConfiguration
      • getEngineScopeType

        public java.lang.String getEngineScopeType()
        Specified by:
        getEngineScopeType in class org.flowable.common.engine.impl.AbstractEngineConfiguration
      • createTransactionInterceptor

        public org.flowable.common.engine.impl.interceptor.CommandInterceptor createTransactionInterceptor()
        Specified by:
        createTransactionInterceptor in class org.flowable.common.engine.impl.AbstractEngineConfiguration
      • initDbSqlSessionFactoryEntitySettings

        protected void initDbSqlSessionFactoryEntitySettings()
        Specified by:
        initDbSqlSessionFactoryEntitySettings in class org.flowable.common.engine.impl.AbstractEngineConfiguration
      • getMyBatisXmlConfigurationStream

        public java.io.InputStream getMyBatisXmlConfigurationStream()
        Specified by:
        getMyBatisXmlConfigurationStream in class org.flowable.common.engine.impl.AbstractEngineConfiguration
      • getEngineName

        public java.lang.String getEngineName()
        Specified by:
        getEngineName in class org.flowable.common.engine.impl.AbstractEngineConfiguration
      • setTransactionSynchronizationAdapterOrder

        public void setTransactionSynchronizationAdapterOrder​(java.lang.Integer transactionSynchronizationAdapterOrder)
      • setDataSource

        public AuditEngineConfiguration setDataSource​(javax.sql.DataSource dataSource)
        Overrides:
        setDataSource in class org.flowable.common.engine.impl.AbstractEngineConfiguration
      • buildAuditEngine

        public AuditEngine buildAuditEngine()
      • init

        protected void init()
      • initServices

        protected void initServices()
      • initTransactionContextFactory

        public void initTransactionContextFactory()
        Overrides:
        initTransactionContextFactory in class org.flowable.common.engine.impl.AbstractEngineConfiguration
      • initDefaultCommandConfig

        public void initDefaultCommandConfig()
        Overrides:
        initDefaultCommandConfig in class org.flowable.common.engine.impl.AbstractEngineConfiguration
      • initMybatisTypeHandlers

        public void initMybatisTypeHandlers​(org.apache.ibatis.session.Configuration configuration)
        Overrides:
        initMybatisTypeHandlers in class org.flowable.common.engine.impl.AbstractEngineConfiguration
      • initDataManagers

        public void initDataManagers()
        Overrides:
        initDataManagers in class org.flowable.common.engine.impl.AbstractEngineConfiguration
      • initEntityManagers

        public void initEntityManagers()
        Overrides:
        initEntityManagers in class org.flowable.common.engine.impl.AbstractEngineConfiguration
      • initSchemaManager

        public void initSchemaManager()
        Overrides:
        initSchemaManager in class org.flowable.common.engine.impl.AbstractEngineConfiguration
      • initSchemaManagementCommand

        public void initSchemaManagementCommand()
      • getTransactionManager

        public org.springframework.transaction.PlatformTransactionManager getTransactionManager()
        Specified by:
        getTransactionManager in interface org.flowable.common.spring.SpringEngineConfiguration
      • setTransactionManager

        public void setTransactionManager​(org.springframework.transaction.PlatformTransactionManager transactionManager)
        Specified by:
        setTransactionManager in interface org.flowable.common.spring.SpringEngineConfiguration
      • getApplicationContext

        public org.springframework.context.ApplicationContext getApplicationContext()
        Specified by:
        getApplicationContext in interface org.flowable.common.spring.SpringEngineConfiguration
      • setApplicationContext

        public void setApplicationContext​(org.springframework.context.ApplicationContext applicationContext)
        Specified by:
        setApplicationContext in interface org.springframework.context.ApplicationContextAware
        Specified by:
        setApplicationContext in interface org.flowable.common.spring.SpringEngineConfiguration
      • getActionEngineName

        public java.lang.String getActionEngineName()
      • setActionEngineName

        public void setActionEngineName​(java.lang.String actionEngineName)
      • isRunning

        public boolean isRunning()
        Specified by:
        isRunning in interface org.springframework.context.Lifecycle
      • setAuditService

        public void setAuditService​(AuditService auditService)
      • start

        public void start()
        Specified by:
        start in interface org.springframework.context.Lifecycle
      • stop

        public void stop()
        Specified by:
        stop in interface org.springframework.context.Lifecycle
      • getDeploymentName

        public java.lang.String getDeploymentName()
        Specified by:
        getDeploymentName in interface org.flowable.common.spring.SpringEngineConfiguration
      • setDeploymentName

        public void setDeploymentName​(java.lang.String deploymentName)
        Specified by:
        setDeploymentName in interface org.flowable.common.spring.SpringEngineConfiguration
      • getDeploymentResources

        public org.springframework.core.io.Resource[] getDeploymentResources()
        Specified by:
        getDeploymentResources in interface org.flowable.common.spring.SpringEngineConfiguration
      • setDeploymentResources

        public void setDeploymentResources​(org.springframework.core.io.Resource[] deploymentResources)
        Specified by:
        setDeploymentResources in interface org.flowable.common.spring.SpringEngineConfiguration
      • getDeploymentMode

        public java.lang.String getDeploymentMode()
        Specified by:
        getDeploymentMode in interface org.flowable.common.spring.SpringEngineConfiguration
      • setDeploymentMode

        public void setDeploymentMode​(java.lang.String deploymentMode)
        Specified by:
        setDeploymentMode in interface org.flowable.common.spring.SpringEngineConfiguration