Class: FileDir

Inherits:
Object
  • Object
show all
Defined in:
lib/file_dir.rb

Class Method Summary collapse

Class Method Details

.delete!(filedir) ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/file_dir.rb', line 4

def self.delete!(filedir)
  case Dir.exist?(filedir)
 when true
begin
  Dir.rmdir(filedir)
rescue
  Dir.foreach(filedir) { | entry |
  delete!(entry) unless (entry == ".") or (entry == "..")
  }
  retry
end
 else
File.delete(filedir)
  end
end

.mkdirtree(directory) ⇒ Object



19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/file_dir.rb', line 19

def self.mkdirtree(directory)
  begin
 Dir.mkdir(directory)
  rescue SystemCallError => ex
 parent = File.dirname(directory)
 # Prevent an endless loop
 return true if Dir.exist?(directory)
 raise ex if parent.length == '/'
 self.mkdirtree(parent)
 retry
  end
end