class Nucleon::Util::Disk

Public Class Methods

delete(file_path) click to toggle source
   # File lib/core/util/disk.rb
63 def self.delete(file_path)
64   result = nil
65   @@file_lock.synchronize do
66     result = ::File.delete(file_path)
67   end
68   result
69 end
exists?(file) click to toggle source
   # File lib/core/util/disk.rb
17 def self.exists?(file)
18   return ::File.exists?(::File.expand_path(file))  
19 end
filename(file_name) click to toggle source
   # File lib/core/util/disk.rb
23 def self.filename(file_name)
24   return ( file_name.is_a?(Array) ? file_name.join(::File::SEPARATOR) : file_name.to_s )
25 end
log(data, options = {}) click to toggle source
   # File lib/core/util/disk.rb
73 def self.log(data, options = {})
74   reset = ( options[:file_name] || options[:mode] )
75     
76   @@file_lock.synchronize do      
77     if file = ::File.open(( options[:file_name] ? options[:file_name] : 'log.txt' ), options[:mode]) 
78       file.write("--------------------------------------\n") if @@separator
79       file.write("#{@@description}\n") if @@description       
80       file.write("#{data}\n")
81       file.close
82     end
83   end
84 end
read(file_name, options = {}) click to toggle source
   # File lib/core/util/disk.rb
29 def self.read(file_name, options = {})
30   result = nil
31   options[:mode] = ( options[:mode] ? options[:mode] : 'r' )
32   
33   @@file_lock.synchronize do
34     begin
35       if file = ::File.open(file_name, options[:mode])
36         result = file.read
37         file.close
38       end
39     rescue # TODO: Only catch error if file is not found.
40     end
41   end
42   return result
43 end
write(file_name, data, options = {}) click to toggle source
   # File lib/core/util/disk.rb
47 def self.write(file_name, data, options = {})
48   result = nil
49   options[:mode] = ( options[:mode] ? options[:mode] : 'w' )
50       
51   @@file_lock.synchronize do
52     FileUtils.mkdir_p(::File.dirname(file_name))
53     if file = ::File.open(file_name, options[:mode])
54       result = file.write(data)
55       file.close
56     end
57   end
58   return result
59 end