@Override public long getConnectionPoolMaxSize() { if (this.connectionPool == null) { return 0L; } else { return this.connectionPool.getPoolMaximumActiveConnections(); } }
@Override public void detect(final Long instantValue) { if (this.connectionPool.getPoolState().getActiveConnectionCount() == this.connectionPool .getPoolMaximumActiveConnections()) { // No more connection is available this.connectionPoolExhaustedDefectCreator.createAndSend(); } } }
public void testMyBatisConnectionPoolProperlyConfigured() { ProcessEngineConfigurationImpl config = (ProcessEngineConfigurationImpl) ProcessEngineConfiguration .createProcessEngineConfigurationFromResource("org/camunda/bpm/engine/test/api/cfg/connection-pool.camunda.cfg.xml"); ProcessEngine engine = config.buildProcessEngine(); // Expected values int maxActive = 25; int maxIdle = 10; int maxCheckoutTime = 30000; int maxWaitTime = 25000; Integer jdbcStatementTimeout = 300; assertEquals(maxActive, config.getJdbcMaxActiveConnections()); assertEquals(maxIdle, config.getJdbcMaxIdleConnections()); assertEquals(maxCheckoutTime, config.getJdbcMaxCheckoutTime()); assertEquals(maxWaitTime, config.getJdbcMaxWaitTime()); assertEquals(jdbcStatementTimeout, config.getJdbcStatementTimeout()); // Verify that these properties are correctly set in the MyBatis datasource Configuration sessionFactoryConfiguration = config.getDbSqlSessionFactory().getSqlSessionFactory().getConfiguration(); DataSource datasource = sessionFactoryConfiguration.getEnvironment().getDataSource(); assertTrue(datasource instanceof PooledDataSource); PooledDataSource pooledDataSource = (PooledDataSource) datasource; assertEquals(maxActive, pooledDataSource.getPoolMaximumActiveConnections()); assertEquals(maxIdle, pooledDataSource.getPoolMaximumIdleConnections()); assertEquals(maxCheckoutTime, pooledDataSource.getPoolMaximumCheckoutTime()); assertEquals(maxWaitTime, pooledDataSource.getPoolTimeToWait()); assertEquals(jdbcStatementTimeout, sessionFactoryConfiguration.getDefaultStatementTimeout()); engine.close(); }
public void testMyBatisConnectionPoolProperlyConfigured() { ProcessEngineConfigurationImpl config = (ProcessEngineConfigurationImpl) ProcessEngineConfiguration .createProcessEngineConfigurationFromResource("org/camunda/bpm/engine/test/api/cfg/connection-pool.camunda.cfg.xml"); ProcessEngine engine = config.buildProcessEngine(); // Expected values int maxActive = 25; int maxIdle = 10; int maxCheckoutTime = 30000; int maxWaitTime = 25000; Integer jdbcStatementTimeout = 300; assertEquals(maxActive, config.getJdbcMaxActiveConnections()); assertEquals(maxIdle, config.getJdbcMaxIdleConnections()); assertEquals(maxCheckoutTime, config.getJdbcMaxCheckoutTime()); assertEquals(maxWaitTime, config.getJdbcMaxWaitTime()); assertEquals(jdbcStatementTimeout, config.getJdbcStatementTimeout()); // Verify that these properties are correctly set in the MyBatis datasource Configuration sessionFactoryConfiguration = config.getDbSqlSessionFactory().getSqlSessionFactory().getConfiguration(); DataSource datasource = sessionFactoryConfiguration.getEnvironment().getDataSource(); assertTrue(datasource instanceof PooledDataSource); PooledDataSource pooledDataSource = (PooledDataSource) datasource; assertEquals(maxActive, pooledDataSource.getPoolMaximumActiveConnections()); assertEquals(maxIdle, pooledDataSource.getPoolMaximumIdleConnections()); assertEquals(maxCheckoutTime, pooledDataSource.getPoolMaximumCheckoutTime()); assertEquals(maxWaitTime, pooledDataSource.getPoolTimeToWait()); assertEquals(jdbcStatementTimeout, sessionFactoryConfiguration.getDefaultStatementTimeout()); engine.close(); }