Class: Coral::Util::Disk
- Inherits:
-
Object
- Object
- Coral::Util::Disk
- Defined in:
- lib/coral_core/util/disk.rb
Constant Summary collapse
- @@files =
Properties
{}
- @@separator =
false
- @@description =
''
Class Method Summary collapse
-
.close(file_names = []) ⇒ Object
—.
-
.exists?(file) ⇒ Boolean
—————————————————————————– Utilities.
-
.filename(file_name) ⇒ Object
—.
-
.log(data, options = {}) ⇒ Object
—.
-
.open(file_name, options = {}, reset = false) ⇒ Object
—.
-
.read(file_name, options = {}) ⇒ Object
—.
-
.write(file_name, data, options = {}) ⇒ Object
—.
Class Method Details
.close(file_names = []) ⇒ Object
91 92 93 94 95 96 97 98 99 100 101 102 |
# File 'lib/coral_core/util/disk.rb', line 91 def self.close(file_names = []) file_names = @@files.keys unless file_names && ! file_names.empty? unless file_names.is_a?(Array) file_names = [ file_names ] end file_names.each do |file_name| @@files[file_name][:file].close if @@files[file_name] && @@files[file_name][:file] @@files.delete(file_name) end end |
.exists?(file) ⇒ Boolean
Utilities
17 18 19 |
# File 'lib/coral_core/util/disk.rb', line 17 def self.exists?(file) return File.exists?(File.(file)) end |
.filename(file_name) ⇒ Object
23 24 25 |
# File 'lib/coral_core/util/disk.rb', line 23 def self.filename(file_name) return ( file_name.is_a?(Array) ? file_name.join(File::SEPARATOR) : file_name.to_s ) end |
.log(data, options = {}) ⇒ Object
79 80 81 82 83 84 85 86 87 |
# File 'lib/coral_core/util/disk.rb', line 79 def self.log(data, = {}) reset = ( [:file_name] || [:mode] ) file = open(( [:file_name] ? [:file_name] : 'log.txt' ), , reset) if file file.write("--------------------------------------\n") if @@separator file.write("#{@@description}\n") if @@description file.write("#{data}\n") end end |
.open(file_name, options = {}, reset = false) ⇒ Object
29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
# File 'lib/coral_core/util/disk.rb', line 29 def self.open(file_name, = {}, reset = false) mode = [:mode].to_s @@separator = ( [:separator] ? [:separator] : false ) @@description = ( [:description] ? [:description] : '' ) if @@files.has_key?(file_name) && ! reset reset = true if ! mode.empty? && mode != @@files[file_name][:mode] end if ! @@files.has_key?(file_name) || ! @@files[file_name][:file] || reset @@files[file_name][:file].close if @@files[file_name] && @@files[file_name][:file] unless mode.empty? || ( mode == 'r' && ! File.exists?(file_name) ) @@files[file_name] = { :file => File.open(file_name, mode), :mode => mode, } end end return nil unless @@files[file_name] return @@files[file_name][:file] end |
.read(file_name, options = {}) ⇒ Object
54 55 56 57 58 59 60 61 62 63 |
# File 'lib/coral_core/util/disk.rb', line 54 def self.read(file_name, = {}) [:mode] = ( [:mode] ? [:mode] : 'r' ) file = open(file_name, ) if file file.pos = 0 if [:mode] == 'r' return file.read end return nil end |
.write(file_name, data, options = {}) ⇒ Object
67 68 69 70 71 72 73 74 75 |
# File 'lib/coral_core/util/disk.rb', line 67 def self.write(file_name, data, = {}) [:mode] = ( [:mode] ? [:mode] : 'w' ) file = open(file_name, ) if file return file.write(data) end return nil end |