Classe: Mongo::Operation::Insert::BulkResult
- Herda:
-
Resultado
- Objeto
- Resultado
- Mongo::Operação::Insert::BulkResult
- Inclui:
- Agregado
- Definido em:
- build/ruby-driver-v2.19/lib/mongo/operation/insert/bulk_result.rb
Visão geral
Define o comportamento personalizado dos resultados para uma inserção quando enviada como parte de uma escrita em massa.
Resumo constante
Constantes herdadas do resultado
Resultado::CURSOR, Resultado::CURSOR_ID, Resultado::FIRST_BATCH, Resultado::N, Resultado::NAMESPACE, Resultado::NEXT_BATCH, Resultado::OK, Resultado::RESULT
Recolhimento do Resumo do atributo de instância
-
#insert_ids ➤ Objeto
Somente leitura
Obtenha as IDs dos documentos inseridos.
Atributos herdados do Resultado
#connection_description, #connection_global_id, #replies
Recolhimento do Resumo do método de instância
-
#initialize(replica, connection_description, connection_global_id, ids) ➤ BulkResult
construtor
privado
Inicialize um novo resultado.
-
#insert_id ➤ Objeto
Obtém o ID do documento inserido.
-
#n_inserted ⇒ Inteiro
Obtém o número de documentos inseridos.
Métodos herdados do Resultado
#reconhecido?, #cluster_time, #cursor_id, #documents, #each, #error, #has_cursor_id?, #inspect, #labels, #namespace, #ok?, #operation_time, #reply, #returned_count, #snapshot_timestamp, #successful?, #topology_version, #validate!, #write_concern_error?, #written_count
Detalhes do construtor
#initialize(replica, connection_description, connection_global_id, ids) ➤ BulkResult
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.
Inicialize um novo resultado.
51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 |
# File 'build/ruby-driver-v2.19/lib/mongo/operation/insert/bulk_result.rb', linha 51 def inicializar(respostas, connection_description, connection_global_id, ids) @replica = [*respostas] se respostas @connection_description = connection_description @connection_global_id = connection_global_id se respostas && respostas.primeiro && (doc = respostas.primeiro.documentos.primeiro) se errors = doc['writeErrors'] # alguns documentos foram potencialmente inseridos ruim_indices = {} errors.map fazer |Erro| ruim_indices[Erro['índice']] = true end @inserted_ids = [] ids.cada_com_index fazer |id, index| se ruim_indices[index].nada? @inserted_ids << id end end # Não sabe se reconhecido? verificar aqui é necessário, # o melhor que posso dizer que não faz mal elsif reconhecido? && bem-sucedido? # Temos uma resposta e a resposta é bem-sucedida e o # resposta não tem writeErrors - tudo foi inserido @inserted_ids = ids mais # Temos uma resposta e a resposta não é bem-sucedida e # não há writeErrors - nada foi inserido. # Se algo foi inserido, a resposta não será bem-sucedida # mas terá writeErrors @inserted_ids = [] end mais # Não acha que devemos chegar aqui, mas quem sabe, # faça com que se comporte como os drivers antigos @inserted_ids = ids end end |
Detalhes do atributo da instância
#insert_ids ➤ Object (somente leitura)
Obtenha as IDs dos documentos inseridos.
33 34 35 |
# File 'build/ruby-driver-v2.19/lib/mongo/operation/insert/bulk_result.rb', linha 33 def insert_ids @inserted_ids end |
Detalhes do método de instância
#insert_id ➤ Objeto
Obtém o ID do documento inserido.
110 111 112 |
# File 'build/ruby-driver-v2.19/lib/mongo/operation/insert/bulk_result.rb', linha 110 def insert_id insert_ids.primeiro end |
#n_inserted ⇒ Inteiro
Obtém o número de documentos inseridos.
97 98 99 |
# File 'build/ruby-driver-v2.19/lib/mongo/operation/insert/bulk_result.rb', linha 97 def n_inserted escritas_count end |