com.obsidiandynamics.blackstrom.spotter.Lot Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of blackstrom-core Show documentation
Show all versions of blackstrom-core Show documentation
Transactional event fabric for the JVM
The newest version!
package com.obsidiandynamics.blackstrom.spotter;
public final class Lot {
private final int shard;
private long offset = -1;
private long lastAdvancedTime = System.currentTimeMillis();
private boolean logPrinted;
public Lot(int shard) {
this.shard = shard;
}
public int getShard() {
return shard;
}
public long getOffset() {
return offset;
}
boolean tryAdvance(long offset) {
if (offset > this.offset) {
this.offset = offset;
lastAdvancedTime = System.currentTimeMillis();
logPrinted = false;
return true;
} else {
return false;
}
}
void setLogPrinted() {
logPrinted = true;
}
boolean isLogPrinted() {
return logPrinted;
}
public long getLastAdvancedTime() {
return lastAdvancedTime;
}
void setLastAdvanceTime(long lastAdvanceTime) {
this.lastAdvancedTime = lastAdvanceTime;
}
}