Class ThrottlingAggregator<T>
- java.lang.Object
- 
- com.inductiveautomation.ignition.common.util.ThrottlingAggregator<T>
 
- 
 public class ThrottlingAggregator<T> extends java.lang.ObjectAggregates items, grouping them if they are submitted consecutively within a specified delay or if a specified maximum delivery frequency dictates that no more deliveries can be made at the time.Delivery happens when either of the following occur: - The time since the last item submitted is longer than the specified delay and a delivery wasn't sent out too recently.
- There are items waiting to be delivered and a period of time longer than the specified frequency elapses.
 
- 
- 
Nested Class SummaryNested Classes Modifier and Type Class Description static interfaceThrottlingAggregator.Callback<T>
 - 
Constructor SummaryConstructors Constructor Description ThrottlingAggregator(long delay, long maxFrequency, ThrottlingAggregator.Callback<T> callback)Create aThrottlingAggregatorwith the given parameters.
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description voidprocessItem(T item)
 
- 
- 
- 
Constructor Detail- 
ThrottlingAggregatorpublic ThrottlingAggregator(long delay, long maxFrequency, ThrottlingAggregator.Callback<T> callback)Create aThrottlingAggregatorwith the given parameters.- Parameters:
- delay- How long to wait for another call to processItem before attempting delivery. During this delay is where aggregation happens.
- maxFrequency- The maximum frequency at which aggregated items should be delivered.
- callback- A callback that aggregated items will be delivered to.
 
 
- 
 - 
Method Detail- 
processItempublic void processItem(T item) 
 
- 
 
-