Clase: Mongo::Operation::Insert::BulkResult
- Hereda:
-
Resultado
- Objeto
- Resultado
- Mongo::Operación::Insertar::ResultadoMasivo
- Incluye:
- Agregable
- Definido en:
- lib/mongo/operación/insertar/resultado_masivo.rb
Overview
Define el comportamiento personalizado de los resultados para una inserción cuando se envía como parte de un guardado masivo.
Resumen constante
Constantes heredadas de Resultado
Resultado::CURSOR, Resultado::ID_CURSOR, Resultado::PRIMER_LOTE, Resultado::N, Resultado::NAMESPACE, Resultado::SIGUIENTE_LOTE, Resultado::OK, Resultado::RESULTADO
Resumen de atributos de la instancia colapsar
-
#inserted_ids ⇒ Object
Solo lectura
Obtén los ID de los documentos insertados.
Atributos heredados de Resultado
#connection, #connection_description, #connection_global_id, #context, #replies
Resumen del método de instancia colapsar
-
#initialize(replies, connection_description, connection_global_id, ids) ⇒ BulkResult
constructor
privado
Inicializa un nuevo resultado.
-
#inserted_id ⇒ Object
Obtiene el id del documento insertado.
-
#n_inserted ⇒ Integer
Obtiene el número de documentos insertados.
Métodos heredados de Resultado
#acknowledged?, #cluster_time, #cursor_id, #documentos, #each, #error, #has_cursor_id?, #inspect, #labels, #namespace, #ok?, #operation_time, #reply, #returned_count, #snapshot_timestamp, #exitoso?, #topology_version, #validate!, #write_concern_error?, #written_count
Detalles del Constructor
#inicializar(replies, connection_description, connection_global_id, ids) ⇒ BulkResult
Este método es parte de una API privada. Se debe evitar el uso de este método si es posible, ya que podría eliminarse o modificarse en el futuro.
Inicializa un nuevo resultado.
49 50 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 |
# Archivo 'lib/mongo/operation/insert/bulk_result.rb', línea 49 def inicializar(respuestas, connection_description, connection_global_id, identificadores) @replies = [ *respuestas ] si respuestas Este es el campo utilizado para describir la información enviada por los usuarios. = connection_description @connection_global_id = connection_global_id si respuestas && respuestas.primero && (doc = respuestas.primero.Documentos.primero) si errors = doc['writeErrors'] # se insertaron potencialmente algunos documentos bad_indices = {} errors.map hacer |Error| bad_indices[Error['index']] = true end @inserted_ids = [] identificadores.each_with_index hacer |ID, index| @inserted_ids << ID si bad_indices[index].nil? end # No sé si fue reconocido. verificación es necesaria aquí, # en lo que a mí respecta, no duele elsif ¿entendido? && exitoso? # Tenemos una respuesta y la respuesta es exitosa y la # la respuesta no tiene writeErrors - todo se insertó @inserted_ids = identificadores else # Tenemos una respuesta, pero la respuesta no es exitosa y # no tiene errores de escritura: no se insertó nada. # Si se inserta algo, la respuesta no será exitosa # pero tendrá writeErrors @inserted_ids = [] end else # No creo que debamos llegar nunca aquí, pero quién sabe, # Haz que esto actúe como los controladores antiguos @inserted_ids = identificadores end end |
Detalles de atributo de instancias
#inserted_ids ⇒ Objeto (solo lectura)
Obtén los ID de los documentos insertados.
31 32 33 |
# Archivo 'lib/mongo/operation/insert/bulk_result.rb', línea 31 def inserted_ids @inserted_ids end |
Detalles del método de instancia
#inserted_id ⇒ Object
Obtiene el id del documento insertado.
106 107 108 |
# Archivo 'lib/mongo/operation/insert/bulk_result.rb', línea 106 def inserted_id inserted_ids.primero end |
#n_insertado ⇒ Entero
Obtiene el número de documentos insertados.
93 94 95 |
# Archivo 'lib/mongo/operation/insert/bulk_result.rb', línea 93 def n_inserted written_count end |