class Hydra::FileCharacterization::ToTempFile
Attributes
filename[R]
Public Class Methods
new(filename)
click to toggle source
# File lib/hydra/file_characterization/to_temp_file.rb, line 15 def initialize(filename) @filename = filename.is_a?(Array) ? filename.join("") : filename end
open(filename, data, &block)
click to toggle source
# File lib/hydra/file_characterization/to_temp_file.rb, line 9 def self.open(filename, data, &block) new(filename).call(data, &block) end
Public Instance Methods
call(data) { |f| ... }
click to toggle source
# File lib/hydra/file_characterization/to_temp_file.rb, line 19 def call(data) f = Tempfile.new([File.basename(filename), File.extname(filename)]) begin f.binmode if data.respond_to? :read f.write(data.read) else f.write(data) end f.rewind yield(f) ensure data.rewind if data.respond_to? :rewind f.close f.unlink end end