Package com.google.api.gax.batching
Class ThresholdBatcher<E>
java.lang.Object
com.google.api.gax.batching.ThresholdBatcher<E>
Queues up elements until either a duration of time has passed or any threshold in a given set of
thresholds is breached, and then delivers the elements in a batch to the consumer.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classBuilder for a ThresholdBatcher. -
Method Summary
Modifier and TypeMethodDescriptionvoidAdds an element to the batcher.static <E> ThresholdBatcher.Builder<E>Get a new builder for a ThresholdBatcher.Push the current batch to the batch receiver.
-
Method Details
-
newBuilder
Get a new builder for a ThresholdBatcher. -
add
Adds an element to the batcher. If the element causes the collection to go past any of the thresholds, the batch will be sent to theThresholdBatchReceiver. -
pushCurrentBatch
Push the current batch to the batch receiver. Returns an ApiFuture that completes once the batch has been processed by the batch receiver and the flow controller resources have been released.Note that this future can complete for the current batch before previous batches have completed, so it cannot be depended upon for flushing.
-