class Synapse::Serialization::MessageSerializer
Serializer
that provides convenience methods for serializing messages and adds support for optimizing the serialization process
Public Class Methods
new(serializer)
click to toggle source
@param [Serializer] serializer @return [undefined]
# File lib/synapse/serialization/message/serializer.rb, line 10 def initialize(serializer) @serializer = serializer end
Public Instance Methods
serialize_metadata(message, expected_type)
click to toggle source
Returns the serialized metadata for the given message in the expected type, optimizing the serialization, if possible
@param [Message] message @param [Class] expected_type @return [SerializedObject]
# File lib/synapse/serialization/message/serializer.rb, line 20 def serialize_metadata(message, expected_type) if message.is_a? SerializationAware message.serialize_metadata @serializer, expected_type else serialize message.metadata, expected_type end end
serialize_payload(message, expected_type)
click to toggle source
Returns the serialized payload for the given message in the expected type, optimizing the serialization, if possible
@param [Message] message @param [Class] expected_type @return [SerializedObject]
# File lib/synapse/serialization/message/serializer.rb, line 34 def serialize_payload(message, expected_type) if message.is_a? SerializationAware message.serialize_payload @serializer, expected_type else serialize message.payload, expected_type end end