public class SchedulerDao
extends java.lang.Object
| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
CHECKIN_INTERVAL_FIELD |
Clock |
clock |
long |
clusterCheckinIntervalMillis |
static java.lang.String |
INSTANCE_ID_FIELD |
java.lang.String |
instanceId |
static java.lang.String |
LAST_CHECKIN_TIME_FIELD |
static java.lang.String |
SCHEDULER_NAME_FIELD |
com.mongodb.client.MongoCollection<org.bson.Document> |
schedulerCollection |
java.lang.String |
schedulerName |
| Constructor and Description |
|---|
SchedulerDao(com.mongodb.client.MongoCollection<org.bson.Document> schedulerCollection,
java.lang.String schedulerName,
java.lang.String instanceId,
long clusterCheckinIntervalMillis,
Clock clock) |
| Modifier and Type | Method and Description |
|---|---|
void |
checkIn()
Checks-in in cluster to inform other nodes that its alive.
|
void |
createIndex() |
Scheduler |
findInstance(java.lang.String instanceId) |
java.util.List<Scheduler> |
getAllByCheckinTime()
Return all scheduler instances in ascending order by last check-in time.
|
com.mongodb.client.MongoCollection<org.bson.Document> |
getCollection() |
boolean |
isNotSelf(Scheduler scheduler) |
boolean |
remove(java.lang.String instanceId,
long lastCheckinTime)
Remove selected scheduler instance entry from database.
|
public static final java.lang.String SCHEDULER_NAME_FIELD
public static final java.lang.String INSTANCE_ID_FIELD
public static final java.lang.String LAST_CHECKIN_TIME_FIELD
public static final java.lang.String CHECKIN_INTERVAL_FIELD
public final com.mongodb.client.MongoCollection<org.bson.Document> schedulerCollection
public final java.lang.String schedulerName
public final java.lang.String instanceId
public final long clusterCheckinIntervalMillis
public final Clock clock
public SchedulerDao(com.mongodb.client.MongoCollection<org.bson.Document> schedulerCollection,
java.lang.String schedulerName,
java.lang.String instanceId,
long clusterCheckinIntervalMillis,
Clock clock)
public com.mongodb.client.MongoCollection<org.bson.Document> getCollection()
public void createIndex()
public void checkIn()
public Scheduler findInstance(java.lang.String instanceId)
public boolean isNotSelf(Scheduler scheduler)
public java.util.List<Scheduler> getAllByCheckinTime()
public boolean remove(java.lang.String instanceId,
long lastCheckinTime)
instanceId - instance idlastCheckinTime - last time scheduler has checked in