Sha256: 99f075534b8e230ea1386f128a401bcbca72b3c69e72f0868ee8ce3cc4c698e0
Contents?: true
Size: 1.46 KB
Versions: 11
Compression:
Stored size: 1.46 KB
Contents
require 'fog/core/model' module Fog module Storage class Atmos class Directory < Fog::Model identity :key, :aliases => :Filename attribute :objectid, :aliases => :ObjectID def files @files ||= begin Fog::Storage::Atmos::Files.new( :directory => self, :connection => connection ) end end def directories @directories ||= begin Fog::Storage::Atmos::Directories.new( :directory => self, :connection => connection ) end end def save self.key = attributes[:directory].key + key if attributes[:directory] self.key = key + '/' unless key =~ /\/$/ res = connection.post_namespace key reload end 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 connection.delete_namespace key end end end end end
Version data entries
11 entries across 11 versions & 7 rubygems