shoptet 0.0.29 → 0.0.34

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: 866b74c908239757de5a5dde121f939888c1b3308a7bcf83496af4882bda642a
4
- data.tar.gz: bdbea0cb42f72f45d0b3021e292820c536ca4fd7ac228a756836ae4820e84626
3
+ metadata.gz: 94aaeb044be3d937c013893b263fd6fcf48eec3267737e57a72a0a972e8193b8
4
+ data.tar.gz: 5a86aea9a7a8caf2e3eb93146cc92cf6d14e54adbc910079b11243ae892b7f6b
5
5
  SHA512:
6
- metadata.gz: 4e17a88fa2c52bae48d3b933ff99c35a6ceffbebb690b1798c7c8da02989f1e9fb1c8ddbdea65dc2b69f56133b87da3180b9efa764fea0078272aa7c329ddd66
7
- data.tar.gz: 9cdfcc94049272e0a5a4ca81e283166b4579a35e5f47b2d8586b3ce0138916142f5f02c6ca3ff9515cba34232f1074d9d1a51d706815ed180e331fc3319b51d4
6
+ metadata.gz: 06def3df961091c2000bc13eb685a9507096c53256f57bd2faf7e9991eab09dbec9b3d43131310d303403cec8315688bd9a9dc559f45e03e90f4476f27780528
7
+ data.tar.gz: 763669ff9ee09302d24d379dd0c3901084425511b6878d902e28e30c0e572bedf25f9b698f5bc89163c59811cbf31ee4af6b2e1f65b3fa25db5dd917ea9abd2b
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
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'delegate'
2
4
  require_relative 'shoptet/request'
3
5
  require_relative 'shoptet/api_enumerator'
@@ -23,7 +25,7 @@ class Shoptet
23
25
  end
24
26
 
25
27
  def self.version
26
- '0.0.29'
28
+ '0.0.34'
27
29
  end
28
30
 
29
31
  def self.ar_on_token_error(model)
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  class Shoptet
2
4
  class ApiEnumerator < SimpleDelegator
3
5
  def initialize base_url, filters, data_key, api
@@ -10,10 +12,10 @@ class Shoptet
10
12
  first_page.dig('data', @data_key).each { y.yield _1 }
11
13
 
12
14
  if total_pages > 1
13
- other_pages = 2..(total_pages - 1)
14
- other_pages.each do |page|
15
- result = @api.request(base_url, filters.merge(page: page))
16
- result.dig('data', @data_key).each { y.yield _1 }
15
+ (2..(total_pages - 1)).each do |page|
16
+ @api.request(base_url, filters.merge(page: page))
17
+ .dig('data', @data_key)
18
+ .each { y.yield _1 }
17
19
  end
18
20
 
19
21
  last_page.dig('data', @data_key).each { y.yield _1 }
@@ -1,15 +1,15 @@
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 = 30
10
+ http.read_timeout = 30
11
+ http.write_timeout = 30
12
+ http.ssl_timeout = 30
13
13
 
14
14
  request = Net::HTTP::Get.new(url)
15
15
  headers.each do |key, value|
@@ -17,7 +17,7 @@ class Shoptet
17
17
  end
18
18
 
19
19
  response = handle_net_timeouts { http.request(request) }
20
- parsed_body = Oj.load(response.body, mode: :compat)
20
+ parsed_body = JSON.parse(response.body)
21
21
 
22
22
  unless parsed_body
23
23
  message = "Status code: #{response.code}, url: #{url}"
@@ -35,22 +35,16 @@ class Shoptet
35
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
39
  end
40
40
 
41
41
  private
42
42
 
43
43
  def self.handle_net_timeouts
44
- attempts = 0
45
-
46
44
  begin
47
45
  yield
48
46
  rescue Net::OpenTimeout
49
- raise if attempts > 3
50
-
51
- attempts += 1
52
-
53
- retry
47
+ yield
54
48
  end
55
49
  end
56
50
  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.29
4
+ version: 0.0.34
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-14 00:00:00.000000000 Z
11
+ date: 2021-06-28 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
@@ -78,7 +64,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
78
64
  - !ruby/object:Gem::Version
79
65
  version: '0'
80
66
  requirements: []
81
- rubygems_version: 3.2.13
67
+ rubygems_version: 3.2.15
82
68
  signing_key:
83
69
  specification_version: 4
84
70
  summary: API wrapper for interacting with Shoptet api