Fix warning: assigned but unused variable
[arvados.git] / lib / google / api_client / request.rb
index bed87a1aeab9e2061695df07849b5da7bdf82c3d..d043e001628cdfc7000d095848518225e5f84c97 100644 (file)
@@ -13,9 +13,7 @@
 # limitations under the License.
 
 require 'faraday'
-require 'faraday/utils'
 require 'faraday/request/multipart'
-require 'multi_json'
 require 'compat/multi_json'
 require 'addressable/uri'
 require 'stringio'
@@ -29,7 +27,7 @@ module Google
     # Represents an API request.
     class Request
       include Google::APIClient::Logging
-      
+
       MULTIPART_BOUNDARY = "-----------RubyApiMultipartPost".freeze
 
       # @return [Hash] Request parameters
@@ -159,7 +157,7 @@ module Google
       # @return [Google::APIClient::Result]
       #   result of API request
       def send(connection, is_retry = false)
-        self.body.rewind if is_retry && self.body.respond_to?(:rewind)          
+        self.body.rewind if is_retry && self.body.respond_to?(:rewind)
         env = self.to_env(connection)
         logger.debug  { "#{self.class} Sending API request #{env[:method]} #{env[:url].to_s} #{env[:request_headers]}" }
         http_response = connection.app.call(env)
@@ -169,7 +167,7 @@ module Google
 
         # Resumamble slightly different than other upload protocols in that it requires at least
         # 2 requests.
-        if result.status == 200 && self.upload_type == 'resumable'
+        if result.status == 200 && self.upload_type == 'resumable' && self.media
           upload = result.resumable_upload
           unless upload.complete?
             logger.debug { "#{self.class} Sending upload body" }
@@ -246,7 +244,7 @@ module Google
           )
         end
 
-        request_env = http_request.to_env(connection)
+        http_request.to_env(connection)
       end
 
       ##
@@ -288,6 +286,7 @@ module Google
             raise ArgumentError, "Can not specify body & body object for simple uploads"
           end
           self.headers['Content-Type'] ||= self.media.content_type
+          self.headers['Content-Length'] ||= self.media.length.to_s
           self.body = self.media
         when "multipart"
           unless options[:body_object]