Class: TDL::JSONRPCSerializationProvider

Inherits:
Object
  • Object
show all
Defined in:
lib/tdl/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/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
19
# File 'lib/tdl/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 e if ENV['TDL_ENV'] == 'test'
    raise DeserializationException,'Invalid message format', e.backtrace
  end
end

#serialize(response) ⇒ Object



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

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