shoptet 0.0.26 → 0.0.31

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: cf65c602c4c267d61e5fb7bd64a993d1da6b2911ea857eea8ca78022eae03a33
4
- data.tar.gz: 1e9ce67fb7dd3fa9059c7a2eb5faa21f32de6ca802aff9ac99244f27687420be
3
+ metadata.gz: fdbf34faa0e1fa994b0c27da950e35159983d6bb31d827c4e45d7ff33c92a368
4
+ data.tar.gz: abfd6916c1bebc36291583fc4826877016bc720ea5405cb7ad911acf183afba7
5
5
  SHA512:
6
- metadata.gz: 72637f126f47c2e7ff0eb2ac9bf797f4b9108f5be4af8a6f43e3e1eae4b11a92a6fa2bcf7db48224904eb97ee1a4c51a86b66e9c8db98d50a6cdcecf3563f251
7
- data.tar.gz: d149fc9bd73a3c5e4135e1f4956a9426b5d8edacd7963698e384454858556aa313473ec87734c2ae5e6ac15f6a4c4dfbe9052290ffd1d1b98255f6dce2a8f198
6
+ metadata.gz: d336ee1c684eb1018cc9a9a643997240928eb649116519a0bfd6ac443e55b90dccef90073b9c5b453352db219da9747d5f82c64745e7f171ba1e130c2a661118
7
+ data.tar.gz: 251688ec6650ce6629a91c9d256f309eeee928c019b1cee1cd57264c9e8e8b88de3fca11ed18181889e357423fe1b61861279b35a405bacee534613ee0d942b9
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- shoptet (0.0.19)
4
+ shoptet (0.0.29)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
data/lib/shoptet.rb CHANGED
@@ -23,7 +23,7 @@ class Shoptet
23
23
  end
24
24
 
25
25
  def self.version
26
- '0.0.26'
26
+ '0.0.31'
27
27
  end
28
28
 
29
29
  def self.ar_on_token_error(model)
@@ -1,23 +1,23 @@
1
1
  require 'net/http'
2
- require 'oj'
2
+ require 'json'
3
3
 
4
4
  class Shoptet
5
5
  class Request
6
6
  def self.get url, headers
7
7
  http = Net::HTTP.new(url.host, url.port)
8
8
  http.use_ssl = true
9
- http.open_timeout = 60
10
- http.read_timeout = 60
11
- http.write_timeout = 60
12
- http.ssl_timeout = 60
9
+ http.open_timeout = 5
10
+ http.read_timeout = 5
11
+ http.write_timeout = 5
12
+ http.ssl_timeout = 5
13
13
 
14
14
  request = Net::HTTP::Get.new(url)
15
15
  headers.each do |key, value|
16
16
  request[key] = value
17
17
  end
18
18
 
19
- response = http.request(request)
20
- parsed_body = Oj.load(response.body, mode: :compat)
19
+ response = handle_net_timeouts { http.request(request) }
20
+ parsed_body = JSON.parse(response.body)
21
21
 
22
22
  unless parsed_body
23
23
  message = "Status code: #{response.code}, url: #{url}"
@@ -32,10 +32,26 @@ class Shoptet
32
32
  request.set_form_data(body)
33
33
 
34
34
  response = Net::HTTP.start(url.host, url.port, use_ssl: true) do |http|
35
- http.request(request)
35
+ handle_net_timeouts { http.request(request) }
36
36
  end
37
37
 
38
- Oj.load(response.body, mode: :compat)
38
+ JSON.parse(response.body)
39
+ end
40
+
41
+ private
42
+
43
+ def self.handle_net_timeouts
44
+ attempts = 0
45
+
46
+ begin
47
+ yield
48
+ rescue Net::OpenTimeout
49
+ raise if attempts > 3
50
+
51
+ attempts += 1
52
+
53
+ retry
54
+ end
39
55
  end
40
56
  end
41
57
  end
data/shoptet.gemspec CHANGED
@@ -22,7 +22,5 @@ Gem::Specification.new do |spec|
22
22
  end
23
23
  spec.require_paths = ["lib"]
24
24
 
25
- spec.add_dependency 'oj'
26
-
27
25
  spec.add_development_dependency 'irb'
28
26
  end
metadata CHANGED
@@ -1,29 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: shoptet
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.26
4
+ version: 0.0.31
5
5
  platform: ruby
6
6
  authors:
7
7
  - Premysl Donat
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-05-06 00:00:00.000000000 Z
11
+ date: 2021-05-15 00:00:00.000000000 Z
12
12
  dependencies:
13
- - !ruby/object:Gem::Dependency
14
- name: oj
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - ">="
18
- - !ruby/object:Gem::Version
19
- version: '0'
20
- type: :runtime
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - ">="
25
- - !ruby/object:Gem::Version
26
- version: '0'
27
13
  - !ruby/object:Gem::Dependency
28
14
  name: irb
29
15
  requirement: !ruby/object:Gem::Requirement