class EpubForge::Action::FileTransformer
Attributes
original_filename[R]
transformed_filename[R]
Public Class Methods
new( file )
click to toggle source
# File lib/epubforge/action/file_transformer.rb, line 5 def initialize( file ) @original_filename = file @transformed_filename = "#{@original_filename}.epubforge.#{sprintf("%07i", rand(1000000))}.tmp" @out = File.open( @transformed_filename, "w" ) @finished = false end
Public Instance Methods
<<( input )
click to toggle source
# File lib/epubforge/action/file_transformer.rb, line 32 def <<( input ) write( input ) end
abort()
click to toggle source
# File lib/epubforge/action/file_transformer.rb, line 20 def abort return if finished? @finished = true FileUtils.rm( @transformed_filename ) end
finalize()
click to toggle source
# File lib/epubforge/action/file_transformer.rb, line 12 def finalize return if finished? @finished = true @out.close FileUtils.mv( @transformed_filename, @original_filename ) end
finished?()
click to toggle source
# File lib/epubforge/action/file_transformer.rb, line 54 def finished? @finished end
new_size()
click to toggle source
# File lib/epubforge/action/file_transformer.rb, line 50 def new_size File.size?( @transformed_filename ) end
old_size()
click to toggle source
# File lib/epubforge/action/file_transformer.rb, line 46 def old_size File.size?( @original_filename ) end
read_file()
click to toggle source
# File lib/epubforge/action/file_transformer.rb, line 36 def read_file File.read( @original_filename ) end
readlines( ) { |line| ... }
click to toggle source
# File lib/epubforge/action/file_transformer.rb, line 40 def readlines( &block ) File.readlines( @original_filename ) do |line| yield line end end
write( input )
click to toggle source
# File lib/epubforge/action/file_transformer.rb, line 26 def write( input ) return if finished? @out << input @out.flush end