Module: Importer::Parser
- Defined in:
- lib/importer/parser.rb,
lib/importer/parser/csv.rb,
lib/importer/parser/xml.rb,
lib/importer/parser/base.rb
Overview
Determines the parser needed to parse given file
basing on file
extension. Return Xml parser for .xml files, Csv parser for .csv file and so on.
Defined Under Namespace
Class Method Summary collapse
Class Method Details
.get_klass(file) ⇒ Object
7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
# File 'lib/importer/parser.rb', line 7 def self.get_klass(file) extension = File.extname(file)[1..-1] if extension klass = extension.camelize if Importer::Parser.const_defined?(klass.to_sym) klass = "Importer::Parser::#{klass}".constantize return klass end end raise Importer::ParserNotFoundError.new("Can't find #{klass} parser.") end |