Module: Mongo::Protocol::Serializers::Header 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 encabezados de mensajes.

Serializa y deserializa cuatro enteros de 32bits que consisten en la longitud del mensaje, el id de solicitud, el id de respuesta y el código de operación de la tarea.

Resumen del método de clase colapsar

Detalles del método de clase

.deserialize(buffer, opciones = {}) ⇒ arreglo<Fixnum>

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 el valor del encabezado del flujo de E/S

Parámetros:

  • buffer (string)

    Buffer que contiene la cabecera del mensaje.

  • opciones (Hash) (por defecto: {})

    Este método actualmente no acepta opciones.

Devuelve:

  • (arreglo<Fixnum>)

    Arreglo que consiste en la longitud deserializada, ID de solicitud, ID de respuesta y código de operación.



69
70
71
# Archivo 'lib/mongo/protocol/serializers.rb', línea 69

def sí mismo.deserializar(buffer, opciones = {})
  buffer.obtener_bytes(16).desempaquetar(HEADER_PACK)
end

.serializar(buffer, value, validating_keys = nil) ⇒ String

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 el valor del encabezado en el búfer

Parámetros:

  • buffer (string)

    Buffer para recibir el valor serializado.

  • Valor (string)

    Valor del encabezado a serializar.

  • validating_keys (verdadero, falso) (predeterminado: nulo)

    Si las claves deben validarse al serializar. Esta opción está obsoleta y no se utilizará. Se eliminará en la versión 3.0.

Devuelve:

  • (string)

    Búfer con valor serializado.



58
59
60
# Archivo 'lib/mongo/protocol/serializers.rb', línea 58

def sí mismo.serializar(buffer, Valor, validating_keys = nulo)
  buffer.put_bytes(Valor.pack(HEADER_PACK))
end