Clase: Mongo::Operation::Insert::BulkResult
- Hereda:
-
Resultado
- Objeto
- Resultado
- Mongo::Operación::Insertar::Resultado masivo
- 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::CURSOR_ID, Resultado::PRIMER_LOTE, Resultado::N, Resultado::ESPACIO_DE_NOMBRES, 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_insertado ⇒ Entero
Obtiene el número de documentos insertados.
Métodos heredados de Result
#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(respuestas, descripción de la conexión, id global de la conexión, ids) ⇒ BulkResult
Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.
Inicializa un nuevo 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 |
# Archivo 'lib/mongo/operation/insert/bulk_result.rb', línea 51 def inicializar(respuestas, connection_description, connection_global_id, identificaciones) @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'] #Algunos documentos fueron potencialmente insertados malos_índices = {} errors.map hacer |Error| malos_índices[Error['index']] = true end @inserted_ids = [] identificaciones.cada_con_índice hacer |ID, index| si malos_índices[index].nil? @inserted_ids << ID end end # No sé si fue reconocido. verificación es necesaria aquí, # Por lo que puedo decir, 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 = identificaciones 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á errores de escritura @inserted_ids = [] end else # No creo que lleguemos nunca a este punto, pero quién sabe, # Haz que esto actúe como los controladores antiguos @inserted_ids = identificaciones end end |
Detalles de los atributos de instancia
#inserted_ids ⇒ Objeto (solo lectura)
Obtén los ID de los documentos insertados.
33 34 35 |
# Archivo 'lib/mongo/operation/insert/bulk_result.rb', línea 33 def inserted_ids @inserted_ids end |
Detalles del método de instancia
#inserted_id ⇒ Object
Obtiene el id del documento insertado.
110 111 112 |
# Archivo 'lib/mongo/operation/insert/bulk_result.rb', línea 110 def inserted_id inserted_ids.primero end |
#n_insertado ⇒ Entero
Obtiene el número de documentos insertados.
97 98 99 |
# Archivo 'lib/mongo/operation/insert/bulk_result.rb', línea 97 def n_inserted written_count end |