Class: FluQ::Buffer::File
Constant Summary
Constants inherited from Base
Instance Attribute Summary collapse
- #file ⇒ Object readonly
Attributes inherited from Base
Instance Method Summary collapse
- #close ⇒ Object
- #drain ⇒ Object
-
#initialize ⇒ File
constructor
A new instance of File.
- #name ⇒ Object
- #size ⇒ Object
- #write(data) ⇒ Object
Methods inherited from Base
Constructor Details
#initialize ⇒ File
Returns a new instance of File.
7 8 9 10 11 |
# File 'lib/fluq/buffer/file.rb', line 7 def initialize(*) super @file = new_file @size = 0 end |
Instance Attribute Details
#file ⇒ Object (readonly)
4 5 6 |
# File 'lib/fluq/buffer/file.rb', line 4 def file @file end |
Instance Method Details
#close ⇒ Object
29 30 31 32 |
# File 'lib/fluq/buffer/file.rb', line 29 def close file.close unless file.closed? File.unlink(file.path) if File.exists?(file.path) end |
#drain ⇒ Object
35 36 37 38 39 40 41 |
# File 'lib/fluq/buffer/file.rb', line 35 def drain file.close unless file.closed? io = File.open(file.path, 'rb', encoding: Encoding::BINARY) yield(io) ensure io.close if io end |
#name ⇒ Object
14 15 16 |
# File 'lib/fluq/buffer/file.rb', line 14 def name @name ||= [super, File.basename(file.path)].join("-") end |
#size ⇒ Object
24 25 26 |
# File 'lib/fluq/buffer/file.rb', line 24 def size file.size end |
#write(data) ⇒ Object
19 20 21 |
# File 'lib/fluq/buffer/file.rb', line 19 def write(data) file.write(data) end |