Class TaskJuggler::TextParser::Scanner::FileStreamHandle
In: lib/taskjuggler/TextParser/Scanner.rb
Parent: StreamHandle

Specialized version of StreamHandle for operations on files.

Methods

close   new  

Attributes

fileName  [R] 

Public Class methods

[Source]

# File lib/taskjuggler/TextParser/Scanner.rb, line 206
      def initialize(fileName, log, textScanner)
        super(log, textScanner)
        @fileName = fileName.dup.untaint
        data = (fileName == '.' ? $stdin : File.new(@fileName, 'r')).read
        begin
          @stream = StringIO.new(data.forceUTF8Encoding)
        rescue
          error('fileEncoding', $!)
        end
        @log.msg { "Parsing file #{@fileName} ..." }
        @log.startProgressMeter("Reading file #{fileName}")
      end

Public Instance methods

[Source]

# File lib/taskjuggler/TextParser/Scanner.rb, line 219
      def close
        @stream.close unless @stream == $stdin
        super
      end

[Validate]