Class: Mongo::Operation::MapReduce::Result
- Defined in:
- build/ruby-driver-v2.17/lib/mongo/operation/map_reduce/result.rb
Overview
Defines custom behavior of results for a map reduce operation.
Constant Summary collapse
- COUNTS =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
The counts field for the map/reduce.
'counts'.freeze
- RESULTS =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
The field name for a result without a cursor.
'results'.freeze
- TIME =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
The time the operation took constant.
'timeMillis'.freeze
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
Attributes inherited from Result
#connection_description, #replies
Instance Method Summary collapse
-
#counts ⇒ Hash
Gets the map/reduce counts from the reply.
-
#cursor_id ⇒ Integer
private
Get the cursor id.
-
#documents ⇒ Array<BSON::Document>
Get the documents from the map/reduce.
-
#successful? ⇒ true, false
If the result was a command then determine if it was considered a success.
-
#time ⇒ Integer
Get the execution time of the map/reduce.
-
#validate! ⇒ Result
private
Validate the result by checking for any errors.
Methods inherited from Result
#acknowledged?, #cluster_time, #each, #error, #initialize, #inspect, #labels, #namespace, #ok?, #operation_time, #reply, #returned_count, #snapshot_timestamp, #topology_version, #write_concern_error?, #written_count
Constructor Details
This class inherits a constructor from Mongo::Operation::Result
Instance Method Details
#counts ⇒ Hash
Gets the map/reduce counts from the reply.
55 56 57 |
# File 'build/ruby-driver-v2.17/lib/mongo/operation/map_reduce/result.rb', line 55 def counts reply.documents[0][COUNTS] end |
#cursor_id ⇒ Integer
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 cursor id.
130 131 132 |
# File 'build/ruby-driver-v2.17/lib/mongo/operation/map_reduce/result.rb', line 130 def cursor_id 0 end |
#documents ⇒ Array<BSON::Document>
Get the documents from the map/reduce.
68 69 70 |
# File 'build/ruby-driver-v2.17/lib/mongo/operation/map_reduce/result.rb', line 68 def documents reply.documents[0][RESULTS] || reply.documents[0][RESULT] end |
#successful? ⇒ true, false
If the write was unacknowledged, then this will always return true.
If the result was a command then determine if it was considered a success.
85 86 87 |
# File 'build/ruby-driver-v2.17/lib/mongo/operation/map_reduce/result.rb', line 85 def successful? !documents.nil? end |
#time ⇒ Integer
Get the execution time of the map/reduce.
98 99 100 |
# File 'build/ruby-driver-v2.17/lib/mongo/operation/map_reduce/result.rb', line 98 def time reply.documents[0][TIME] end |
#validate! ⇒ 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.
This only checks for errors with writes since authentication is handled at the connection level and any authentication errors would be raised there, before a Result is ever created.
Validate the result by checking for any errors.
117 118 119 |
# File 'build/ruby-driver-v2.17/lib/mongo/operation/map_reduce/result.rb', line 117 def validate! documents.nil? ? raise_operation_failure : self end |