Class: Avocado::Storage::File

Inherits:
Object
  • Object
show all
Defined in:
lib/avocado/storage/file.rb

Instance Method Summary collapse

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

#readObject



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