class Mongo::Operation::ParallelScan::OpMsg

A MongoDB parallelscan operation sent as an op message.

@api private

@since 2.5.2

Public Instance Methods

execute(server) click to toggle source

Execute the operation.

@example

operation.execute(server)

@param [ Mongo::Server ] server The server to send the operation to.

@return [ Mongo::Operation::ParallelScan::Result ] The operation result.

@since 2.5.2

# File lib/mongo/operation/parallel_scan/op_msg.rb, line 40
def execute(server)
  result = Result.new(dispatch_message(server))
  process_result(result, server)
  result.validate!
end

Private Instance Methods

message(server) click to toggle source
# File lib/mongo/operation/parallel_scan/op_msg.rb, line 55
def message(server)
  Protocol::Msg.new(flags, options, command(server))
end
selector(server) click to toggle source
# File lib/mongo/operation/parallel_scan/op_msg.rb, line 48
def selector(server)
  sel = { :parallelCollectionScan => coll_name, :numCursors => cursor_count }
  sel[:maxTimeMS] = max_time_ms if max_time_ms
  sel[:readConcern] = read_concern if read_concern
  sel
end