ozon-logistics 0.0.3 → 0.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 530a419bd4218b9ff284786ee3ac2d95d1914d0ed473d6351acdd3c55cd08858
4
- data.tar.gz: 9fdac760b684ca0d999a98e08c8695e91534b458dd7c0a334060541c93da3f8f
3
+ metadata.gz: 7e04197096b5e5586b65a1a9fb4fa8fc31599975fc29b837c22bb66355d8ea30
4
+ data.tar.gz: 6aedfbb7e1167f6d62368666ea01e8d29c34722e36a37fd4037b7d65db2332ff
5
5
  SHA512:
6
- metadata.gz: f0da5fbff0ae9e168eb837c95fc0a221c04b1f5ad2f52e60080618f165aa9175ba555b8839f70381f2d392b362aa88dab3735a8baf65bf54ceeb804a9220db7d
7
- data.tar.gz: 81e3e1b12e19fb15b5548ab9efafed4fc7050b5a373b2e0369f2a4ed224c62de9e1a77bd8e8a86aec219a3f0ba7d562428cc2b1efa63a4c1cc79625cc6807bbc
6
+ metadata.gz: 3ff95569e63c572e1c7fccd15b96009785498fb5eb7a4d2a1904f677f5521c0846c5f1b9d6116e9696b7a169e5fcf569392f3a4439f805c32f82a59f68e6a380
7
+ data.tar.gz: 1029a14114a1e6689da6bd7cb1671070d966b2223303144f5050c5847cddb2d97e03ab417bcc5c699e8c47743e648e2b5cb7f7fddc21e4ca63e1f0129fc77093
@@ -5,7 +5,7 @@ module OzonLogistics
5
5
  @request_builder = builder
6
6
  end
7
7
 
8
- def post(params: nil, headers: nil, body: {})
8
+ def post(params: nil, headers: nil, body: {}, first_time: true)
9
9
  validate_access_token
10
10
 
11
11
  begin
@@ -14,11 +14,15 @@ module OzonLogistics
14
14
  end
15
15
  parse_response(response)
16
16
  rescue => e
17
+ if e.response[:status] == 401 && first_time
18
+ OzonLogistics::Request.access_token = OzonLogistics.generate_access_token.try(:dig, "access_token")
19
+ self.post(params: params, headers: headers, body: body, first_time: false)
20
+ end
17
21
  handle_error(e)
18
22
  end
19
23
  end
20
24
 
21
- def patch(params: nil, headers: nil, body: {})
25
+ def patch(params: nil, headers: nil, body: {}, first_time: true)
22
26
  validate_access_token
23
27
 
24
28
  begin
@@ -28,11 +32,15 @@ module OzonLogistics
28
32
  end
29
33
  parse_response(response)
30
34
  rescue => e
35
+ if e.response[:status] == 401 && first_time
36
+ OzonLogistics::Request.access_token = OzonLogistics.generate_access_token.try(:dig, "access_token")
37
+ self.patch(params: params, headers: headers, body: body, first_time: false)
38
+ end
31
39
  handle_error(e)
32
40
  end
33
41
  end
34
42
 
35
- def put(params: nil, headers: nil, body: {})
43
+ def put(params: nil, headers: nil, body: {}, first_time: true)
36
44
  validate_access_token
37
45
 
38
46
  begin
@@ -41,11 +49,15 @@ module OzonLogistics
41
49
  end
42
50
  parse_response(response)
43
51
  rescue => e
52
+ if e.response[:status] == 401 && first_time
53
+ OzonLogistics::Request.access_token = OzonLogistics.generate_access_token.try(:dig, "access_token")
54
+ self.put(params: params, headers: headers, body: body, first_time: false)
55
+ end
44
56
  handle_error(e)
45
57
  end
46
58
  end
47
59
 
48
- def get(params: nil, headers: nil)
60
+ def get(params: nil, headers: nil, first_time: true)
49
61
  validate_access_token
50
62
 
51
63
  begin
@@ -54,11 +66,15 @@ module OzonLogistics
54
66
  end
55
67
  parse_response(response)
56
68
  rescue => e
69
+ if e.response[:status] == 401 && first_time
70
+ OzonLogistics::Request.access_token = OzonLogistics.generate_access_token.try(:dig, "access_token")
71
+ self.get(params: params, headers: headers, first_time: false)
72
+ end
57
73
  handle_error(e)
58
74
  end
59
75
  end
60
76
 
61
- def delete(params: nil, headers: nil)
77
+ def delete(params: nil, headers: nil, first_time: true)
62
78
  validate_access_token
63
79
 
64
80
  begin
@@ -67,6 +83,10 @@ module OzonLogistics
67
83
  end
68
84
  parse_response(response)
69
85
  rescue => e
86
+ if e.response[:status] == 401 && first_time
87
+ OzonLogistics::Request.access_token = OzonLogistics.generate_access_token.try(:dig, "access_token")
88
+ self.delete(params: params, headers: headers, first_time: false)
89
+ end
70
90
  handle_error(e)
71
91
  end
72
92
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ozon-logistics
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Pavel Osetrov