Package org.quartz.utils
Class HikariCpPoolingConnectionProvider
- java.lang.Object
-
- org.quartz.utils.HikariCpPoolingConnectionProvider
-
- All Implemented Interfaces:
ConnectionProvider,PoolingConnectionProvider
public class HikariCpPoolingConnectionProvider extends java.lang.Object implements PoolingConnectionProvider
A
ConnectionProviderimplementation that creates its own pool of connections.This class uses HikariCP (https://brettwooldridge.github.io/HikariCP/) as the underlying pool implementation.
- Author:
- Ludovic Orban
- See Also:
DBConnectionManager,ConnectionProvider
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringPOOLING_PROVIDER_NAMEThis pooling provider name.-
Fields inherited from interface org.quartz.utils.PoolingConnectionProvider
DB_DRIVER, DB_MAX_CONNECTIONS, DB_PASSWORD, DB_URL, DB_USER, DB_VALIDATION_QUERY, DEFAULT_DB_MAX_CONNECTIONS, POOLING_PROVIDER, POOLING_PROVIDER_C3P0, POOLING_PROVIDER_HIKARICP
-
-
Constructor Summary
Constructors Constructor Description HikariCpPoolingConnectionProvider(java.lang.String dbDriver, java.lang.String dbURL, java.lang.String dbUser, java.lang.String dbPassword, int maxConnections, java.lang.String dbValidationQuery)HikariCpPoolingConnectionProvider(java.util.Properties config)Create a connection pool using the given properties.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.sql.ConnectiongetConnection()com.zaxxer.hikari.HikariDataSourcegetDataSource()Get the HikariCP HikariDataSource created during initialization.voidinitialize()voidshutdown()
-
-
-
Field Detail
-
POOLING_PROVIDER_NAME
public static final java.lang.String POOLING_PROVIDER_NAME
This pooling provider name.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
HikariCpPoolingConnectionProvider
public HikariCpPoolingConnectionProvider(java.lang.String dbDriver, java.lang.String dbURL, java.lang.String dbUser, java.lang.String dbPassword, int maxConnections, java.lang.String dbValidationQuery) throws java.sql.SQLException, SchedulerException- Throws:
java.sql.SQLExceptionSchedulerException
-
HikariCpPoolingConnectionProvider
public HikariCpPoolingConnectionProvider(java.util.Properties config) throws SchedulerException, java.sql.SQLExceptionCreate a connection pool using the given properties.The properties passed should contain:
PoolingConnectionProvider.DB_DRIVER- The database driver class namePoolingConnectionProvider.DB_URL- The database URLPoolingConnectionProvider.DB_USER- The database userPoolingConnectionProvider.DB_PASSWORD- The database passwordPoolingConnectionProvider.DB_MAX_CONNECTIONS- The maximum # connections in the pool, optionalPoolingConnectionProvider.DB_VALIDATION_QUERY- The sql validation query, optional
- Parameters:
config- configuration properties- Throws:
SchedulerExceptionjava.sql.SQLException
-
-
Method Detail
-
getDataSource
public com.zaxxer.hikari.HikariDataSource getDataSource()
Get the HikariCP HikariDataSource created during initialization.This can be used to set additional data source properties in a subclass's constructor.
- Specified by:
getDataSourcein interfacePoolingConnectionProvider
-
getConnection
public java.sql.Connection getConnection() throws java.sql.SQLException- Specified by:
getConnectionin interfaceConnectionProvider- Returns:
- connection managed by this provider
- Throws:
java.sql.SQLException
-
shutdown
public void shutdown() throws java.sql.SQLException- Specified by:
shutdownin interfaceConnectionProvider- Throws:
java.sql.SQLException
-
initialize
public void initialize() throws java.sql.SQLException- Specified by:
initializein interfaceConnectionProvider- Throws:
java.sql.SQLException
-
-