class Mongo::BulkWrite::Result

Wraps a series of bulk write operations in a result object.

@since 2.0.6

Constants

FIELDS

The fields contained in the result document returned from executing the operations.

@since 2.1.0.

INSERTED_COUNT

Constant for number inserted.

@since 2.1.0

INSERTED_IDS

Constant for inserted ids.

@since 2.1.0

MATCHED_COUNT

Constant for number matched.

@since 2.1.0

MODIFIED_COUNT

Constant for number modified.

@since 2.1.0

REMOVED_COUNT

Constant for number removed.

@since 2.1.0

UPSERTED

Constant for upserted.

@since 2.1.0

UPSERTED_COUNT

Constant for number upserted.

@since 2.1.0

UPSERTED_IDS

Constant for upserted ids.

@since 2.1.0

Public Class Methods

new(results) click to toggle source

Create the new result object from the results document.

@example Create the new result.

Result.new({ 'n_inserted' => 10 })

@param [ BSON::Document, Hash ] results The results document.

@since 2.1.0

# File lib/mongo/bulk_write/result.rb, line 96
def initialize(results)
  @results = results
end

Public Instance Methods

deleted_count() click to toggle source

Returns the number of documents deleted.

@example Get the number of deleted documents.

result.deleted_count

@return [ Integer ] The number deleted.

@since 2.1.0

# File lib/mongo/bulk_write/result.rb, line 84
def deleted_count
  @results[REMOVED_COUNT]
end
inserted_count() click to toggle source

Returns the number of documents inserted.

@example Get the number of inserted documents.

result.inserted_count

@return [ Integer ] The number inserted.

@since 2.1.0

# File lib/mongo/bulk_write/result.rb, line 108
def inserted_count
  @results[INSERTED_COUNT]
end
inserted_ids() click to toggle source

Get the inserted document ids, if the operation has inserts.

@example Get the inserted ids.

result.inserted_ids

@return [ Array<BSON::ObjectId> ] The inserted ids.

@since 2.1.0

# File lib/mongo/bulk_write/result.rb, line 120
def inserted_ids
  @results[INSERTED_IDS]
end
matched_count() click to toggle source

Returns the number of documents matched.

@example Get the number of matched documents.

result.matched_count

@return [ Integer ] The number matched.

@since 2.1.0

# File lib/mongo/bulk_write/result.rb, line 132
def matched_count
  @results[MATCHED_COUNT]
end
modified_count() click to toggle source

Returns the number of documents modified.

@example Get the number of modified documents.

result.modified_count

@return [ Integer ] The number modified.

@since 2.1.0

# File lib/mongo/bulk_write/result.rb, line 144
def modified_count
  @results[MODIFIED_COUNT]
end
upserted_count() click to toggle source

Returns the number of documents upserted.

@example Get the number of upserted documents.

result.upserted_count

@return [ Integer ] The number upserted.

@since 2.1.0

# File lib/mongo/bulk_write/result.rb, line 156
def upserted_count
  @results[UPSERTED_COUNT]
end
upserted_ids() click to toggle source

Get the upserted document ids, if the operation has inserts.

@example Get the upserted ids.

result.upserted_ids

@return [ Array<BSON::ObjectId> ] The upserted ids.

@since 2.1.0

# File lib/mongo/bulk_write/result.rb, line 168
def upserted_ids
  @results[UPSERTED_IDS] || []
end
validate!() click to toggle source

Validates the bulk write result.

@example Validate the result.

result.validate!

@raise [ Error::BulkWriteError ] If the result contains errors.

@return [ Result ] The result.

@since 2.1.0

# File lib/mongo/bulk_write/result.rb, line 182
def validate!
  if @results['writeErrors'] || @results['writeConcernErrors']
    raise Error::BulkWriteError.new(@results)
  else
    self
  end
end