Package org.jobrunr.storage.nosql.redis
Class JedisRedisStorageProvider
java.lang.Object
org.jobrunr.storage.AbstractStorageProvider
org.jobrunr.storage.nosql.redis.JedisRedisStorageProvider
- All Implemented Interfaces:
AutoCloseable
,NoSqlStorageProvider
,StorageProvider
@Beta
public class JedisRedisStorageProvider
extends AbstractStorageProvider
implements NoSqlStorageProvider
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.jobrunr.storage.StorageProvider
StorageProvider.StorageProviderInfo
-
Field Summary
Fields inherited from interface org.jobrunr.storage.StorageProvider
BATCH_SIZE
-
Constructor Summary
ConstructorDescriptionJedisRedisStorageProvider
(redis.clients.jedis.JedisPool jedisPool) JedisRedisStorageProvider
(redis.clients.jedis.JedisPool jedisPool, String keyPrefix) JedisRedisStorageProvider
(redis.clients.jedis.JedisPool jedisPool, String keyPrefix, RateLimiter changeListenerNotificationRateLimit) JedisRedisStorageProvider
(redis.clients.jedis.JedisPool jedisPool, RateLimiter changeListenerNotificationRateLimit) -
Method Summary
Modifier and TypeMethodDescriptionvoid
announceBackgroundJobServer
(BackgroundJobServerStatus serverStatus) long
int
deleteJobsPermanently
(StateName state, Instant updatedBefore) void
deleteMetadata
(String name) int
int
boolean
exists
(JobDetails jobDetails, StateName... states) getDistinctJobSignatures
(StateName... states) protected redis.clients.jedis.Jedis
getJedis()
getJobById
(UUID id) getJobPage
(StateName state, PageRequest pageRequest) getJobs
(StateName state, Instant updatedBefore, PageRequest pageRequest) getJobs
(StateName state, PageRequest pageRequest) getMetadata
(String name) getMetadata
(String name, String owner) getScheduledJobs
(Instant scheduledBefore, PageRequest pageRequest) void
publishTotalAmountOfSucceededJobs
(int amount) boolean
recurringJobExists
(String recurringJobId, StateName... states) boolean
recurringJobsUpdated
(Long recurringJobsUpdatedHash) int
removeTimedOutBackgroundJobServers
(Instant heartbeatOlderThan) void
saveMetadata
(JobRunrMetadata metadata) saveRecurringJob
(RecurringJob recurringJob) void
setJobMapper
(JobMapper jobMapper) void
setUpStorageProvider
(StorageProviderUtils.DatabaseOptions databaseOptions) This method allows to reinitialize the StorageProvider.boolean
signalBackgroundJobServerAlive
(BackgroundJobServerStatus serverStatus) void
signalBackgroundJobServerStopped
(BackgroundJobServerStatus serverStatus) Methods inherited from class org.jobrunr.storage.AbstractStorageProvider
addJobStorageOnChangeListener, close, getStorageProviderInfo, notifyJobStatsOnChangeListeners, notifyJobStatsOnChangeListenersIf, notifyMetadataChangeListeners, notifyMetadataChangeListeners, removeJobStorageOnChangeListener
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.jobrunr.storage.StorageProvider
addJobStorageOnChangeListener, close, getJobById, getStorageProviderInfo, removeJobStorageOnChangeListener
-
Constructor Details
-
JedisRedisStorageProvider
public JedisRedisStorageProvider() -
JedisRedisStorageProvider
public JedisRedisStorageProvider(redis.clients.jedis.JedisPool jedisPool) -
JedisRedisStorageProvider
-
JedisRedisStorageProvider
public JedisRedisStorageProvider(redis.clients.jedis.JedisPool jedisPool, RateLimiter changeListenerNotificationRateLimit) -
JedisRedisStorageProvider
public JedisRedisStorageProvider(redis.clients.jedis.JedisPool jedisPool, String keyPrefix, RateLimiter changeListenerNotificationRateLimit)
-
-
Method Details
-
setJobMapper
- Specified by:
setJobMapper
in interfaceStorageProvider
-
setUpStorageProvider
Description copied from interface:StorageProvider
This method allows to reinitialize the StorageProvider. It can be used if you are using Flyway or Liquibase to setup your database manually. By default, this method is automatically called on construction of the StorageProvider- Specified by:
setUpStorageProvider
in interfaceStorageProvider
- Parameters:
databaseOptions
- defines whether to set up the StorageProvider or validate whether the StorageProvider is set up correctly.
-
announceBackgroundJobServer
- Specified by:
announceBackgroundJobServer
in interfaceStorageProvider
-
signalBackgroundJobServerAlive
- Specified by:
signalBackgroundJobServerAlive
in interfaceStorageProvider
-
signalBackgroundJobServerStopped
- Specified by:
signalBackgroundJobServerStopped
in interfaceStorageProvider
-
getBackgroundJobServers
- Specified by:
getBackgroundJobServers
in interfaceStorageProvider
-
getLongestRunningBackgroundJobServerId
- Specified by:
getLongestRunningBackgroundJobServerId
in interfaceStorageProvider
-
removeTimedOutBackgroundJobServers
- Specified by:
removeTimedOutBackgroundJobServers
in interfaceStorageProvider
-
saveMetadata
- Specified by:
saveMetadata
in interfaceStorageProvider
-
getMetadata
- Specified by:
getMetadata
in interfaceStorageProvider
-
getMetadata
- Specified by:
getMetadata
in interfaceStorageProvider
-
deleteMetadata
- Specified by:
deleteMetadata
in interfaceStorageProvider
-
save
- Specified by:
save
in interfaceStorageProvider
-
deletePermanently
- Specified by:
deletePermanently
in interfaceStorageProvider
-
getJobById
- Specified by:
getJobById
in interfaceStorageProvider
-
save
- Specified by:
save
in interfaceStorageProvider
-
getJobs
- Specified by:
getJobs
in interfaceStorageProvider
-
getScheduledJobs
- Specified by:
getScheduledJobs
in interfaceStorageProvider
-
getJobs
- Specified by:
getJobs
in interfaceStorageProvider
-
getJobPage
- Specified by:
getJobPage
in interfaceStorageProvider
-
deleteJobsPermanently
- Specified by:
deleteJobsPermanently
in interfaceStorageProvider
-
getDistinctJobSignatures
- Specified by:
getDistinctJobSignatures
in interfaceStorageProvider
-
exists
- Specified by:
exists
in interfaceStorageProvider
-
recurringJobExists
- Specified by:
recurringJobExists
in interfaceStorageProvider
-
saveRecurringJob
- Specified by:
saveRecurringJob
in interfaceStorageProvider
-
recurringJobsUpdated
- Specified by:
recurringJobsUpdated
in interfaceStorageProvider
-
getRecurringJobs
- Specified by:
getRecurringJobs
in interfaceStorageProvider
-
countRecurringJobs
public long countRecurringJobs()- Specified by:
countRecurringJobs
in interfaceStorageProvider
-
deleteRecurringJob
- Specified by:
deleteRecurringJob
in interfaceStorageProvider
-
getJobStats
- Specified by:
getJobStats
in interfaceStorageProvider
-
publishTotalAmountOfSucceededJobs
public void publishTotalAmountOfSucceededJobs(int amount) - Specified by:
publishTotalAmountOfSucceededJobs
in interfaceStorageProvider
-
getJedis
protected redis.clients.jedis.Jedis getJedis()
-