Package io.datarouter.ratelimiter
Class SimpleRateLimiter
java.lang.Object
io.datarouter.ratelimiter.SimpleRateLimiter
public class SimpleRateLimiter
extends java.lang.Object
-
Field Summary
Fields Modifier and Type Field Description protected java.lang.LongnextAllowed -
Constructor Summary
Constructors Constructor Description SimpleRateLimiter(long rateLimitMilliseconds) -
Method Summary
Modifier and Type Method Description voidcustomDelay(long rateLimit)longgetRateLimitMilliseconds()booleanisAllowed(boolean wait)voidnext()voidwaitForPermission(boolean evenIfExtended, boolean incrementNext)
-
Field Details
-
nextAllowed
protected java.lang.Long nextAllowed
-
-
Constructor Details
-
SimpleRateLimiter
public SimpleRateLimiter(long rateLimitMilliseconds)
-
-
Method Details
-
getRateLimitMilliseconds
public long getRateLimitMilliseconds() -
next
public void next() -
customDelay
public void customDelay(long rateLimit) -
isAllowed
public boolean isAllowed(boolean wait) -
waitForPermission
public void waitForPermission(boolean evenIfExtended, boolean incrementNext)
-