lib/peddler/parser.rb in peddler-0.7.5 vs lib/peddler/parser.rb in peddler-0.7.6

- old
+ new

@@ -1,21 +1,25 @@ -require 'peddler/csv_parser' +require 'peddler/flat_file_parser' require 'peddler/xml_parser' module Peddler # @api private module Parser - def self.parse(res) - # Don't parse if there's no body - return res unless res.body + class << self + # The inevitable messiness of massaging data produced by a motley army of + # Amazon developers + def parse(res, encoding = 'ISO-8859-1') + # Don't parse if there's no body + return res unless res.body - case res.headers['Content-Type'] - when 'text/xml' - XMLParser.new(res) - when 'application/octet-stream' - CSVParser.new(res) - else - raise NotImplementedError + case res.headers['Content-Type'] + when 'text/xml' + XMLParser.new(res) + when 'application/octet-stream' + FlatFileParser.new(res, encoding) + else + raise NotImplementedError + end end end end end