Class PerSnapshotOutputRateLimiter
- java.lang.Object
-
- io.siddhi.core.query.output.ratelimit.snapshot.SnapshotOutputRateLimiter<io.siddhi.core.query.output.ratelimit.snapshot.PerSnapshotOutputRateLimiter.RateLimiterState>
-
- io.siddhi.core.query.output.ratelimit.snapshot.PerSnapshotOutputRateLimiter
-
- All Implemented Interfaces:
Schedulable
public class PerSnapshotOutputRateLimiter extends SnapshotOutputRateLimiter<io.siddhi.core.query.output.ratelimit.snapshot.PerSnapshotOutputRateLimiter.RateLimiterState>
Parent implementation for per event periodic snapshot rate limiting. Multiple implementations of this will be there to represent different queries. Snapshot rate limiting will only emit current events representing the snapshot period.
-
-
Field Summary
-
Fields inherited from class io.siddhi.core.query.output.ratelimit.snapshot.SnapshotOutputRateLimiter
lockWrapper, siddhiQueryContext, stateEventCloner, stateHolder, streamEventCloner
-
-
Constructor Summary
Constructors Constructor Description PerSnapshotOutputRateLimiter(Long value, WrappedSnapshotOutputRateLimiter wrappedSnapshotOutputRateLimiter, boolean groupBy, SiddhiQueryContext siddhiQueryContext)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected StateFactory<io.siddhi.core.query.output.ratelimit.snapshot.PerSnapshotOutputRateLimiter.RateLimiterState>init()voidpartitionCreated()voidprocess(ComplexEventChunk complexEventChunk)-
Methods inherited from class io.siddhi.core.query.output.ratelimit.snapshot.SnapshotOutputRateLimiter
cloneComplexEvent, sendToCallBacks, setQueryLock, setStateEventCloner, setStreamEventCloner
-
-
-
-
Constructor Detail
-
PerSnapshotOutputRateLimiter
public PerSnapshotOutputRateLimiter(Long value, WrappedSnapshotOutputRateLimiter wrappedSnapshotOutputRateLimiter, boolean groupBy, SiddhiQueryContext siddhiQueryContext)
-
-
Method Detail
-
init
protected StateFactory<io.siddhi.core.query.output.ratelimit.snapshot.PerSnapshotOutputRateLimiter.RateLimiterState> init()
- Specified by:
initin classSnapshotOutputRateLimiter<io.siddhi.core.query.output.ratelimit.snapshot.PerSnapshotOutputRateLimiter.RateLimiterState>
-
process
public void process(ComplexEventChunk complexEventChunk)
- Specified by:
processin interfaceSchedulable- Specified by:
processin classSnapshotOutputRateLimiter<io.siddhi.core.query.output.ratelimit.snapshot.PerSnapshotOutputRateLimiter.RateLimiterState>
-
partitionCreated
public void partitionCreated()
- Specified by:
partitionCreatedin classSnapshotOutputRateLimiter<io.siddhi.core.query.output.ratelimit.snapshot.PerSnapshotOutputRateLimiter.RateLimiterState>
-
-