class Feedjira::Preprocessor

Public Class Methods

new(xml) click to toggle source
# File lib/feedjira/preprocessor.rb, line 3
def initialize(xml)
  @xml = xml
end

Public Instance Methods

to_xml() click to toggle source
# File lib/feedjira/preprocessor.rb, line 7
def to_xml
  process_content
  doc.to_xml
end

Private Instance Methods

content_nodes() click to toggle source
# File lib/feedjira/preprocessor.rb, line 20
def content_nodes
  doc.search 'entry > content[type="xhtml"], entry > summary[type="xhtml"], entry > title[type="xhtml"]'
end
doc() click to toggle source
# File lib/feedjira/preprocessor.rb, line 28
def doc
  @doc ||= Nokogiri::XML(@xml).remove_namespaces!
end
process_content() click to toggle source
# File lib/feedjira/preprocessor.rb, line 14
def process_content
  content_nodes.each do |node|
    node.content = raw_html(node) unless node.cdata?
  end
end
raw_html(node) click to toggle source
# File lib/feedjira/preprocessor.rb, line 24
def raw_html(node)
  CGI.unescape_html node.search('./div').inner_html
end