module Mongo::Protocol::Serializers::Sections::PayloadZero

MongoDB wire protocol serialization strategy for a payload 0 type Section of OP_MSG.

@since 2.5.0

Constants

TYPE

The byte identifier for this payload type.

@since 2.5.0

TYPE_BYTE

The byte corresponding to this payload type.

@since 2.5.0

Public Class Methods

deserialize(buffer) click to toggle source

Deserializes a section of payload type 0 of an OP_MSG from the IO stream.

@param [ BSON::ByteBuffer ] buffer Buffer containing the sections.

@return [ Array<BSON::Document> ] Deserialized section.

@since 2.5.0

# File lib/mongo/protocol/serializers.rb, line 267
def self.deserialize(buffer)
  BSON::Document.from_bson(buffer)
end
serialize(buffer, value, max_bson_size = nil, validating_keys = BSON::Config.validating_keys?) click to toggle source

Serializes a section of an OP_MSG, payload type 0.

@param [ BSON::ByteBuffer ] buffer Buffer to receive the serialized Sections. @param [ BSON::Document, Hash ] value The object to serialize. @param [ Fixnum ] max_bson_size The max bson size of documents in the section. @param [ true, false ] validating_keys Whether to validate document keys.

@return [ BSON::ByteBuffer ] Buffer with serialized value.

@since 2.5.0

# File lib/mongo/protocol/serializers.rb, line 255
def self.serialize(buffer, value, max_bson_size = nil, validating_keys = BSON::Config.validating_keys?)
  buffer.put_byte(TYPE_BYTE)
  Serializers::Document.serialize(buffer, value, max_bson_size, validating_keys)
end