Class: OpenNebula::XMLPool

Inherits:
XMLElement show all
Defined in:
OpenNebula/XMLUtils.rb

Overview

The XMLUtilsPool module provides an abstraction of the underlying XML parser engine. It provides XML-related methods for the Pools

Direct Known Subclasses

Pool

Instance Method Summary (collapse)

Methods inherited from XMLElement

#[], #add_element, #attr, build_xml, #delete_element, #each, #each_xpath, #element_xml, #has_elements?, #initialize_xml, #name, #retrieve_elements, #template_like_str, #template_str, #template_xml, #text, #to_hash, #to_xml

Constructor Details

- (XMLPool) initialize(xml = nil)

A new instance of XMLPool



415
416
417
# File 'OpenNebula/XMLUtils.rb', line 415

def initialize(xml=nil)
    super(xml)
end

Instance Method Details

- (Object) each_element(block)

Executes the given block for each element of the Pool

block

Block



421
422
423
424
425
426
427
428
429
430
431
432
433
# File 'OpenNebula/XMLUtils.rb', line 421

def each_element(block)
    if NOKOGIRI
        @xml.xpath(
            "#{@element_name}").each {|pelem|
            block.call self.factory(pelem)
        }
    else
        @xml.elements.each(
            "#{@element_name}") {|pelem|
            block.call self.factory(pelem)
        }
    end
end