public class LocalDataSourceJobStore
extends JobStoreCMT
Supports both transactional and non-transactional DataSource access. With a non-XA DataSource and local Spring transactions, a single DataSource argument is sufficient. In case of an XA DataSource and global JTA transactions, SchedulerFactoryBean's "nonTransactionalDataSource" property should be set, passing in a non-XA DataSource that will not participate in global transactions.
Operations performed by this JobStore will properly participate in any kind of Spring-managed transaction, as it uses Spring's DataSourceUtils connection handling methods that are aware of a current transaction.
Note that all Quartz Scheduler operations that affect the persistent job store should usually be performed within active transactions, as they assume to get proper locks etc.
SchedulerFactoryBean.setDataSource(javax.sql.DataSource)
,
SchedulerFactoryBean.setNonTransactionalDataSource(javax.sql.DataSource)
,
DataSourceUtils.doGetConnection(javax.sql.DataSource)
,
DataSourceUtils.releaseConnection(java.sql.Connection, javax.sql.DataSource)
Modifier and Type | Field and Description |
---|---|
private javax.sql.DataSource |
dataSource |
static java.lang.String |
NON_TX_DATA_SOURCE_PREFIX
Name used for the non-transactional ConnectionProvider for Quartz.
|
static java.lang.String |
TX_DATA_SOURCE_PREFIX
Name used for the transactional ConnectionProvider for Quartz.
|
Constructor and Description |
---|
LocalDataSourceJobStore() |
Modifier and Type | Method and Description |
---|---|
protected void |
closeConnection(java.sql.Connection con) |
void |
initialize(ClassLoadHelper loadHelper,
SchedulerSignaler signaler) |
public static final java.lang.String TX_DATA_SOURCE_PREFIX
org.quartz.utils.DBConnectionManager#addConnectionProvider
,
SchedulerFactoryBean.setDataSource(javax.sql.DataSource)
,
Constant Field Valuespublic static final java.lang.String NON_TX_DATA_SOURCE_PREFIX
org.quartz.utils.DBConnectionManager#addConnectionProvider
,
SchedulerFactoryBean.setDataSource(javax.sql.DataSource)
,
Constant Field Valuesprivate javax.sql.DataSource dataSource