@@ -9,7 +9,7 @@ class FaradayRequestAdapter
99 include MicrosoftKiotaAbstractions ::RequestAdapter
1010
1111 attr_accessor :authentication_provider , :content_type_header_key , :parse_node_factory , :serialization_writer_factory , :client
12-
12+
1313 def initialize ( authentication_provider , parse_node_factory = MicrosoftKiotaAbstractions ::ParseNodeFactoryRegistry . default_instance , serialization_writer_factory = MicrosoftKiotaAbstractions ::SerializationWriterFactoryRegistry . default_instance , client = KiotaClientFactory ::get_default_http_client )
1414
1515 if !authentication_provider
@@ -21,7 +21,7 @@ def initialize(authentication_provider, parse_node_factory=MicrosoftKiotaAbstrac
2121 if @parse_node_factory . nil?
2222 @parse_node_factory = MicrosoftKiotaAbstractions ::ParseNodeFactoryRegistry . default_instance
2323 end
24- @serialization_writer_factory = serialization_writer_factory
24+ @serialization_writer_factory = serialization_writer_factory
2525 if @serialization_writer_factory . nil?
2626 @serialization_writer_factory = MicrosoftKiotaAbstractions ::SerializationWriterFactoryRegistry . default_instance
2727 end
@@ -49,6 +49,7 @@ def send_async(request_info, factory, errors_mapping)
4949 raise StandardError , 'factory cannot be null' unless factory
5050
5151 Fiber . new do
52+ set_base_url_for_request_information ( request_info )
5253 @authentication_provider . authenticate_request ( request_info ) . resume
5354 request = self . get_request_from_request_info ( request_info )
5455 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)
9293 end
9394
9495 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 )
9697 case request_info . http_method
9798 when :GET
9899 request = @client . build_request ( :get )
@@ -118,7 +119,7 @@ def get_request_from_request_info(request_info)
118119 request . path = request_info . uri
119120 unless request_info . headers . nil? then
120121 request . headers = Faraday ::Utils ::Headers . new
121- request_info . headers . get_all . select { |k , v |
122+ request_info . headers . get_all . select { |k , v |
122123 if v . kind_of? Array then
123124 request . headers [ k ] = v . join ( ',' )
124125 elsif v . kind_of? String then
@@ -151,10 +152,16 @@ def get_response_content_type(response)
151152 def convert_to_native_request_async ( request_info )
152153 raise StandardError , 'request_info cannot be null' unless request_info
153154 return Fiber . new do
155+ set_base_url_for_request_information ( request_info )
154156 @authentication_provider . authenticate_request ( request_info ) . resume
155157 return self . get_request_from_request_info ( request_info )
156158 end
157159 end
158160
161+ private
162+
163+ def set_base_url_for_request_information ( request_info )
164+ request_info . path_parameters [ 'baseurl' ] = @base_url
165+ end
159166 end
160167end
0 commit comments