Class: GenesisRuby::Builders::Xml
- Defined in:
- lib/genesis_ruby/builders/xml.rb
Overview
XML, Nokogiri Builder Implementation
Instance Method Summary collapse
-
#initialize ⇒ Xml
constructor
Initialize Nokogiri XML Builder.
-
#output ⇒ Object
Generated XMl Document.
- #populate_nodes(structure) ⇒ Object
Constructor Details
#initialize ⇒ Xml
Initialize Nokogiri XML Builder
12 13 14 15 |
# File 'lib/genesis_ruby/builders/xml.rb', line 12 def initialize @builder = Nokogiri::XML::Builder.new(encoding: 'UTF-8') super end |
Instance Method Details
#output ⇒ Object
Generated XMl Document
18 19 20 |
# File 'lib/genesis_ruby/builders/xml.rb', line 18 def output builder.to_xml end |
#populate_nodes(structure) ⇒ Object
22 23 24 25 26 27 28 29 30 |
# File 'lib/genesis_ruby/builders/xml.rb', line 22 def populate_nodes(structure) root_element, data = if structure.length == 1 [structure.keys.first, structure.values.first] else ['root', structure.values.first] end builder.method_missing(root_element, fetch_attributes(data)) { |xml| generate(data) } unless data.nil? # rubocop:disable Lint/UnusedBlockArgument end |