    # File lib/fog/google/models/storage/file.rb, line 106
            def save(options = {})
              requires :body, :directory, :key
              if options != {}
                Fog::Logger.deprecation("options param is deprecated, use acl= instead [light_black](#{caller.first})[/]")
              end
              options['x-goog-acl'] ||= @acl if @acl
              options['Cache-Control'] = cache_control if cache_control
              options['Content-Disposition'] = content_disposition if content_disposition
              options['Content-Encoding'] = content_encoding if content_encoding
              options['Content-MD5'] = content_md5 if content_md5
              options['Content-Type'] = content_type if content_type
              options['Expires'] = expires if expires
              options.merge(metadata)

              data = connection.put_object(directory.key, key, body, options)
              merge_attributes(data.headers.reject {|key, value| ['Content-Length', 'Content-Type'].include?(key)})
              self.content_length = Fog::Storage.get_body_size(body)
              self.content_type ||= Fog::Storage.get_content_type(body)
              true
            end