Class SchedulerClusteredJobDaoProxyWrapper
java.lang.Object
com.atlassian.confluence.impl.schedule.caesium.SchedulerClusteredJobDaoProxyWrapper
- All Implemented Interfaces:
com.atlassian.scheduler.caesium.spi.ClusteredJobDao
public class SchedulerClusteredJobDaoProxyWrapper
extends Object
implements com.atlassian.scheduler.caesium.spi.ClusteredJobDao
See schedulingSubsystemContext.xml. This class uses
TransactionProxyFactoryBean
uses
SchedulerClusteredJobDao.
We use TransactionProxyFactoryBean
to wrap SchedulerClusteredJobDao. At create and updateNextRunTime,
when there's exception DataAccessException (DataIntegrityViolationException,
even when we catch the exception, the
proxy somehow still knows that the exception has occurred, and it rethrows
the exception outside. Caesium doesn't like that, so we use this wrapper to
catch the exception.
- Since:
- 5.10
-
Constructor Summary
ConstructorsConstructorDescriptionSchedulerClusteredJobDaoProxyWrapper(com.atlassian.scheduler.caesium.spi.ClusteredJobDao proxy) -
Method Summary
Modifier and TypeMethodDescriptionbooleancreate(com.atlassian.scheduler.caesium.spi.ClusteredJob clusteredJob) booleandelete(com.atlassian.scheduler.config.JobId jobId) @Nullable com.atlassian.scheduler.caesium.spi.ClusteredJobfind(com.atlassian.scheduler.config.JobId jobId) @NonNull Set<com.atlassian.scheduler.config.JobRunnerKey> @NonNull Collection<com.atlassian.scheduler.caesium.spi.ClusteredJob> findByJobRunnerKey(com.atlassian.scheduler.config.JobRunnerKey jobRunnerKey) @NonNull Collection<com.atlassian.scheduler.caesium.spi.ClusteredJob> findByJobRunnerKeys(List<com.atlassian.scheduler.config.JobRunnerKey> jobRunnerKeys) @Nullable DategetNextRunTime(com.atlassian.scheduler.config.JobId jobId) @Nullable LonggetVersion(com.atlassian.scheduler.config.JobId jobId) refresh()booleanupdateNextRunTime(com.atlassian.scheduler.config.JobId jobId, @Nullable Date nextRunTime, long expectedVersion)
-
Constructor Details
-
SchedulerClusteredJobDaoProxyWrapper
public SchedulerClusteredJobDaoProxyWrapper(com.atlassian.scheduler.caesium.spi.ClusteredJobDao proxy)
-
-
Method Details
-
getNextRunTime
- Specified by:
getNextRunTimein interfacecom.atlassian.scheduler.caesium.spi.ClusteredJobDao
-
getVersion
- Specified by:
getVersionin interfacecom.atlassian.scheduler.caesium.spi.ClusteredJobDao
-
find
public @Nullable com.atlassian.scheduler.caesium.spi.ClusteredJob find(com.atlassian.scheduler.config.JobId jobId) - Specified by:
findin interfacecom.atlassian.scheduler.caesium.spi.ClusteredJobDao
-
findByJobRunnerKey
public @NonNull Collection<com.atlassian.scheduler.caesium.spi.ClusteredJob> findByJobRunnerKey(com.atlassian.scheduler.config.JobRunnerKey jobRunnerKey) - Specified by:
findByJobRunnerKeyin interfacecom.atlassian.scheduler.caesium.spi.ClusteredJobDao
-
findByJobRunnerKeys
public @NonNull Collection<com.atlassian.scheduler.caesium.spi.ClusteredJob> findByJobRunnerKeys(List<com.atlassian.scheduler.config.JobRunnerKey> jobRunnerKeys) - Specified by:
findByJobRunnerKeysin interfacecom.atlassian.scheduler.caesium.spi.ClusteredJobDao
-
refresh
- Specified by:
refreshin interfacecom.atlassian.scheduler.caesium.spi.ClusteredJobDao
-
findAllJobRunnerKeys
- Specified by:
findAllJobRunnerKeysin interfacecom.atlassian.scheduler.caesium.spi.ClusteredJobDao
-
create
public boolean create(com.atlassian.scheduler.caesium.spi.ClusteredJob clusteredJob) - Specified by:
createin interfacecom.atlassian.scheduler.caesium.spi.ClusteredJobDao
-
updateNextRunTime
public boolean updateNextRunTime(com.atlassian.scheduler.config.JobId jobId, @Nullable Date nextRunTime, long expectedVersion) - Specified by:
updateNextRunTimein interfacecom.atlassian.scheduler.caesium.spi.ClusteredJobDao
-
delete
public boolean delete(com.atlassian.scheduler.config.JobId jobId) - Specified by:
deletein interfacecom.atlassian.scheduler.caesium.spi.ClusteredJobDao
-