Módulo: Mongo::Protocol::Serializers::Sections::PayloadZero Private

Definido em:
lib/mongo/protocol/serializers.rb

Visão geral

Este módulo faz parte de uma API privada. Você deve evitar usar este módulo, se possível, pois ele pode ser removido ou alterado no futuro.

Estratégia de serialização do protocolo de conexão do MongoDB para uma seção do tipo carga útil 0 de OP_MSG.

Desde:

  • 2.5.0

Colapsode resumo constante

TYPE =

Essa constante faz parte de uma API privada. Você deve evitar usar essa constante, se possível, pois ela pode ser removida ou alterada no futuro.

O identificador de bytes para este tipo de carga útil.

Desde:

  • 2.5.0

0x0
TYPE_BYTE =

Essa constante faz parte de uma API privada. Você deve evitar usar essa constante, se possível, pois ela pode ser removida ou alterada no futuro.

O byte correspondente a este tipo de carga útil.

Desde:

  • 2.5.0

Tipo.chr.force_encoding(BSON::Binário).congelar

Recolhimento do Resumo do método de classe

Detalhes do método de classe

.desserializar(buffer, opções = {}) ➤ Array<BSON::Document>

Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.

Deserializa uma seção do tipo de carga útil 0 de um OP_MSG do fluxo IO.

Parâmetros:

  • buffer (BSON::ByteBuffer)

    Buffer contendo as seções.

  • opções (Hash) (padrão para: {})

Hash de opções (opções):

  • :deserialize_as_bson (Booleano)

    Se deve executar a desserialização de seção usando BSON types em vez de tipos Ruby nativos, sempre que possível.

Retorna:

  • (Array<BSON::Document>)

    Seção desserializada.

Desde:

  • 2.5.0



275
276
277
278
# Arquivo 'lib/mongo/protocol/serializers.rb', linha 275

def auto.desserializar(buffer, opções = {})
  Modo = opções[:deserialize_as_bson] ? :bson : nada
  BSON::Documento.from_bson(buffer, modo: Modo)
end

.serializar(buffer, valor, max_bson_size = nil, _validating_keys = nil) ⇒ BSON::ByteBuffer

Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.

Serializa uma seção de um OP_MSG, tipo de carga útil 0.

Parâmetros:

  • buffer (BSON::ByteBuffer)

    Buffer para receber as seções serializadas.

  • valor (BSON::Document, Hash)

    O objeto a ser serializado.

  • max_bson_size (Fixnum) (padrão para: nil)

    O tamanho máximo de BSON dos documentos na seção.

  • validate_keys (verdadeiro, falso)

    Se deve validar as chaves do documento . Esta opção é preterida e não será utilizada. Ele será removido na versão 3.0.

Retorna:

  • (BSON::ByteBuffer)

    Buffer com valor serializado.

Desde:

  • 2.5.0



258
259
260
261
# Arquivo 'lib/mongo/protocol/serializers.rb', linha 258

def auto.serializar(buffer, valor, max_bson_size = nada, _validating_keys = nada)
  buffer.put_byte(TYPE_BYTE)
  Serializadores::Documento.serializar(buffer, valor, max_bson_size)
end