module RSS::Maker::AtomTextConstructBase::EnsureXMLContent
Public Class Methods
included(base)
click to toggle source
Calls superclass method
# File lib/rss/maker/base.rb, line 295 def included(base) super base.class_eval do %w(type content xml_content).each do |element| attr_reader element attr_writer element if element != "xml_content" add_need_initialize_variable(element) end alias_method(:xhtml, :xml_content) end end
Public Instance Methods
ensure_xml_content(content)
click to toggle source
# File lib/rss/maker/base.rb, line 309 def ensure_xml_content(content) xhtml_uri = ::RSS::Atom::XHTML_URI unless content.is_a?(RSS::XML::Element) and ["div", xhtml_uri] == [content.name, content.uri] children = content children = [children] unless content.is_a?(Array) children = set_xhtml_uri_as_default_uri(children) content = RSS::XML::Element.new("div", nil, xhtml_uri, {"xmlns" => xhtml_uri}, children) end content end
xhtml=(content)
click to toggle source
# File lib/rss/maker/base.rb, line 327 def xhtml=(content) self.xml_content = content end
xml_content=(content)
click to toggle source
# File lib/rss/maker/base.rb, line 323 def xml_content=(content) @xml_content = ensure_xml_content(content) end
Private Instance Methods
set_xhtml_uri_as_default_uri(children)
click to toggle source
# File lib/rss/maker/base.rb, line 332 def set_xhtml_uri_as_default_uri(children) children.collect do |child| if child.is_a?(RSS::XML::Element) and child.prefix.nil? and child.uri.nil? RSS::XML::Element.new(child.name, nil, ::RSS::Atom::XHTML_URI, child.attributes.dup, set_xhtml_uri_as_default_uri(child.children)) else child end end end