Class: Mongo::Operation::Insert::Result Private

Inherits:
Result
  • Object
show all
Defined in:
lib/mongo/operation/insert/result.rb

Overview

This class is part of a private API. You should avoid using this class if possible, as it may be removed or be changed in the future.

Defines custom behavior of results for an insert.

According to the CRUD spec, reporting the inserted ids is optional. It can be added to this class later, if needed.

Since:

  • 2.0.0

Constant Summary

Constants inherited from Result

Result::CURSOR, Result::CURSOR_ID, Result::FIRST_BATCH, Result::N, Result::NAMESPACE, Result::NEXT_BATCH, Result::OK, Result::RESULT

Instance Attribute Summary collapse

Attributes inherited from Result

#connection_description, #replies

Instance Method Summary collapse

Methods inherited from Result

#acknowledged?, #cluster_time, #cursor_id, #documents, #each, #error, #inspect, #labels, #namespace, #ok?, #operation_time, #reply, #returned_count, #successful?, #topology_version, #validate!, #write_concern_error?, #written_count

Constructor Details

#initialize(replies, connection_description, ids) ⇒ Result

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Initialize a new result.

Examples:

Instantiate the result.

Result.new(replies, inserted_ids)

Parameters:

  • replies (Array<Protocol::Message> | nil)

    The wire protocol replies, if any.

  • connection_description (Server::Description)

    Server description of the server that performed the operation that this result is for.

  • ids (Array<Object>)

    The ids of the inserted documents.

Since:

  • 2.0.0



44
45
46
47
# File 'lib/mongo/operation/insert/result.rb', line 44

def initialize(replies, connection_description, ids)
  super(replies, connection_description)
  @inserted_ids = ids
end

Instance Attribute Details

#inserted_idsObject (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Get the ids of the inserted documents.

Since:

  • 2.0.0



30
31
32
# File 'lib/mongo/operation/insert/result.rb', line 30

def inserted_ids
  @inserted_ids
end

Instance Method Details

#bulk_resultObject

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Since:

  • 2.0.0



61
62
63
# File 'lib/mongo/operation/insert/result.rb', line 61

def bulk_result
  BulkResult.new(@replies, connection_description, @inserted_ids)
end

#inserted_idObject

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Gets the id of the document inserted.

Examples:

Get id of the document inserted.

result.inserted_id

Returns:

  • (Object)

    The id of the document inserted.

Since:

  • 2.0.0



57
58
59
# File 'lib/mongo/operation/insert/result.rb', line 57

def inserted_id
  inserted_ids.first
end