Class: Mongo::Operation::Commands::UserQuery
- Inherits:
-
Object
- Object
- Mongo::Operation::Commands::UserQuery
- Includes:
- Executable, Specifiable
- Defined in:
- lib/mongo/operation/commands/user_query.rb
Overview
A MongoDB operation to get info of a particular user in a database.
Initialization:
param [ Hash ] spec The specifications for the user query operation.
option spec :user_name [ String ] The name of the user.
option spec :db_name [ String ] The name of the database where the user exists.
option spec :options [ Hash ] Options for the operation.
Constant Summary
Constants included from Specifiable
Specifiable::BYPASS_DOC_VALIDATION, Specifiable::COLLATION, Specifiable::COLL_NAME, Specifiable::CURSOR_COUNT, Specifiable::CURSOR_ID, Specifiable::CURSOR_IDS, Specifiable::DB_NAME, Specifiable::DELETE, Specifiable::DELETES, Specifiable::DOCUMENTS, Specifiable::INDEX, Specifiable::INDEXES, Specifiable::INDEX_NAME, Specifiable::MAX_TIME_MS, Specifiable::OPERATION_ID, Specifiable::OPTIONS, Specifiable::READ, Specifiable::READ_CONCERN, Specifiable::SELECTOR, Specifiable::TO_RETURN, Specifiable::UPDATE, Specifiable::UPDATES, Specifiable::USER, Specifiable::USER_NAME, Specifiable::WRITE_CONCERN
Instance Attribute Summary
Attributes included from Specifiable
Instance Method Summary collapse
-
#execute(server) ⇒ Result
Execute the operation.
Methods included from Specifiable
#==, #bypass_document_validation, #coll_name, #collation, #cursor_count, #cursor_id, #cursor_ids, #db_name, #delete, #deletes, #documents, #index, #index_name, #indexes, #initialize, #max_time_ms, #namespace, #operation_id, #options, #ordered?, #read, #read_concern, #to_return, #update, #updates, #user, #user_name, #write_concern
Instance Method Details
#execute(server) ⇒ Result
Execute the operation.
46 47 48 49 50 51 52 53 54 |
# File 'lib/mongo/operation/commands/user_query.rb', line 46 def execute(server) if server.features.users_info_enabled? UsersInfo.new(spec).execute(server).validate! else server.with_connection do |connection| Result.new(connection.dispatch([ (server) ])).validate! end end end |