active_record_api-request 0.3.4 → 0.3.5
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:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 95b910becd72375f68dbfe2b1d2ae98a7972a63f5497803b2a045886e60168c5
|
4
|
+
data.tar.gz: 421c9cd61aaa12944d7c2fcfabc5686b1cc30968bd6565322abb10a26f6bf3e8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: acf6216e93081547b8de869aa266a74c87b374f7dc27b8341cd5a62dfcd3929f5cde9b0f81b50b1fb28d398fdd9e85f3c4831dc380086078a0486f51371e2148
|
7
|
+
data.tar.gz: a52d0ca8a4fd2f7a1cf69dd23ad19e50d0a0d9a53db8688adc6e175905df7930d8376b35417d68c29ddc398ed979712fc14a5b1a24d5aa5305ccffba68826203
|
@@ -22,6 +22,7 @@ module ActiveRecordApi
|
|
22
22
|
end
|
23
23
|
@app.call(env)
|
24
24
|
rescue Faraday::ClientError => error
|
25
|
+
token_cache.flush
|
25
26
|
if error.response.try(:[], 'code') == 401
|
26
27
|
raise AuthError, error.response
|
27
28
|
else
|
@@ -30,7 +31,11 @@ module ActiveRecordApi
|
|
30
31
|
end
|
31
32
|
|
32
33
|
def retrieve_token
|
33
|
-
|
34
|
+
token_cache.fetch_token Proc.new { TokenRetriever.new(credentials: credentials, host: host, token_path: token_path, debug: debug).fetch_token }
|
35
|
+
end
|
36
|
+
|
37
|
+
def token_cache
|
38
|
+
@token_cache ||= TokenCache.new(debug: debug)
|
34
39
|
end
|
35
40
|
end
|
36
41
|
end
|
@@ -5,6 +5,15 @@ module ActiveRecordApi
|
|
5
5
|
include ActiveAttr::Model
|
6
6
|
attr_accessor :debug
|
7
7
|
|
8
|
+
def flush
|
9
|
+
return unless defined? AUTH_REDIS_POOL
|
10
|
+
AUTH_REDIS_POOL.with do |client|
|
11
|
+
@redis_client = client
|
12
|
+
@redis_client.del('auth_token')
|
13
|
+
release_lock
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
8
17
|
def fetch_token(token_proc)
|
9
18
|
retrieve_token_from_redis(token_proc)
|
10
19
|
end
|