halfpipe 0.0.2 → 0.0.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +5 -0
- data/Gemfile.lock +2 -1
- data/lib/halfpipe/http.rb +10 -3
- data/lib/halfpipe/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: bcd1bfe23d449040fcb12b212b971a83a3367c3f3871f854f16c650a3d307f73
|
4
|
+
data.tar.gz: 9472be4c949c195b6765efdfb19c828fa5ee4b538f3a88fbcfa28e4e83ed6cfd
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8341fd67d3e2b501c998a832db132cf8c0cacb3ae323d20d796d6dd234fe0adb3fce1009f1c5972d2892ee569c80132668d566ce9afa515e9914ab745e94e876
|
7
|
+
data.tar.gz: 0b13659babef59eaa2152b9c97cc3e64e43e352af041fe9a22b6f91eb323bdfdb8db7c541e68bb2c912d98d7aea7478b919db5a121e978ea567c1c5926b97cb9
|
data/CHANGELOG.md
CHANGED
data/Gemfile.lock
CHANGED
data/lib/halfpipe/http.rb
CHANGED
@@ -13,8 +13,10 @@ module Halfpipe
|
|
13
13
|
res = Net::HTTP.get_response(uri)
|
14
14
|
json = parse_json(res)
|
15
15
|
|
16
|
-
if
|
17
|
-
|
16
|
+
if unauthorized?(res)
|
17
|
+
raise Error.new("Pipedrive API returned #{res.code} unauthorized. Verify your API token and subdomain?")
|
18
|
+
elsif rate_limited?(res)
|
19
|
+
wait_time = res["x-ratelimit-reset"].to_i + 1
|
18
20
|
puts "Reached rate limit, sleeping #{wait_time}"
|
19
21
|
sleep wait_time
|
20
22
|
get(path, params: params, start: start)
|
@@ -79,8 +81,13 @@ module Halfpipe
|
|
79
81
|
nil
|
80
82
|
end
|
81
83
|
|
84
|
+
def unauthorized?(res)
|
85
|
+
res.code == "401"
|
86
|
+
end
|
87
|
+
|
82
88
|
def rate_limited?(res)
|
83
|
-
res.code == "429" ||
|
89
|
+
res.code == "429" ||
|
90
|
+
(res.key?("x-ratelimit-remaining") && res["x-ratelimit-remaining"].to_i < 1)
|
84
91
|
end
|
85
92
|
|
86
93
|
def raise_failure_maybe!(res, json)
|
data/lib/halfpipe/version.rb
CHANGED