Class: Mongo::Protocol::Query::Upconverter
- Herda:
-
Objeto
- Objeto
- Mongo::Protocol::Query::Upconverter
- Definido em:
- lib/mongo/protocol/query.rb
Visão geral
Converte mensagens de query legado para a mensagem de estilo OP_COMMAND apropriado.
Colapsode resumo constante
- OPTION_MAPPINGS =
Mapeamentos das opções para as opções de comando find.
{ projeto: 'projeção', pular: 'skip', limit: 'limit', batch_size: 'batchSize' }.congelar
- speccial_FIELD_MAPPINGS =
{ :$readPreference => '$readPreference', :$orderby => 'sort', :$hint => 'dica', :$comment => 'comment', :$returnKey => 'returnKey', :$snapshot => 'snapshot', :$maxScan => 'maxScan', :$max => 'max', :$min => 'min', :$maxTimeMS => 'maxTimeMS', :$showDiskLoc => 'showRecordId', :$explicar => 'explicar' }.congelar
- FLAG_MAPPINGS =
Mapeamento de sinalizadores para encontrar opções de comando.
{ tailable_cursor: 'tailable', oplog_replay: 'oplogReplay', no_cursor_timeout: 'noCursorTimeout', await_data: 'awaitData', parcial: 'allowPartialResults' }.congelar
Recolhimento do Resumo do atributo de instância
-
#collection ➤ string
Somente leitura
Collection O nome da collection.
-
#filtro ➤ BSON::Document, Hash
Somente leitura
Filtro O filtro ou comando de query.
-
#flags ➤ Array<Symbol>
Somente leitura
Sinalizadores As bandeiras.
-
#options ⇒ BSON::Document, Hash
Somente leitura
Opções As opções.
Recolhimento do Resumo do método de instância
-
#command ➤ BSON::Document
Obtenha o comando convertido.
-
#command_name ➤ string
Obtenha o nome do comando.
-
#initialize(collection, filtro, opções, sinalizadores) ➤ Upconverter
construtor
Instancie o upconverter.
Detalhes do construtor
#initialize(collection, filtro, opções, sinalizadores) ➤ Upconverter
Instancie o upconverter.
279 280 281 282 283 284 285 286 287 288 289 290 |
# Arquivo 'lib/mongo/protocol/query.rb', linha 279 def inicializar(collection, filtro, filtro, , flags) # Embora a docstring declare hashes e BSON::Documents # são aceitáveis, esta classe espera que o filtro e as opções # contém chaves de símbolo que não é o que a camada de operação produz. aumentar ArgumentError, ' Ofiltro deve fornecer acesso indiferente' a menos que filtro, filtro.is_a?(BSON::Documento) aumentar ArgumentError, 'As opções devem fornecer acesso indiferente' a menos que .is_a?(BSON::Documento) @collection = collection @filter = filtro, filtro @opções = @flags = flags end |
Detalhes do atributo da instância
#collection ➤ string (somente leitura)
Retorna collection O nome da collection.
257 258 259 |
# Arquivo 'lib/mongo/protocol/query.rb', linha 257 def collection @collection end |
#filter ➤ BSON::Document, Hash (readonly)
Retorna filtro O filtro de query ou comando.
260 261 262 |
# Arquivo 'lib/mongo/protocol/query.rb', linha 260 def filtro, filtro @filter end |
#flags ➤ Array <Símbolo> (somente leitura)
Retorna sinalizadores As bandeiras.
266 267 268 |
# Arquivo 'lib/mongo/protocol/query.rb', linha 266 def flags @flags end |
#options ➤ BSON::Document, Hash (readonly)
Retorna as opções As opções.
263 264 265 |
# Arquivo 'lib/mongo/protocol/query.rb', linha 263 def @opções end |
Detalhes do método de instância
#command ⇒ BSON::Document
Obtenha o comando convertido.
300 301 302 |
# Arquivo 'lib/mongo/protocol/query.rb', linha 300 def comando comando? ? op_command : find_command end |
#command_name ➤ string
Obtenha o nome do comando. Se a collection for $cmd, será a primeira chave no filtro, caso contrário, será um achado.
313 314 315 |
# Arquivo 'lib/mongo/protocol/query.rb', linha 313 def command_name ((filtro, filtro[:$query] || !comando?) ? :find : filtro, filtro.keys.primeiro).to_s end |