class OvirtSDK4::AffinityGroupReader
Public Class Methods
read_link(reader, object)
click to toggle source
# File lib/ovirtsdk4/readers.rb, line 482 def self.read_link(reader, object) # Process the attributes: rel = reader.get_attribute('rel') href = reader.get_attribute('href') if rel && href list = List.new list.href = href case rel when 'hostlabels' object.host_labels = list when 'hosts' object.hosts = list when 'vmlabels' object.vm_labels = list when 'vms' object.vms = list end end # Discard the rest of the element: reader.next_element end
read_many(reader)
click to toggle source
# File lib/ovirtsdk4/readers.rb, line 458 def self.read_many(reader) # Do nothing if there aren't more tags: list = List.new return list unless reader.forward # Process the attributes: list.href = reader.get_attribute('href') # Discard the start tag: empty = reader.empty_element? reader.read return list if empty # Process the inner elements: while reader.forward do list << read_one(reader) end # Discard the end tag: reader.read return list end
read_one(reader)
click to toggle source
# File lib/ovirtsdk4/readers.rb, line 380 def self.read_one(reader) # Do nothing if there aren't more tags: return nil unless reader.forward # Create the object: object = AffinityGroup.new # Process the attributes: object.href = reader.get_attribute('href') value = reader.get_attribute('broken') object.broken = value if not value.nil? value = reader.get_attribute('comment') object.comment = value if not value.nil? value = reader.get_attribute('description') object.description = value if not value.nil? value = reader.get_attribute('enforcing') object.enforcing = value if not value.nil? value = reader.get_attribute('id') object.id = value if not value.nil? value = reader.get_attribute('name') object.name = value if not value.nil? value = reader.get_attribute('positive') object.positive = value if not value.nil? value = reader.get_attribute('priority') object.priority = value if not value.nil? # Discard the start tag: empty = reader.empty_element? reader.read return object if empty # Process the inner elements: while reader.forward do case reader.node_name when 'broken' object.broken = Reader.read_boolean(reader) when 'comment' object.comment = Reader.read_string(reader) when 'description' object.description = Reader.read_string(reader) when 'enforcing' object.enforcing = Reader.read_boolean(reader) when 'hosts_rule' object.hosts_rule = AffinityRuleReader.read_one(reader) when 'id' object.id = Reader.read_string(reader) when 'name' object.name = Reader.read_string(reader) when 'positive' object.positive = Reader.read_boolean(reader) when 'priority' object.priority = Reader.read_decimal(reader) when 'vms_rule' object.vms_rule = AffinityRuleReader.read_one(reader) when 'cluster' object.cluster = ClusterReader.read_one(reader) when 'host_labels' object.host_labels = AffinityLabelReader.read_many(reader) when 'hosts' object.hosts = HostReader.read_many(reader) when 'vm_labels' object.vm_labels = AffinityLabelReader.read_many(reader) when 'vms' object.vms = VmReader.read_many(reader) when 'link' read_link(reader, object) else reader.next_element end end # Discard the end tag: reader.read return object end