paymentsds-mpesa 0.1.0.pre.alpha.13 → 0.1.0.pre.alpha.18
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/paymentsds/mpesa/service.rb +18 -13
- data/lib/paymentsds/mpesa/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 88aa84672598eae578bb28ba63afdc58e6d95a03aebad8de4f04b4135a1075aa
|
4
|
+
data.tar.gz: 4567a1ed8243c44b7bc0b091858152a67e65adacbd7757df5191375104f00ab8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9c836c0f1205861cdcdf710ecb85eaca1e8ef22c8db55e0d6a886f17bdfbc6db92c0b751f2416235ce1fce5bc03475f5f4dbbc2f01c298701588a5c369f069bf
|
7
|
+
data.tar.gz: 1e4f4bd904bc8319fe0498a2ac01181b51a411dff0996be85e95441ac57159467a062382af2b853f6c39260496dfe715ea01ab506af791331c73eddf6ee22171
|
@@ -1,4 +1,6 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
|
+
require 'json'
|
3
|
+
require 'faraday'
|
2
4
|
|
3
5
|
module Paymentsds
|
4
6
|
module MPesa
|
@@ -131,6 +133,8 @@ module Paymentsds
|
|
131
133
|
end
|
132
134
|
|
133
135
|
def perform_request(opcode, intent)
|
136
|
+
operation = Paymentsds::MPesa::OPERATIONS[opcode]
|
137
|
+
|
134
138
|
generate_access_token
|
135
139
|
|
136
140
|
request_data = {
|
@@ -143,27 +147,28 @@ module Paymentsds
|
|
143
147
|
body: build_request_body(opcode, intent)
|
144
148
|
}
|
145
149
|
|
146
|
-
http_client = Faraday
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
end
|
151
|
-
|
152
|
-
case operation[:method]
|
150
|
+
http_client = Faraday.new(
|
151
|
+
url: request_data[:base_url],
|
152
|
+
headers: request_data[:headers],
|
153
|
+
)
|
153
154
|
|
155
|
+
case operation[:method]
|
154
156
|
when :get
|
155
|
-
response = http_client.get do |req|
|
156
|
-
req.params = request_data
|
157
|
+
response = http_client.get(request_data[:path]) do |req|
|
158
|
+
req.params = request_data[:body]
|
159
|
+
req.options.timeout = request_data[:timeout]
|
157
160
|
end
|
158
161
|
|
159
162
|
when :post
|
160
|
-
response = http_client.post do |req|
|
161
|
-
req.body = request_data.
|
163
|
+
response = http_client.post(request_data[:path]) do |req|
|
164
|
+
req.body = request_data[:body].to_json
|
165
|
+
req.options.timeout = request_data[:timeout]
|
162
166
|
end
|
163
167
|
|
164
168
|
when :put
|
165
|
-
response = http_client.put do |req|
|
166
|
-
req.body = request_data.
|
169
|
+
response = http_client.put(request_data[:path]) do |req|
|
170
|
+
req.body = request_data[:body].to_json
|
171
|
+
req.options.timeout = request_data[:timeout]
|
167
172
|
end
|
168
173
|
end
|
169
174
|
|