Sha256: 837cf429445cbaa8bb407b230f2ccd0c4da5276ea6ca5294c21e8089203ddef7

Contents?: true

Size: 1.07 KB

Versions: 39

Compression:

Stored size: 1.07 KB

Contents

module Fog
  module Storage
    class GoogleXML
      class Directories < Fog::Collection
        model Fog::Storage::GoogleXML::Directory

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

        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
      end
    end
  end
end

Version data entries

39 entries across 39 versions & 2 rubygems

Version Path
fog-google-1.24.1 lib/fog/storage/google_xml/models/directories.rb
fog-google-1.24.0 lib/fog/storage/google_xml/models/directories.rb
fog-google-1.23.0 lib/fog/storage/google_xml/models/directories.rb
fog-google-1.22.0 lib/fog/storage/google_xml/models/directories.rb
fog-google-1.21.1 lib/fog/storage/google_xml/models/directories.rb
fog-google-1.21.0 lib/fog/storage/google_xml/models/directories.rb
fog-google-1.20.0 lib/fog/storage/google_xml/models/directories.rb
fog-google-1.19.0 lib/fog/storage/google_xml/models/directories.rb
fog-google-1.18.0 lib/fog/storage/google_xml/models/directories.rb
fog-google-1.17.0 lib/fog/storage/google_xml/models/directories.rb
fog-google-1.16.1 lib/fog/storage/google_xml/models/directories.rb
fog-google-1.16.0 lib/fog/storage/google_xml/models/directories.rb
fog-google-1.15.0 lib/fog/storage/google_xml/models/directories.rb
fog-google-1.14.0 lib/fog/storage/google_xml/models/directories.rb
gitlab-fog-google-1.14.0 lib/fog/storage/google_xml/models/directories.rb
fog-google-1.13.0 lib/fog/storage/google_xml/models/directories.rb
gitlab-fog-google-1.13.0 lib/fog/storage/google_xml/models/directories.rb
fog-google-1.12.1 lib/fog/storage/google_xml/models/directories.rb
fog-google-1.12.0 lib/fog/storage/google_xml/models/directories.rb
fog-google-1.11.0 lib/fog/storage/google_xml/models/directories.rb