Iris/src/main/java/com/volmit/iris/util/ChronoLatch.java
2020-08-24 08:03:05 -04:00

40 lines
661 B
Java

package com.volmit.iris.util;
public class ChronoLatch
{
private long interval;
private long since;
public ChronoLatch(long interval, boolean openedAtStart)
{
this.interval = interval;
since = System.currentTimeMillis() - (openedAtStart ? interval * 2 : 0);
}
public ChronoLatch(long interval)
{
this(interval, true);
}
public void flipDown()
{
since = System.currentTimeMillis();
}
public boolean couldFlip()
{
return System.currentTimeMillis() - since > interval;
}
public boolean flip()
{
if(System.currentTimeMillis() - since > interval)
{
since = System.currentTimeMillis();
return true;
}
return false;
}
}