Class: Fog::Storage::Atmos::Directory

Inherits:
Model
  • Object
show all
Defined in:
lib/fog/storage/atmos/models/directory.rb

Instance Method Summary collapse

Instance Method Details

#destroy(opts = {}) ⇒ Object



33
34
35
36
37
38
39
40
41
42
# File 'lib/fog/storage/atmos/models/directory.rb', line 33

def destroy(opts={})
  if opts[:recursive]
    files.each {|f| f.destroy }
    directories.each do |d|
      d.files.each {|f| f.destroy }
      d.destroy(opts)
    end
  end
  service.delete_namespace key
end

#directoriesObject



17
18
19
20
21
22
23
24
# File 'lib/fog/storage/atmos/models/directory.rb', line 17

def directories
  @directories ||= begin
                     Fog::Storage::Atmos::Directories.new(
                       :directory => self,
                       :service   => service
                     )
                   end
end

#filesObject



8
9
10
11
12
13
14
15
# File 'lib/fog/storage/atmos/models/directory.rb', line 8

def files
  @files ||= begin
               Fog::Storage::Atmos::Files.new(
                 :directory => self,
                 :service   => service
               )
             end
end

#saveObject



26
27
28
29
30
31
# File 'lib/fog/storage/atmos/models/directory.rb', line 26

def save
  self.key = attributes[:directory].key + key if attributes[:directory]
  self.key = key + '/' unless key =~ /\/$/
  res = service.post_namespace key
  reload
end