api-response-cache 0.3.0 → 0.4.0

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: 6a1744cd6108aac753efc5a5cf38079c1788675fafa5bc2c8695c84897fae7c7
4
- data.tar.gz: 468fdcb78eaa81ba103631d7f9b0f82117d5eab96cc8aba6997e0f0934bb24f3
3
+ metadata.gz: 42d4dc9cfef92cb3f4baaecdfa34051a6dd3b73ac2d2b3f597347e833a32e913
4
+ data.tar.gz: 6ba96e207df137c01dc292efc41ce9c3faf9cc075f483dbcfb82144623c18329
5
5
  SHA512:
6
- metadata.gz: f108f0d65d14a914b21eed34c16d90e94dab98cd156089e9956a22d133179f005f198671eca334d67d3976d8291927b0fa1642abbcc19ba041e8b50c2acd2a43
7
- data.tar.gz: 9a9bf54aa694af847138c8eac98f62e39ccf71c0e5077b58c98f2f9daac2f83f514e90a0772b51e0bb49d396357f9c34ed4f8ba9895deab58552ee49114d962d
6
+ metadata.gz: ea83d1da2fb887f325a2c01a3ef2364818fa595cddc16a087e8812b9206d978cd33f9ef5ff01c3b79f8be9be45abb11b3f73bfe937d967478c308c7f66cfe30f
7
+ data.tar.gz: 19b059aea1fb096b7d2bcd76d7d5b3642b7a00da108bcd3753e9c4261bd5ed423028944964c72013a683815ccb4728ac16058b36ff0e7691f2ab339d4c7410d6
@@ -34,11 +34,19 @@ module ApiResponseCache
34
34
  end
35
35
 
36
36
  def cache_path
37
- return @cache_path if @cache_path.present?
38
37
  @cache_path = "api-response-cache/#{@processor_name || @options[:cache_path]}"
38
+
39
39
  if ApiResponseCache.configuration.refresh_by_request_params?
40
- @cache_path = "#{@cache_path}/#{@request.fullpath}"
40
+ @cache_path = "#{@cache_path}#{@request.fullpath}"
41
+ end
42
+
43
+ if ApiResponseCache.configuration.cache_by_headers.present?
44
+ cache_by_headers = ApiResponseCache.configuration.cache_by_headers
45
+ headers = @request.headers.select{ |key, value| cache_by_headers.include?(key) }
46
+ headers_cache_path = headers.to_json
47
+ @cache_path = "#{@cache_path}/#{headers_cache_path}"
41
48
  end
49
+
42
50
  @cache_path
43
51
  end
44
52
 
@@ -1,14 +1,14 @@
1
1
  module ApiResponseCache
2
2
  class Config
3
- attr_accessor :refresh_by_request_params
3
+ attr_accessor :refresh_by_request_params, :cache_by_headers
4
4
 
5
5
  def initialize
6
6
  @refresh_by_request_params = false
7
7
  end
8
8
 
9
-
10
9
  def refresh_by_request_params?
11
- refresh_by_request_params
10
+ @refresh_by_request_params
12
11
  end
12
+
13
13
  end
14
14
  end
@@ -1,3 +1,3 @@
1
1
  module ApiResponseCache
2
- VERSION = "0.3.0"
2
+ VERSION = "0.4.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: api-response-cache
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Uysim Ty
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-06-08 00:00:00.000000000 Z
11
+ date: 2018-06-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rainbow