Sha256: 1063cd46d94a321e94f91f24bcc84ab880aced20bad9c29a433750cd0b3247a0
Contents?: true
Size: 1.41 KB
Versions: 1
Compression:
Stored size: 1.41 KB
Contents
require 'folio/fileobject' module Folio class Directory < FileObject def initialize(path=nil) super(path || Dir.pwd) raise FileNotFound unless ::File.directory?(@path) end def directory? ; true ; end # We have to use FileUtils here b/c of some obscure # secutiry issue. # Copy recursively. def cp_r(dest) util.cp_r(path, dest) end def rmdir util.rmdir(path) end alias_method :unlink, :rmdir alias_method :delete, :rmdir undef_method :rm def rm_r util.rm_r(path) end def rm_rf(list) util.rm_rf(path) end def chmod_r(mode) util.chmod_r(mode, path) end #alias_method :chmod_R, :chmod_r def chown_r(user, group) util.chown_r(user, group, path) end #alias_method :chown_R, :chown_r #-- # ::Dir #++ def chdir(&block) ::Dir.chdir(path, &block) end alias_method :cd, :chdir def chroot(&block) ::Dir.chroot(path, &block) end # Directory entries. This returns a list of file names. def entries ::Dir.entries(path) end def foreach(&block) ::Dir.foreach(path, &block) end # TODO: use enumerator (?) def paths (::Dir.entries(path) - ['.', '..']).collect{ |f| FileObject[path, f] } end # Join paths. def /(fname) FileObject[path, fname] end alias_method :+, :/ end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
folio-0.1.0 | lib/folio/directory.rb |