smartystreets_ruby_sdk 5.3.1 → 5.3.2
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.
@@ -7,6 +7,7 @@ require_relative 'url_prefix_sender'
|
|
7
7
|
require_relative 'sleeper'
|
8
8
|
require_relative 'logger'
|
9
9
|
require_relative 'proxy'
|
10
|
+
require_relative 'custom_header_sender'
|
10
11
|
require_relative 'us_street/client'
|
11
12
|
require_relative 'us_zipcode/client'
|
12
13
|
require_relative 'us_extract/client'
|
@@ -32,6 +33,7 @@ module SmartyStreets
|
|
32
33
|
@max_timeout = 10
|
33
34
|
@url_prefix = nil
|
34
35
|
@proxy = nil
|
36
|
+
@headers = nil
|
35
37
|
end
|
36
38
|
|
37
39
|
# Sets the maximum number of times to retry sending the request to the API. (Default is 5)
|
@@ -84,6 +86,15 @@ module SmartyStreets
|
|
84
86
|
self
|
85
87
|
end
|
86
88
|
|
89
|
+
# Allows you to submit custom headers using a Hash.
|
90
|
+
# headers is a Hash object.
|
91
|
+
#
|
92
|
+
# Returns self to accommodate method chaining.
|
93
|
+
def with_custom_headers(headers)
|
94
|
+
@headers = headers
|
95
|
+
self
|
96
|
+
end
|
97
|
+
|
87
98
|
def build_international_street_api_client
|
88
99
|
ensure_url_prefix_not_null(INTERNATIONAL_STREET_API_URL)
|
89
100
|
InternationalStreet::Client.new(build_sender, @serializer)
|
@@ -116,6 +127,8 @@ module SmartyStreets
|
|
116
127
|
|
117
128
|
sender = StatusCodeSender.new(sender)
|
118
129
|
|
130
|
+
sender = CustomHeaderSender.new(sender, @headers) unless @headers.nil?
|
131
|
+
|
119
132
|
sender = SigningSender.new(@signer, sender) unless @signer.nil?
|
120
133
|
|
121
134
|
sender = RetrySender.new(@max_retries, sender, SmartyStreets::Sleeper.new,SmartyStreets::Logger.new) if @max_retries > 0
|
@@ -42,6 +42,9 @@ module SmartyStreets
|
|
42
42
|
request['User-Agent'] = "smartystreets (sdk:ruby@#{SmartyStreets::VERSION})"
|
43
43
|
request['Referer'] = smarty_request.referer unless smarty_request.referer.nil?
|
44
44
|
set_custom_headers(smarty_request.headers, request)
|
45
|
+
for key in request.each_key
|
46
|
+
puts(key + " " + request[key])
|
47
|
+
end
|
45
48
|
request
|
46
49
|
end
|
47
50
|
|
@@ -68,8 +71,12 @@ module SmartyStreets
|
|
68
71
|
|
69
72
|
def self.set_custom_headers(smarty_headers, request)
|
70
73
|
smarty_headers.each do |key, values|
|
71
|
-
values.each
|
72
|
-
|
74
|
+
if values.respond_to? :each
|
75
|
+
values.each do |value|
|
76
|
+
request.add_field(key, value)
|
77
|
+
end
|
78
|
+
else
|
79
|
+
request.add_field(key, values)
|
73
80
|
end
|
74
81
|
end
|
75
82
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: smartystreets_ruby_sdk
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 5.3.
|
4
|
+
version: 5.3.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: exe
|
11
11
|
cert_chain: []
|
12
|
-
date: 2018-
|
12
|
+
date: 2018-04-27 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: bundler
|