module Mongo::BulkWrite::Combineable

Defines behaviour around combiners

@api private

@since 2.1.0

Attributes

requests[R]

@return [ Array<Hash, BSON::Document> ] requests The provided requests.

Public Class Methods

new(requests) click to toggle source

Create the ordered combiner.

@api private

@example Create the ordered combiner.

OrderedCombiner.new([{ insert_one: { _id: 0 }}])

@param [ Array<Hash, BSON::Document> ] requests The bulk requests.

@since 2.1.0

# File lib/mongo/bulk_write/combineable.rb, line 38
def initialize(requests)
  @requests = requests
end

Private Instance Methods

combine_requests(ops) click to toggle source
# File lib/mongo/bulk_write/combineable.rb, line 44
def combine_requests(ops)
  requests.reduce(ops) do |operations, request|
    add(operations, request.keys.first, request.values.first)
  end
end