Class Limiter
- java.lang.Object
-
- org.opennms.nephron.testing.flowgen.Limiter
-
- Direct Known Subclasses:
Limiter.FlowsPerSecond
public abstract class Limiter extends Object
Determines if a flow is emitted or not.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classLimiter.FlowsPerSecond
-
Constructor Summary
Constructors Constructor Description Limiter()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract booleancheck(long incr)Checks if the given number of flows may be emitted.static Limiterof(long flowsPerSecond)static Limiterof(long flowsPerSecond, Supplier<Long> currentTimeMillis)static Limiterrestore(long flowsPerSecond, long limiterState)static Limiterrestore(long flowsPerSecond, long limiterState, Supplier<Long> currentTimeMillis)abstract longstate()The current limiter state.
-
-
-
Field Detail
-
OFF
public static Limiter OFF
-
-
Method Detail
-
check
public abstract boolean check(long incr)
Checks if the given number of flows may be emitted.
-
state
public abstract long state()
The current limiter state. Stored in checkmarks.
-
of
public static Limiter of(long flowsPerSecond)
-
restore
public static Limiter restore(long flowsPerSecond, long limiterState)
-
-