Módulo: Mongo::Protocol::Serializers::Document Privado
- Definido en:
- lib/mongo/protocolo/serializadores.rb
Overview
Este módulo forma parte de una API privada. Debe evitar su uso siempre que sea posible, ya que podría eliminarse o modificarse en el futuro.
Estrategia de serialización del protocolo de cable MongoDB para un documento BSON.
Serializa y deserializa un solo documento.
Colapso delresumen del método de clase
-
.deserializar(buffer, opciones = {}) ⇒ Hash
privada
Deserializa un documento de la secuencia IO.
-
.serializar(buffer, valor, tamaño_máximo_bson = nulo, claves_de_validación = nulo) ⇒ Cadena
privada
Serializa un documento en el buffer.
-
.tamaño_limitado? ⇒ verdadero
privada
Si puede haber un límite de tamaño en este tipo después de la serialización.
Detalles del método de clase
.deserializar(buffer,opciones = {}) ⇒ Hash
Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.
Deserializa un documento del flujo de E/S
384 385 386 387 |
# Archivo 'lib/mongo/protocol/serializers.rb', línea 384 def yo.deserializar(buffer, = {}) moda = [:deserializar_como_bson] ? :bson : nulo BSON::Documento.de_bson(buffer, **{ modo: moda }) end |
.serializar(buffer, valor, tamaño_máximo_bson = nulo, claves_de_validación = nulo) ⇒ Cadena
Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.
Serializa un documento en el buffer
364 365 366 367 368 369 370 371 372 |
# Archivo 'lib/mongo/protocol/serializers.rb', línea 364 def yo.fabricar en serie(buffer, valor, tamaño máximo de bson = nulo, validando_claves = nulo) tamaño inicial = buffer.longitud valor.a_bson(buffer) tamaño serializado = buffer.longitud - tamaño inicial Si tamaño máximo de bson && tamaño serializado > tamaño máximo de bson propagar Error::Tamaño máximo de BSON, "Eldocumento excede el tamaño máximo permitido del objeto BSON después de la serialización. Tamaño serializado: #{serialized_size} bytes, tamaño máximo permitido: #{max_bson_size} bytes" end end |
.tamaño_limitado? ⇒ verdadero
Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.
Si puede haber un límite de tamaño en este tipo después de la serialización.
394 395 396 |
# Archivo 'lib/mongo/protocol/serializers.rb', línea 394 def yo.¿size_limited? true end |