class Trustly::JSONRPCNotificationRequest
Attributes
notification_body[RW]
payload[RW]
Public Class Methods
new(notification_body)
click to toggle source
Calls superclass method
Trustly::Data::new
# File lib/trustly/data/jsonrpcnotification_request.rb, line 5 def initialize(notification_body) super() self.notification_body = notification_body unless self.notification_body.is_a?(Hash) begin self.payload = JSON.parse(self.notification_body) rescue JSON::ParserError => e raise Trustly::Exception::DataError, e.message end raise Trustly::Exception::JSONRPCVersionError, 'JSON RPC Version #{(self.get_version()} is not supported' if self.get_version() != '1.1' else self.payload = self.notification_body.deep_stringify_keys end end
Public Instance Methods
get_data(name=nil)
click to toggle source
# File lib/trustly/data/jsonrpcnotification_request.rb, line 42 def get_data(name=nil) if name.nil? raise KeyError,"Data not present" if self.payload.try(:[],"params").nil? || self.payload["params"].try(:[],"data").nil? return self.payload["params"]["data"] else raise KeyError,"#{name} is not present in data" if name.nil? || self.payload.try(:[],"params").nil? || self.payload["params"].try(:[],"data").nil? || self.payload["params"]["data"].try(:[],name).nil? return self.payload["params"]["data"][name] end end
get_method()
click to toggle source
# File lib/trustly/data/jsonrpcnotification_request.rb, line 25 def get_method() return self.get('method') end
get_params(name)
click to toggle source
# File lib/trustly/data/jsonrpcnotification_request.rb, line 37 def get_params(name) raise KeyError,"#{name} is not present in params" if name.nil? || self.payload.try(:[],"params").nil? || self.payload["params"].try(:[],name).nil? return self.payload["params"][name] end
get_signature()
click to toggle source
# File lib/trustly/data/jsonrpcnotification_request.rb, line 33 def get_signature() return self.get_params('signature') end
get_uuid()
click to toggle source
# File lib/trustly/data/jsonrpcnotification_request.rb, line 29 def get_uuid() return self.get_params('uuid') end
get_version()
click to toggle source
# File lib/trustly/data/jsonrpcnotification_request.rb, line 21 def get_version() return self.get('version') end