class Mongo::Operation::Write::Command::DropIndex
A MongoDB drop index write command operation.
@example Create the drop index operation.
Write::Command::DropIndex.new({ :index => { :foo => 1 }, :db_name => 'test', :coll_name => 'test_coll', :index_name => 'foo_1' })
@since 2.0.0
Public Instance Methods
execute(server)
click to toggle source
Execute the operation.
@example Execute the operation.
operation.execute(server)
@param [ Mongo::Server ] server The server to send this operation to.
@return [ Result ] The operation response, if there is one.
@since 2.5.0
# File lib/mongo/operation/write/command/drop_index.rb, line 47 def execute(server) result = Result.new(server.with_connection do |connection| connection.dispatch([ message(server) ], operation_id) end) server.update_cluster_time(result) session.process(result) if session result.validate! end
Private Instance Methods
message(server)
click to toggle source
# File lib/mongo/operation/write/command/drop_index.rb, line 67 def message(server) sel = update_selector_for_write_concern(selector, server) if server.features.op_msg_enabled? command_op_msg(server, sel, options) else Protocol::Query.new(db_name, Database::COMMAND, sel, options) end end
selector()
click to toggle source
The query selector for this drop index command operation.
@return [ Hash ] The selector describing this insert operation.
@since 2.0.0
# File lib/mongo/operation/write/command/drop_index.rb, line 63 def selector { :dropIndexes => coll_name, :index => index_name } end