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.
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.
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.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-09-04 UTC."],[[["\u003cp\u003eThis webpage provides documentation for the \u003ccode\u003eThresholdBatcher\u003c/code\u003e class in the Google API Client Library for Java, which is used for batching elements until a time limit or threshold is reached.\u003c/p\u003e\n"],["\u003cp\u003eThe latest version of \u003ccode\u003eThresholdBatcher\u003c/code\u003e is 2.63.1, and the page lists several previous versions, ranging down to version 2.7.1, allowing access to the documentation for each one.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eThresholdBatcher\u003c/code\u003e class queues elements and delivers them in batches to a consumer, triggered by time elapsed or a predefined threshold being exceeded.\u003c/p\u003e\n"],["\u003cp\u003eThe class extends from \u003ccode\u003ejava.lang.Object\u003c/code\u003e and offers a static \u003ccode\u003enewBuilder()\u003c/code\u003e method to create new instances of the ThresholdBatcher as well as a method to \u003ccode\u003eadd\u003c/code\u003e elements, and another to manually \u003ccode\u003epushCurrentBatch\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eadd\u003c/code\u003e method, when adding an element to the batcher, can potentially throw a \u003ccode\u003eFlowController.FlowControlException\u003c/code\u003e if the addition causes any of the batching thresholds to be met.\u003c/p\u003e\n"]]],[],null,[]]