Class: Mongo::Protocol::Query::Upconverter
- Hereda:
-
Objeto
- Objeto
- Mongo::Protocol::Query::Upconverter
- Definido en:
- lib/mongo/protocolo/query.rb
Overview
Convierte mensajes de query heredados al mensaje de estilo OP_COMMAND apropiado.
Resumen de constantes colapsar
- OPTION_MAPPINGS =
Mapeos de las opciones a las opciones del comando find.
{ Proyecto: 'proyección', saltar: 'skip', limit: 'limit', batch_size: 'batchSize' }.freeze
- SPECIAL_FIELD_MAPPINGS =
{ :$readPreference => '$readPreference', .:$orderby => 'sort', :$hint => 'hint', :$comment => 'comment', ::$returnKey => 'returnKey', Instantánea => 'snapshot', $maxScan => 'maxScan', :$máx => 'max', :$min => 'min', :$maxTimeMS => 'maxTimeMS', :$showDiskLoc => 'showRecordId', :$explain => 'explicar' }.freeze
- FLAG_MAPPINGS =
Asignación de indicadores para encontrar las opciones de comandos.
{ tailable_cursor: 'tailable', oplog_replay: 'oplogReplay', no_cursor_timeout: 'noCursorTimeout', await_data: 'awaitData', parcial: 'allowPartialResults' }.freeze
Resumen de atributos de la instancia colapsar
-
#colección ⇒ String
Solo lectura
Colección El nombre de la colección.
-
#filtro ⇒ BSON::Documento, Hash
Solo lectura
Filtro El filtro de query o instrucción.
-
#flags ⇒ arreglo<Symbol>
Solo lectura
Banderas Las banderas.
-
#options ⇒ BSON::Document, Hash
Solo lectura
Opciones Las opciones.
Resumen del método de instancia colapsar
-
#command ⇒ BSON::Document
Obtén el comando actualizado.
-
#command_name ⇒ String
Obtenga el nombre del comando.
-
#inicializar(colección, filtro, opciones, banderas) ⇒ Upconvertidor
constructor
Instancie el convertidor ascendente.
Detalles del Constructor
#initialize(colección, filtro, options, flags) ⇒ Upconverter
Instancie el convertidor ascendente.
279 280 281 282 283 284 285 286 287 288 289 290 |
# Archivo 'lib/mongo/protocolo/query.rb', línea 279 def inicializar(Colección, filtro, , flags) # Aunque la definición de documento afirma tanto los hashes como los BSON::Documents # son aceptables, esta clase espera que el filtro y las opciones sean # contiene claves de símbolos, que no es lo que produce la capa de operaciones. propagar ArgumentError, 'El filtro debe proporcionar acceso indiferente' a menos que filtro.is_a?(BSON::Documento) propagar ArgumentError, 'Las opciones deben proporcionar acceso indiferente' a menos que .is_a?(BSON::Documento) @colección = Colección @filtro = filtro @options = @flags = flags end |
Detalles de atributo de instancias
#colección ⇒ String (readonly)
Devuelve colección El nombre de la colección.
257 258 259 |
# Archivo 'lib/mongo/protocolo/query.rb', línea 257 def Colección @colección end |
#filter ⇒ BSON::Document, Hash (solo lectura)
Returns filter El filtro o comando de consulta.
260 261 262 |
# Archivo 'lib/mongo/protocolo/query.rb', línea 260 def filtro @filtro end |
#banderas ⇒ arreglo<Símbolo> (solo lectura)
Devuelve las banderas.
266 267 268 |
# Archivo 'lib/mongo/protocolo/query.rb', línea 266 def flags @flags end |
#Opciones ⇒ BSON::Document, Hash (solo lectura)
Devuelve opciones Las opciones.
263 264 265 |
# Archivo 'lib/mongo/protocolo/query.rb', línea 263 def @options end |
Detalles del método de instancia
#command ⇒ BSON::Document
Obtén el comando actualizado.
300 301 302 |
# Archivo 'lib/mongo/protocolo/query.rb', línea 300 def Comando ¿comando? ? op_command : find_command end |
#command_name ⇒ String
Obtenga el nombre del comando. Si la colección es $cmd, entonces es la primera clave en el filtro. De lo contrario, es una búsqueda.
313 314 315 |
# Archivo 'lib/mongo/protocolo/query.rb', línea 313 def command_name ((filtro[Consulta de cifra ($query)] || !¿comando?) ? Buscar : filtro.claves.primero).to_s end |