Class: Trustly::Data::JSONRPCRequest
Instance Attribute Summary
Attributes inherited from Request
#method
#payload
Instance Method Summary
collapse
#get, #get_from, #json, #pop, #set, #set_in, #vacumm
Constructor Details
#initialize(method = nil, data = nil, attributes = nil) ⇒ JSONRPCRequest
Returns a new instance of JSONRPCRequest.
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
# File 'lib/trustly/data/jsonrpc_request.rb', line 3
def initialize(method=nil,data=nil,attributes=nil)
if !data.nil? || !attributes.nil?
self.payload = {"params"=>{}}
unless data.nil?
if !data.is_a?(Hash) && !attributes.nil?
raise TypeError, "Data must be a Hash if attributes is provided"
else
self.payload["params"]["Data"] = data
end
else
self.payload["params"]["Data"] = {}
end
self.payload["params"]["Data"]["Attributes"] = attributes unless attributes.nil?
end
self.payload['method'] = method unless method.nil?
self.payload['params'] = {} unless self.get('params')
self.payload['version'] = '1.1'
end
|
Instance Method Details
#get_attribute(name) ⇒ Object
39
40
41
42
43
44
45
46
47
48
49
|
# File 'lib/trustly/data/jsonrpc_request.rb', line 39
def get_attribute(name)
data = self.get_param('Data')
if data.nil?
attributes = nil
else
attributes = data.try(:[],'Attributes')
end
raise KeyError, "Not found 'Attributes' in data" if attributes.nil?
return attributes.dup if name.nil?
return attributes.try(:[],name)
end
|
#get_data(name = nil) ⇒ Object
31
32
33
34
35
36
37
|
# File 'lib/trustly/data/jsonrpc_request.rb', line 31
def get_data(name=nil)
data = self.get_param('Data')
return data if name.nil?
raise KeyError, "Not found #{name} in data" if data.nil?
return data.dup if name.nil?
return data.try(:[],name)
end
|
#get_method ⇒ Object
86
87
88
89
90
|
# File 'lib/trustly/data/jsonrpc_request.rb', line 86
def get_method()
return self.get('method')
rescue KeyError => e
return nil
end
|
#get_param(name) ⇒ Object
27
28
29
|
# File 'lib/trustly/data/jsonrpc_request.rb', line 27
def get_param(name)
return self.payload['params'].try(:[],name)
end
|
#get_uuid ⇒ Object
76
77
78
79
80
|
# File 'lib/trustly/data/jsonrpc_request.rb', line 76
def get_uuid
return self.get_param('UUID')
rescue KeyError => e
return nil
end
|
#set_attributes(name, value) ⇒ Object
63
64
65
66
67
68
69
70
|
# File 'lib/trustly/data/jsonrpc_request.rb', line 63
def set_attributes(name,value)
unless name.nil?
self.payload['params']['Data'] = {} if self.payload['params'].try(:[],'Data').nil?
self.payload['params']['Data']['Attributes'] = {} if self.payload['params']['Data'].try(:[],'Attributes').nil?
self.payload['params']['Data']['Attributes'][name] = value
end
return value
end
|
#set_data(name, value) ⇒ Object
55
56
57
58
59
60
61
|
# File 'lib/trustly/data/jsonrpc_request.rb', line 55
def set_data(name,value)
unless name.nil?
self.payload['params']['Data'] = {} if self.payload['params'].try(:[],'Data').nil?
self.payload['params']['Data'][name] = value
end
return value
end
|
#set_method(method) ⇒ Object
82
83
84
|
# File 'lib/trustly/data/jsonrpc_request.rb', line 82
def set_method(method)
return self.set('method',method)
end
|
#set_param(name, value) ⇒ Object
51
52
53
|
# File 'lib/trustly/data/jsonrpc_request.rb', line 51
def set_param(name,value)
self.payload['params'][name] = value
end
|
#set_uuid(uuid) ⇒ Object
72
73
74
|
# File 'lib/trustly/data/jsonrpc_request.rb', line 72
def set_uuid(uuid)
return self.set_param('UUID',uuid)
end
|