Module: Mongo::Protocol::Serializers::Bytes Private

Defined in:
build/ruby-driver-master/lib/mongo/protocol/serializers.rb

Overview

This module is part of a private API. You should avoid using this module if possible, as it may be removed or be changed in the future.

MongoDB wire protocol serialization strategy for n bytes.

Writes and fetches bytes from the byte buffer.

Class Method Summary collapse

Class Method Details

.deserialize(buffer, options = {}) ⇒ String

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Deserializes bytes from the byte buffer.

Parameters:

  • buffer (BSON::ByteBuffer)

    Buffer containing the value to read.

  • options (Hash) (defaults to: {})

    The method options.

Options Hash (options):

  • num_bytes (Integer)

    Number of bytes to read.

Returns:

  • (String)

    The bytes.

Since:

  • 2.5.0



453
454
455
456
# File 'build/ruby-driver-master/lib/mongo/protocol/serializers.rb', line 453

def self.deserialize(buffer, options = {})
  num_bytes = options[:num_bytes]
  buffer.get_bytes(num_bytes || buffer.length)
end

.serialize(buffer, value, validating_keys = BSON::Config.validating_keys?) ⇒ BSON::ByteBuffer

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Writes bytes into the buffer.

Parameters:

  • buffer (BSON::ByteBuffer)

    Buffer to receive the bytes.

  • value (String)

    The bytes to write to the buffer.

  • validating_keys (true, false) (defaults to: BSON::Config.validating_keys?)

    Whether to validate keys.

Returns:

  • (BSON::ByteBuffer)

    Buffer with serialized value.

Since:

  • 2.5.0



439
440
441
# File 'build/ruby-driver-master/lib/mongo/protocol/serializers.rb', line 439

def self.serialize(buffer, value, validating_keys = BSON::Config.validating_keys?)
  buffer.put_bytes(value)
end