network_resiliency 0.6.3 → 0.6.4

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: 8052be9b61b7e5b4a1106fb70275a788ad70ac19369064863ba9e14a266f7271
4
- data.tar.gz: 71c787616cd4d2da2e33cb49b9a41891940215afd978bb33d1efdeb6be6e0d88
3
+ metadata.gz: 46125649099a417a46eaf119d48686bbed8090d4840ee13d607372e93df2df6a
4
+ data.tar.gz: 5e38386f5e8616d452383d007b97e4e2a4ae0895ad22eddadc8dcda28081da77
5
5
  SHA512:
6
- metadata.gz: 5140b18fff31f7dd33da2cdc158b89c1e7e573f85ada027fea92adfe9f7a43cf2ac64889269cae102409e7d62aa89183ef11ba803e9c1e91d2d00478e0d9d7fd
7
- data.tar.gz: 4bcba60c3a1d0737f5765f8043939f9a6557bd0946afc18b266d418749abf7f8b3f7cb3b9bbc68b7dc92ff8d28b21750927a91331d882f1b1afefc967ddfaa48
6
+ metadata.gz: a995769d78fbdaeff1ca869f277eaf1aafcf46531b0eb9c35b31e9782f9d4ded7c7f88ba50c6c88f95a0e4e356c1b4aa6e11a55a8a7b04a4622e79751174d9d4
7
+ data.tar.gz: 1e98ffcc20016e723802c9ce6ef2730357d7bf98fb7d86b24a057830f59f2f0fed946c21c0d8a3c4292af9b3013f49f21419e0dba1cbcf40251169c66fe6a4dc
data/CHANGELOG.md CHANGED
@@ -1,3 +1,6 @@
1
+ ### v0.6.4 (2023-11-27)
2
+ - request normalization context
3
+
1
4
  ### v0.6.3 (2023-11-27)
2
5
  - custom request normalization
3
6
 
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- network_resiliency (0.6.3)
4
+ network_resiliency (0.6.4)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -20,7 +20,7 @@ module NetworkResiliency
20
20
 
21
21
  refine Net::HTTP do
22
22
  def normalize_path(path)
23
- NetworkResiliency.normalize_request(:http, path).gsub(
23
+ NetworkResiliency.normalize_request(:http, path, host: address).gsub(
24
24
  Regexp.union(
25
25
  NetworkResiliency::Adapter::HTTP::ID_REGEX,
26
26
  NetworkResiliency::Adapter::HTTP::UUID_REGEX,
@@ -1,3 +1,3 @@
1
1
  module NetworkResiliency
2
- VERSION = "0.6.3"
2
+ VERSION = "0.6.4"
3
3
  end
@@ -104,7 +104,7 @@ module NetworkResiliency
104
104
  @mode = mode
105
105
  end
106
106
 
107
- def normalize_request(adapter, request = nil, &block)
107
+ def normalize_request(adapter, request = nil, **context, &block)
108
108
  unless ADAPTERS.include?(adapter)
109
109
  raise ArgumentError, "invalid adapter: #{adapter}"
110
110
  end
@@ -113,13 +113,17 @@ module NetworkResiliency
113
113
  raise ArgumentError, "specify request or block, but not both"
114
114
  end
115
115
 
116
+ if request.nil? && !context.empty?
117
+ raise ArgumentError, "can not speficy context without request"
118
+ end
119
+
116
120
  @normalize_request ||= {}
117
121
  @normalize_request[adapter] ||= []
118
122
  @normalize_request[adapter] << block if block_given?
119
123
 
120
124
  if request
121
125
  @normalize_request[adapter].reduce(request) do |req, block|
122
- block.call(req)
126
+ block.call(req, **context)
123
127
  end
124
128
  else
125
129
  @normalize_request[adapter]
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: network_resiliency
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.3
4
+ version: 0.6.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daniel Pepper