@Repository(value="jobRepository")
public class MongoJobRepository
extends de.otto.edison.mongo.AbstractMongoRepository<java.lang.String,de.otto.edison.jobs.domain.JobInfo>
implements de.otto.edison.jobs.repository.JobRepository
| Constructor and Description |
|---|
MongoJobRepository(com.mongodb.client.MongoDatabase database) |
| Modifier and Type | Method and Description |
|---|---|
void |
appendMessage(java.lang.String jobId,
de.otto.edison.jobs.domain.JobMessage jobMessage) |
void |
clearRunningMark(java.lang.String jobType) |
protected com.mongodb.client.MongoCollection<org.bson.Document> |
collection() |
protected de.otto.edison.jobs.domain.JobInfo |
decode(org.bson.Document document) |
void |
disableJobType(java.lang.String jobType) |
void |
enableJobType(java.lang.String jobType) |
protected org.bson.Document |
encode(de.otto.edison.jobs.domain.JobInfo job) |
protected void |
ensureIndexes() |
java.util.List<java.lang.String> |
findAllJobIdsDistinct() |
java.util.List<de.otto.edison.jobs.domain.JobInfo> |
findByType(java.lang.String type) |
java.util.List<java.lang.String> |
findDisabledJobTypes() |
java.util.List<de.otto.edison.jobs.domain.JobInfo> |
findLatest(int maxCount) |
java.util.List<de.otto.edison.jobs.domain.JobInfo> |
findLatestBy(java.lang.String type,
int maxCount) |
java.util.List<de.otto.edison.jobs.domain.JobInfo> |
findLatestJobsDistinct() |
java.util.List<de.otto.edison.jobs.domain.JobInfo> |
findRunningWithoutUpdateSince(java.time.OffsetDateTime timeOffset) |
de.otto.edison.jobs.domain.JobInfo.JobStatus |
findStatus(java.lang.String jobId) |
void |
initJobsMetaDataDocumentsOnStartup() |
protected java.lang.String |
keyOf(de.otto.edison.jobs.domain.JobInfo value) |
void |
markJobAsRunningIfPossible(de.otto.edison.jobs.domain.JobInfo jobInfo,
java.util.Set<java.lang.String> blockingJobTypes) |
void |
removeIfStopped(java.lang.String id) |
de.otto.edison.jobs.domain.RunningJobs |
runningJobsDocument() |
byId, create, createOrUpdate, delete, deleteAll, findAll, findAll, findOne, matchAll, postConstruct, size, update, updateIfMatch@Autowired public MongoJobRepository(com.mongodb.client.MongoDatabase database)
@PostConstruct public void initJobsMetaDataDocumentsOnStartup()
public de.otto.edison.jobs.domain.JobInfo.JobStatus findStatus(java.lang.String jobId)
findStatus in interface de.otto.edison.jobs.repository.JobRepositorypublic void removeIfStopped(java.lang.String id)
removeIfStopped in interface de.otto.edison.jobs.repository.JobRepositorypublic void appendMessage(java.lang.String jobId,
de.otto.edison.jobs.domain.JobMessage jobMessage)
appendMessage in interface de.otto.edison.jobs.repository.JobRepositorypublic void markJobAsRunningIfPossible(de.otto.edison.jobs.domain.JobInfo jobInfo,
java.util.Set<java.lang.String> blockingJobTypes)
throws de.otto.edison.jobs.repository.JobBlockedException
markJobAsRunningIfPossible in interface de.otto.edison.jobs.repository.JobRepositoryde.otto.edison.jobs.repository.JobBlockedExceptionpublic void clearRunningMark(java.lang.String jobType)
clearRunningMark in interface de.otto.edison.jobs.repository.JobRepositorypublic de.otto.edison.jobs.domain.RunningJobs runningJobsDocument()
runningJobsDocument in interface de.otto.edison.jobs.repository.JobRepositorypublic void disableJobType(java.lang.String jobType)
disableJobType in interface de.otto.edison.jobs.repository.JobRepositorypublic void enableJobType(java.lang.String jobType)
enableJobType in interface de.otto.edison.jobs.repository.JobRepositorypublic java.util.List<java.lang.String> findDisabledJobTypes()
findDisabledJobTypes in interface de.otto.edison.jobs.repository.JobRepositorypublic java.util.List<de.otto.edison.jobs.domain.JobInfo> findLatest(int maxCount)
findLatest in interface de.otto.edison.jobs.repository.JobRepositorypublic java.util.List<de.otto.edison.jobs.domain.JobInfo> findLatestJobsDistinct()
findLatestJobsDistinct in interface de.otto.edison.jobs.repository.JobRepositorypublic java.util.List<java.lang.String> findAllJobIdsDistinct()
public java.util.List<de.otto.edison.jobs.domain.JobInfo> findLatestBy(java.lang.String type,
int maxCount)
findLatestBy in interface de.otto.edison.jobs.repository.JobRepositorypublic java.util.List<de.otto.edison.jobs.domain.JobInfo> findByType(java.lang.String type)
findByType in interface de.otto.edison.jobs.repository.JobRepositorypublic java.util.List<de.otto.edison.jobs.domain.JobInfo> findRunningWithoutUpdateSince(java.time.OffsetDateTime timeOffset)
findRunningWithoutUpdateSince in interface de.otto.edison.jobs.repository.JobRepositoryprotected final org.bson.Document encode(de.otto.edison.jobs.domain.JobInfo job)
encode in class de.otto.edison.mongo.AbstractMongoRepository<java.lang.String,de.otto.edison.jobs.domain.JobInfo>protected final de.otto.edison.jobs.domain.JobInfo decode(org.bson.Document document)
decode in class de.otto.edison.mongo.AbstractMongoRepository<java.lang.String,de.otto.edison.jobs.domain.JobInfo>protected final java.lang.String keyOf(de.otto.edison.jobs.domain.JobInfo value)
keyOf in class de.otto.edison.mongo.AbstractMongoRepository<java.lang.String,de.otto.edison.jobs.domain.JobInfo>protected final com.mongodb.client.MongoCollection<org.bson.Document> collection()
collection in class de.otto.edison.mongo.AbstractMongoRepository<java.lang.String,de.otto.edison.jobs.domain.JobInfo>protected final void ensureIndexes()
ensureIndexes in class de.otto.edison.mongo.AbstractMongoRepository<java.lang.String,de.otto.edison.jobs.domain.JobInfo>