Class: Avocado::Storage::File
- Inherits:
-
Object
- Object
- Avocado::Storage::File
- Defined in:
- lib/avocado/storage/file.rb
Instance Method Summary collapse
-
#initialize(dir) ⇒ File
constructor
A new instance of File.
- #purge_old(upload_id) ⇒ Object
- #read ⇒ Object
- #write(data, upload_id) ⇒ Object
Constructor Details
#initialize(dir) ⇒ File
Returns a new instance of File.
4 5 6 |
# File 'lib/avocado/storage/file.rb', line 4 def initialize(dir) @dir = dir end |
Instance Method Details
#purge_old(upload_id) ⇒ Object
17 18 19 20 |
# File 'lib/avocado/storage/file.rb', line 17 def purge_old(upload_id) old_files = files.reject { |fn| fn.end_with? "-#{upload_id}.json" } ::File.delete(*old_files) end |
#read ⇒ Object
8 9 10 |
# File 'lib/avocado/storage/file.rb', line 8 def read files.map { |filename| ::File.read filename } end |
#write(data, upload_id) ⇒ Object
12 13 14 15 |
# File 'lib/avocado/storage/file.rb', line 12 def write(data, upload_id) filename = @dir.join "avocado-#{Time.current.to_s(:nsec)}-#{upload_id}.json" ::File.open(filename, 'w+') { |f| f.write data } end |