processes items in batches of 1k items @private
# File lib/aws/s3/object_collection.rb, line 302 def initialize batch_size, &block @batch_size = batch_size @block = block @batch = [] end
# File lib/aws/s3/object_collection.rb, line 312 def add item @batch << item if @batch.size == @batch_size process_batch @batch = [] end item end
# File lib/aws/s3/object_collection.rb, line 308 def after_batch &block @after_batch = block end
# File lib/aws/s3/object_collection.rb, line 321 def complete! process_batch unless @batch.empty? end
# File lib/aws/s3/object_collection.rb, line 326 def process_batch response = @block.call(@batch) @after_batch.call(response) if @after_batch end