class Serialization
Encodes and decodes session values using MessagePack.
Definitions
def initialize
Initialize a MessagePack factory with session-specific scalar types.
Implementation
def initialize
@factory = MessagePack::Factory.new
@factory.register_type(0x00, Symbol, packer: :to_msgpack_ext, unpacker: :from_msgpack_ext)
@factory.register_type(0x01, Time, packer: :iso8601, unpacker: :parse)
@factory.register_type(0x02, Date, packer: :iso8601, unpacker: :parse)
@factory.register_type(0x03, DateTime, packer: :iso8601, unpacker: :parse)
end
def load(data)
Decode a MessagePack session value.
Signature
-
parameter
dataString The serialized data.
-
returns
Object The decoded value.
Implementation
def load(data)
@factory.unpack(data)
end
def dump(object)
Encode a session value using MessagePack.
Signature
-
parameter
objectObject The value to encode.
-
returns
String The encoded value.
Implementation
def dump(object)
@factory.pack(object)
end