module Feedjira
Constants
- NoParserAvailable
- VERSION
Public Class Methods
parse(xml, parser: nil, &block)
click to toggle source
Parse XML with first compatible parser
@example
xml = HTTParty.get("http://example.com").body Feedjira.parse(xml)
# File lib/feedjira.rb, line 59 def parse(xml, parser: nil, &block) parser ||= parser_for_xml(xml) if parser.nil? raise NoParserAvailable, "No valid parser for XML." end parser.parse(xml, &block) end
parser_for_xml(xml)
click to toggle source
Find compatible parser for given XML
@example
xml = HTTParty.get("http://example.com").body parser = Feedjira.parser_for_xml(xml) parser.parse(xml)
# File lib/feedjira.rb, line 76 def parser_for_xml(xml) start_of_doc = xml.slice(0, 2000) Feedjira.parsers.detect { |klass| klass.able_to_parse?(start_of_doc) } end
Private Instance Methods
parse(xml, parser: nil, &block)
click to toggle source
Parse XML with first compatible parser
@example
xml = HTTParty.get("http://example.com").body Feedjira.parse(xml)
# File lib/feedjira.rb, line 59 def parse(xml, parser: nil, &block) parser ||= parser_for_xml(xml) if parser.nil? raise NoParserAvailable, "No valid parser for XML." end parser.parse(xml, &block) end
parser_for_xml(xml)
click to toggle source
Find compatible parser for given XML
@example
xml = HTTParty.get("http://example.com").body parser = Feedjira.parser_for_xml(xml) parser.parse(xml)
# File lib/feedjira.rb, line 76 def parser_for_xml(xml) start_of_doc = xml.slice(0, 2000) Feedjira.parsers.detect { |klass| klass.able_to_parse?(start_of_doc) } end