Class: Fog::Storage::GoogleXML::Directories

Inherits:
Collection
  • Object
show all
Defined in:
lib/fog/storage/google_xml/models/directories.rb

Instance Method Summary collapse

Instance Method Details

#allObject


7
8
9
10
# File 'lib/fog/storage/google_xml/models/directories.rb', line 7

def all
  data = service.get_service.body["Buckets"]
  load(data)
end

#get(key, options = {}) ⇒ Object


12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/fog/storage/google_xml/models/directories.rb', line 12

def get(key, options = {})
  remap_attributes(options,             :delimiter  => "delimiter",
                                        :marker     => "marker",
                                        :max_keys   => "max-keys",
                                        :prefix     => "prefix")
  data = service.get_bucket(key, options).body
  directory = new(:key => data["Name"])
  options = {}
  data.each_pair do |k, v|
    if %w(CommonPrefixes Delimiter IsTruncated Marker MaxKeys Prefix).include?(k)
      options[k] = v
    end
  end
  directory.files.merge_attributes(options)
  directory.files.load(data["Contents"])
  directory
rescue Excon::Errors::NotFound
  nil
end