Module: Mongo::Protocol::Serializers::Sections Private
- Definido en:
- lib/mongo/protocol/serializers.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 una sección de OP_MSG.
Serializa y deserializa una lista de Secciones.
Definido bajo Namespace
Modules: Carga útil uno, cargaútil cero
Resumen del método de clase colapsar
-
.deserializar(buffer, opciones = {}) ⇒ arreglo<BSON::Document>
privado
Deserializa una sección de un OP_MSG de la secuencia IO.
-
.serializar(buffer, valor, tamaño_máximo_bson = nulo, claves_de_validación = nulo) ⇒ BSON::ByteBuffer
privado
Serializa las secciones de un OP_MSG, tipo de carga útil 0 o 1.
-
.size_limited? ⇒ true
privado
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 = {}) ⇒ Array<BSON::Document>
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 una sección de un OP_MSG de la secuencia IO.
219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 |
# Archivo 'lib/mongo/protocol/serializers.rb', línea 219 def sí mismo.deserializar(buffer, = {}) longitud final = (@flag_bits Y Msg::FLAGS.index(¿Valor de suma de comprobación presente?)) == 1 ? 32 : 0 secciones = [] hasta buffer.longitud == longitud final caso byte = buffer.obtener_byte Cuando Carga útil cero::TIPO_BYTE secciones << Carga útil cero.deserializar(buffer, ) Cuando Carga útil uno::TIPO_BYTE secciones += Carga útil uno.deserializar(buffer, ) else propagar Error::Tipo de carga útil desconocido.Nuevo(byte) end end secciones end |
.serializar(buffer, value, max_bson_size = nil, validating_keys = nil) ⇒ BSON::ByteBuffer
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 las secciones de un OP_MSG, tipo de carga útil 0 o 1.
192 193 194 195 196 197 198 199 200 201 202 203 204 205 |
# Archivo 'lib/mongo/protocol/serializers.rb', línea 192 def sí mismo.serializar(buffer, Valor, tamaño máximo de bson = nulo, validating_keys = nulo) Valor.cada hacer |sección| caso sección[Tipo] Cuando Carga útil cero::Tipo Carga útil cero.serializar(buffer, sección[:payload], tamaño máximo de bson) Cuando nulo Carga útil cero.serializar(buffer, sección[:payload], tamaño máximo de bson) Cuando Carga útil uno::Tipo Carga útil uno.serializar(buffer, sección[:payload], tamaño máximo de bson) else propagar Error::Tipo de carga útil desconocido.Nuevo(sección[Tipo]) end end end |
.size_limited? ⇒ true
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.
240 241 242 |
# Archivo 'lib/mongo/protocol/serializers.rb', línea 240 def sí mismo.¿size_limited? true end |