public class GroupByPerSnapshotOutputRateLimiter extends SnapshotOutputRateLimiter<io.siddhi.core.query.output.ratelimit.snapshot.GroupByPerSnapshotOutputRateLimiter.RateLimiterState>
PerSnapshotOutputRateLimiter
for queries with GroupBy.lockWrapper, siddhiQueryContext, stateEventCloner, stateHolder, streamEventCloner
Constructor and Description |
---|
GroupByPerSnapshotOutputRateLimiter(Long value,
WrappedSnapshotOutputRateLimiter wrappedSnapshotOutputRateLimiter,
boolean groupBy,
SiddhiQueryContext siddhiQueryContext) |
Modifier and Type | Method and Description |
---|---|
protected StateFactory<io.siddhi.core.query.output.ratelimit.snapshot.GroupByPerSnapshotOutputRateLimiter.RateLimiterState> |
init() |
void |
partitionCreated() |
void |
process(ComplexEventChunk complexEventChunk)
Sends the collected unique outputs per group by key upon arrival of timer event from scheduler.
|
cloneComplexEvent, sendToCallBacks, setQueryLock, setStateEventCloner, setStreamEventCloner
public GroupByPerSnapshotOutputRateLimiter(Long value, WrappedSnapshotOutputRateLimiter wrappedSnapshotOutputRateLimiter, boolean groupBy, SiddhiQueryContext siddhiQueryContext)
protected StateFactory<io.siddhi.core.query.output.ratelimit.snapshot.GroupByPerSnapshotOutputRateLimiter.RateLimiterState> init()
init
in class SnapshotOutputRateLimiter<io.siddhi.core.query.output.ratelimit.snapshot.GroupByPerSnapshotOutputRateLimiter.RateLimiterState>
public void process(ComplexEventChunk complexEventChunk)
process
in interface Schedulable
process
in class SnapshotOutputRateLimiter<io.siddhi.core.query.output.ratelimit.snapshot.GroupByPerSnapshotOutputRateLimiter.RateLimiterState>
complexEventChunk
- Incoming ComplexEventChunk
public void partitionCreated()
partitionCreated
in class SnapshotOutputRateLimiter<io.siddhi.core.query.output.ratelimit.snapshot.GroupByPerSnapshotOutputRateLimiter.RateLimiterState>
Copyright © 2019. All rights reserved.