@@ -9,7 +9,7 @@ class FaradayRequestAdapter
9
9
include MicrosoftKiotaAbstractions ::RequestAdapter
10
10
11
11
attr_accessor :authentication_provider , :content_type_header_key , :parse_node_factory , :serialization_writer_factory , :client
12
-
12
+
13
13
def initialize ( authentication_provider , parse_node_factory = MicrosoftKiotaAbstractions ::ParseNodeFactoryRegistry . default_instance , serialization_writer_factory = MicrosoftKiotaAbstractions ::SerializationWriterFactoryRegistry . default_instance , client = KiotaClientFactory ::get_default_http_client )
14
14
15
15
if !authentication_provider
@@ -21,7 +21,7 @@ def initialize(authentication_provider, parse_node_factory=MicrosoftKiotaAbstrac
21
21
if @parse_node_factory . nil?
22
22
@parse_node_factory = MicrosoftKiotaAbstractions ::ParseNodeFactoryRegistry . default_instance
23
23
end
24
- @serialization_writer_factory = serialization_writer_factory
24
+ @serialization_writer_factory = serialization_writer_factory
25
25
if @serialization_writer_factory . nil?
26
26
@serialization_writer_factory = MicrosoftKiotaAbstractions ::SerializationWriterFactoryRegistry . default_instance
27
27
end
@@ -49,6 +49,7 @@ def send_async(request_info, factory, errors_mapping)
49
49
raise StandardError , 'factory cannot be null' unless factory
50
50
51
51
Fiber . new do
52
+ set_base_url_for_request_information ( request_info )
52
53
@authentication_provider . authenticate_request ( request_info ) . resume
53
54
request = self . get_request_from_request_info ( request_info )
54
55
response = @client . run_request ( request . http_method , request . path , request . body , request . headers )
@@ -92,7 +93,7 @@ def throw_if_failed_reponse(response, errors_mapping)
92
93
end
93
94
94
95
def get_request_from_request_info ( request_info )
95
- request_info . path_parameters [ 'baseurl' ] = @base_url
96
+ set_base_url_for_request_information ( request_info )
96
97
case request_info . http_method
97
98
when :GET
98
99
request = @client . build_request ( :get )
@@ -118,7 +119,7 @@ def get_request_from_request_info(request_info)
118
119
request . path = request_info . uri
119
120
unless request_info . headers . nil? then
120
121
request . headers = Faraday ::Utils ::Headers . new
121
- request_info . headers . get_all . select { |k , v |
122
+ request_info . headers . get_all . select { |k , v |
122
123
if v . kind_of? Array then
123
124
request . headers [ k ] = v . join ( ',' )
124
125
elsif v . kind_of? String then
@@ -151,10 +152,16 @@ def get_response_content_type(response)
151
152
def convert_to_native_request_async ( request_info )
152
153
raise StandardError , 'request_info cannot be null' unless request_info
153
154
return Fiber . new do
155
+ set_base_url_for_request_information ( request_info )
154
156
@authentication_provider . authenticate_request ( request_info ) . resume
155
157
return self . get_request_from_request_info ( request_info )
156
158
end
157
159
end
158
160
161
+ private
162
+
163
+ def set_base_url_for_request_information ( request_info )
164
+ request_info . path_parameters [ 'baseurl' ] = @base_url
165
+ end
159
166
end
160
167
end
0 commit comments