Classe: Mongo::BulkWrite::ResultCombiner Private
- Herda:
-
Objeto
- Objeto
- Mongo::BulkWrite::ResultCombiner
- Definido em:
- lib/mongo/bulk_write/result_combiner.rb
Visão geral
Esta classe faz parte de uma API privada. Evite usar essa classe, se possível, pois ela pode ser removida ou alterada no futuro.
Combina resultados de gravação em massa.
Recolhimento do Resumo do atributo de instância
-
#count ⇒ Integer
Somente leitura
privado
Contagem O número de documentos em todo o lote.
-
#results ➤ Hash
Somente leitura
privado
Resultados O hash de resultados.
-
#server_addresses ⇒ Array<String>
Somente leitura
privado
Lista deduplicada de endereços "hospedar:port" dos servidores que produziram os resultados da operação combinada.
Recolhimento do Resumo do método de instância
-
#combine!(resultado, contagem) ➤ Objeto
privado
Adiciona um resultado aos resultados gerais.
-
#initialize ⇒ ResultCombiner
construtor
privado
Crie o novo combinador de resultados.
-
#result ⇒ BulkWrite::Result
privado
Obtenha o resultado final.
Detalhes do construtor
#initialize ➤ ResultCombiner
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.
Crie o novo combinador de resultados.
43 44 45 46 47 |
# File 'lib/mongo/bulk_write/result_combiner.rb', linha 43 def inicializar @results = {} @count = 0 @server_addresses = [] end |
Detalhes do atributo da instância
#count ➤ Inteiro (somente leitura)
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.
Retorna a contagem O número de documentos em todo o lote.
26 27 28 |
# File 'lib/mongo/bulk_write/result_combiner.rb', linha 26 def contar @count end |
#results ➤ Hash (somente leitura)
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.
Retorna resultados O hash de resultados.
29 30 31 |
# File 'lib/mongo/bulk_write/result_combiner.rb', linha 29 def Resultados @results end |
#server_addresses ⇒ Array<String> (somente leitura)
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.
Retorna uma lista deduplicada de endereços de "hospedar:porta" dos servidores que produziram os resultados da operação combinada.
33 34 35 |
# File 'lib/mongo/bulk_write/result_combiner.rb', linha 33 def server_addresses @server_addresses end |
Detalhes do método de instância
#combine!(resultado, contagem) ➤ Objeto
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.
Adiciona um resultado aos resultados gerais.
60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 |
# File 'lib/mongo/bulk_write/result_combiner.rb', linha 60 def combinar!(Resultado, contar) # Os erros podem ser comunicados pelo servidor em diversos campos: # writeError, writeErrors, writeConcernError, writeConcernErrors. # Atualmente, apenas os erros fornecidos em writeConcernErrors causarão # contagem não deve ser adicionada, pois esse comportamento é coberto pela # testes de gravações repetíveis. É possível que alguns ou todos os # outros erros também devem ser excluídos ao combinar contagens e # ids, e também é possível que apenas um subconjunto desses erros # campos é realmente possível no contexto de gravações em massa. a menos que Resultado.write_concern_error? combine_counts!(Resultado) combine_ids!(Resultado) end combine_errors!(Resultado) @count += contar @knowledged = Resultado.reconhecido? Semente = Resultado.connection_description&.endereço&.Semente @server_addresses << Semente se Semente && !@server_addresses.incluir?(Semente) end |
#result ⇒ BulkWrite::Result
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.
Obtenha o resultado final.
87 88 89 |
# File 'lib/mongo/bulk_write/result_combiner.rb', linha 87 def Resultado Gravação em massa::Resultado.Novo(Resultados, @knowledged, @server_addresses).validar! end |