Class: TDL::JSONRPCSerializationProvider

Inherits:
Object
  • Object
show all
Defined in:
lib/tdl/queue/serialization/json_rpc_serialization_provider.rb

Instance Method Summary collapse

Constructor Details

#initializeJSONRPCSerializationProvider

Returns a new instance of JSONRPCSerializationProvider.



7
8
9
# File 'lib/tdl/queue/serialization/json_rpc_serialization_provider.rb', line 7

def initialize
  @logger = Logging.logger[self]
end

Instance Method Details

#deserialize(msg) ⇒ Object



11
12
13
14
15
16
17
18
# File 'lib/tdl/queue/serialization/json_rpc_serialization_provider.rb', line 11

def deserialize(msg)
  begin
    request_data = JSON.parse(msg.body.gsub("\n", '\n'))
    Request.new(msg, request_data)
  rescue Exception => e
    raise DeserializationException,'Invalid message format: '+msg.body, e.backtrace
  end
end

#serialize(response) ⇒ Object



20
21
22
23
24
25
# File 'lib/tdl/queue/serialization/json_rpc_serialization_provider.rb', line 20

def serialize(response)
  if response
    hash = response.to_h
    JSON.unparse(hash)
  end
end