Method: Fog::Storage::Google::File#save

Defined in:
lib/fog/google/models/storage/file.rb

#save(options = {}) ⇒ Object



106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
# 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()

  data = connection.put_object(directory.key, key, body, options)
  merge_attributes(data.headers)
  self.content_length = Fog::Storage.get_body_size(body)
  true
end