Sha256: b6fbf56c341f794cb91938f289f2056b94380e3a887fa005091a6560a431f393

Contents?: true

Size: 1.02 KB

Versions: 25

Compression:

Stored size: 1.02 KB

Contents

require 'fog/collection'
require 'fog/rackspace/models/files/directory'

module Fog
  module Rackspace
    module Files

      class Real
        def directories
          Fog::Rackspace::Files::Directories.new(:connection => self)
        end
      end

      class Mock
        def directories
          Fog::Rackspace::Files::Directories.new(:connection => self)
        end
      end

      class Directories < Fog::Collection

        model Fog::Rackspace::Files::Directory

        def all
          data = connection.get_containers.body
          load(data)
        end

        def get(key, options = {})
          data = connection.get_container(key, options).body
          directory = new(:key => key)
          directory.files.merge_attributes(options)
          directory.files.instance_variable_set(:@loaded, true)
          data.each do |file|
            directory.files << directory.files.new(file)
          end
          directory
        rescue Excon::Errors::NotFound
          nil
        end

      end

    end
  end
end

Version data entries

25 entries across 25 versions & 1 rubygems

Version Path
fog-0.1.8 lib/fog/rackspace/models/files/directories.rb
fog-0.1.7 lib/fog/rackspace/models/files/directories.rb
fog-0.1.6 lib/fog/rackspace/models/files/directories.rb
fog-0.1.5 lib/fog/rackspace/models/files/directories.rb
fog-0.1.4 lib/fog/rackspace/models/files/directories.rb
fog-0.1.3 lib/fog/rackspace/models/files/directories.rb
fog-0.1.2 lib/fog/rackspace/models/files/directories.rb
fog-0.1.1 lib/fog/rackspace/models/files/directories.rb
fog-0.1.0 lib/fog/rackspace/models/files/directories.rb
fog-0.0.100 lib/fog/rackspace/models/files/directories.rb
fog-0.0.99 lib/fog/rackspace/models/files/directories.rb
fog-0.0.98 lib/fog/rackspace/models/files/directories.rb
fog-0.0.97 lib/fog/rackspace/models/files/directories.rb
fog-0.0.96 lib/fog/rackspace/models/files/directories.rb
fog-0.0.95 lib/fog/rackspace/models/files/directories.rb
fog-0.0.94 lib/fog/rackspace/models/files/directories.rb
fog-0.0.93 lib/fog/rackspace/models/files/directories.rb
fog-0.0.92 lib/fog/rackspace/models/files/directories.rb
fog-0.0.91 lib/fog/rackspace/models/files/directories.rb
fog-0.0.90 lib/fog/rackspace/models/files/directories.rb