Classe: Mongo::Protocol::Query
- Herda:
-
mensagem
- Objeto
- mensagem
- Mongo::Protocol::Query
- Inclui:
- Monitoramento::Evento::Seguro
- Definido em:
- build/ruby-driver-v2.19/lib/mongo/protocol/query.rb
Visão geral
Mensagem de query do protocolo de fio do MongoDB .
Esta é uma mensagem de solicitação do cliente que é enviada ao servidor para recuperar os documentos correspondentes à query fornecida.
Os usuários também podem fornecer opções adicionais, como uma projeção, para selecionar um subconjunto dos campos, um número a ser ignorado ou um limite no número de documentos retornados.
Há uma variedade de sinalizadores que podem ser usados para ajustar os parâmetros do cursor ou a consistência e integridade desejadas dos resultados.
Definido sob namespace
Classes: Upconverter
Resumo constante
Constantes incluídas no Monitoring::Event::Secure
Monitoramento::Evento::Secure::REDACTED_COMMANDS
Constantes herdadas de Mensagem
Mensagem::BATCH_SIZE, Mensagem::COLLECTION, Mensagem::LIMIT, Mensagem::MAX_MSSAGE_SIZE, Mensagem::ORDERED , Mensagem::Q
Resumo do atributo de instância
Atributos herdados de Mensagem
Recolhimento do Resumo do método de instância
-
#initialize(banco de dados, collection, selector, options = {}) ➤ Query
construtor
Cria uma nova mensagem de query.
-
#may_compress(compressor, zlib_compression_level = nil) ➤ Mensagem
privado
Compacte a mensagem se o comando que está sendo enviado permitir a compressão.
-
#payload ➤ BSON::Document
Retorne a carga útil do evento para monitoramento.
-
#respondível? ➤ verdadeiro
As mensagens de query exigem respostas do banco de banco de dados.
-
#serialize(buffer = BSON::ByteBuffer.new, max_bson_size = nil, bson_overhead = nil) ➤ BSON::ByteBuffer
Serializa a mensagem em bytes que podem ser enviados na transferência.
Métodos incluídos do Monitoring::Event::Secure
#compression_allowed?, #editado, #sensitive?
Métodos herdados de Mensagem
Métodos incluídos do ID
Detalhes do construtor
#initialize(banco de dados, collection, selector, options = {}) ➤ Query
Cria uma nova mensagem de query
64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 |
# File 'build/ruby-driver-v2.19/lib/mongo/protocol/query.rb', linha 64 def inicializar(database, collection, seletor, = {}) @database = database @namespace = "#{database}.#{collection}" se seletor.nada? aumentar ArgumentError, ' Oseletor não pode ser nulo' end @selector = seletor @opções = @ projeto = [: projeto] @limit = determinar_limit @skip = [:skip] || 0 @flags = [: flags] || [] @upconverter = Upconverter.Novo( collection, BSON::Documento.Novo(seletor), BSON::Documento.Novo(), flags, ) super end |
Detalhes do método de instância
#may_compress(compressor, zlib_compression_level = nil) ➤ Mensagem
Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.
Compacte a mensagem se o comando que está sendo enviado permitir a compressão. Caso contrário, retorna auto.
125 126 127 |
# File 'build/ruby-driver-v2.19/lib/mongo/protocol/query.rb', linha 125 def talvez_compress(compressor, compressor, zlib_compression_level = nada) compressor_if_possível(seletor.keys.primeiro, compressor, compressor, zlib_compression_level) end |
#payload ➤ BSON::Document
Retorne a carga útil do evento para monitoramento.
93 94 95 96 97 98 99 100 |
# File 'build/ruby-driver-v2.19/lib/mongo/protocol/query.rb', linha 93 def Carga útil BSON::Documento.Novo( command_name: upconverter.command_name, database_name: @database, comando: upconverter.comando, request_id: request_id ) end |
#respondível? ➤ verdadeiro
As mensagens de query exigem respostas do banco de banco de dados.
110 111 112 |
# File 'build/ruby-driver-v2.19/lib/mongo/protocol/query.rb', linha 110 def respondível? true end |
#serialize(buffer = BSON::ByteBuffer.new, max_bson_size = nil, bson_overhead = nil) ➤ BSON::ByteBuffer
Serializa a mensagem em bytes que podem ser enviados na transferência.
135 136 137 138 139 |
# File 'build/ruby-driver-v2.19/lib/mongo/protocol/query.rb', linha 135 def serializar(buffer = BSON::ByteBuffer.Novo, max_bson_size = nada, bson_overhead = nada) validate_document_size!(max_bson_size) super end |