ozon-logistics 0.0.3 → 0.0.7

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: 530a419bd4218b9ff284786ee3ac2d95d1914d0ed473d6351acdd3c55cd08858
4
- data.tar.gz: 9fdac760b684ca0d999a98e08c8695e91534b458dd7c0a334060541c93da3f8f
3
+ metadata.gz: ffaf042b4939f2ec4c6b15ea459dd3481271a454cbba2fe57ab3ff5a68f61a6a
4
+ data.tar.gz: 2a8d7916ad20083eb73e88dbb8aef71913fab5c39c922900720fc40e60100588
5
5
  SHA512:
6
- metadata.gz: f0da5fbff0ae9e168eb837c95fc0a221c04b1f5ad2f52e60080618f165aa9175ba555b8839f70381f2d392b362aa88dab3735a8baf65bf54ceeb804a9220db7d
7
- data.tar.gz: 81e3e1b12e19fb15b5548ab9efafed4fc7050b5a373b2e0369f2a4ed224c62de9e1a77bd8e8a86aec219a3f0ba7d562428cc2b1efa63a4c1cc79625cc6807bbc
6
+ metadata.gz: 2c6f855ef682ff805793cdc6238f872deb4b02d921efd7455de1eeec71fb352261011f3425120f9199bbe27c2a2fe205f1eeb0432d87bf5f08ffcd045d1f8652
7
+ data.tar.gz: e3420d7f8b3b5d6ce80a08eabd6a63ad175649d19bc2c73443fd844988ade4f0a4a9db49c9205040701247d926d4cb0b5f8b99209b638cf72f29b33be2f1b8a6
@@ -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,16 @@ module OzonLogistics
14
14
  end
15
15
  parse_response(response)
16
16
  rescue => e
17
- handle_error(e)
17
+ if e.response.dig(: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
+ else
21
+ handle_error(e)
22
+ end
18
23
  end
19
24
  end
20
25
 
21
- def patch(params: nil, headers: nil, body: {})
26
+ def patch(params: nil, headers: nil, body: {}, first_time: true)
22
27
  validate_access_token
23
28
 
24
29
  begin
@@ -28,11 +33,16 @@ module OzonLogistics
28
33
  end
29
34
  parse_response(response)
30
35
  rescue => e
31
- handle_error(e)
36
+ if e.response.dig(:status)== 401 && first_time
37
+ OzonLogistics::Request.access_token = OzonLogistics.generate_access_token.try(:dig, "access_token")
38
+ self.patch(params: params, headers: headers, body: body, first_time: false)
39
+ else
40
+ handle_error(e)
41
+ end
32
42
  end
33
43
  end
34
44
 
35
- def put(params: nil, headers: nil, body: {})
45
+ def put(params: nil, headers: nil, body: {}, first_time: true)
36
46
  validate_access_token
37
47
 
38
48
  begin
@@ -41,11 +51,16 @@ module OzonLogistics
41
51
  end
42
52
  parse_response(response)
43
53
  rescue => e
44
- handle_error(e)
54
+ if e.response.dig(:status) == 401 && first_time
55
+ OzonLogistics::Request.access_token = OzonLogistics.generate_access_token.try(:dig, "access_token")
56
+ self.put(params: params, headers: headers, body: body, first_time: false)
57
+ else
58
+ handle_error(e)
59
+ end
45
60
  end
46
61
  end
47
62
 
48
- def get(params: nil, headers: nil)
63
+ def get(params: nil, headers: nil, first_time: true)
49
64
  validate_access_token
50
65
 
51
66
  begin
@@ -54,11 +69,16 @@ module OzonLogistics
54
69
  end
55
70
  parse_response(response)
56
71
  rescue => e
57
- handle_error(e)
72
+ if e.response.dig(:status) == 401 && first_time
73
+ OzonLogistics::Request.access_token = OzonLogistics.generate_access_token.try(:dig, "access_token")
74
+ self.get(params: params, headers: headers, first_time: false)
75
+ else
76
+ handle_error(e)
77
+ end
58
78
  end
59
79
  end
60
80
 
61
- def delete(params: nil, headers: nil)
81
+ def delete(params: nil, headers: nil, first_time: true)
62
82
  validate_access_token
63
83
 
64
84
  begin
@@ -67,7 +87,12 @@ module OzonLogistics
67
87
  end
68
88
  parse_response(response)
69
89
  rescue => e
70
- handle_error(e)
90
+ if e.response.dig(:status) == 401 && first_time
91
+ OzonLogistics::Request.access_token = OzonLogistics.generate_access_token.try(:dig, "access_token")
92
+ self.delete(params: params, headers: headers, first_time: false)
93
+ else
94
+ handle_error(e)
95
+ end
71
96
  end
72
97
  end
73
98
 
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.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Pavel Osetrov