# File lib/ovirtsdk4/readers.rb, line 10555 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 'networkattachments' object.network_attachments = list when 'networklabels' object.network_labels = list when 'reporteddevices' object.reported_devices = list when 'statistics' object.statistics = list when 'virtualfunctionallowedlabels' object.virtual_function_allowed_labels = list when 'virtualfunctionallowednetworks' object.virtual_function_allowed_networks = list when 'vms' object.vms = list end end # Discard the rest of the element: reader.next_element end
# File lib/ovirtsdk4/readers.rb, line 10531 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
# File lib/ovirtsdk4/readers.rb, line 10437 def self.read_one(reader) # Do nothing if there aren't more tags: return nil unless reader.forward # Create the object: object = Nic.new # Process the attributes: object.href = reader.get_attribute('href') value = reader.get_attribute('boot_protocol') object.boot_protocol = 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('id') object.id = value if not value.nil? value = reader.get_attribute('interface') object.interface = value if not value.nil? value = reader.get_attribute('linked') object.linked = value if not value.nil? value = reader.get_attribute('name') object.name = value if not value.nil? value = reader.get_attribute('on_boot') object.on_boot = value if not value.nil? value = reader.get_attribute('plugged') object.plugged = 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 'boot_protocol' object.boot_protocol = Reader.read_string(reader) when 'comment' object.comment = Reader.read_string(reader) when 'description' object.description = Reader.read_string(reader) when 'id' object.id = Reader.read_string(reader) when 'interface' object.interface = Reader.read_string(reader) when 'linked' object.linked = Reader.read_boolean(reader) when 'mac' object.mac = MacReader.read_one(reader) when 'name' object.name = Reader.read_string(reader) when 'on_boot' object.on_boot = Reader.read_boolean(reader) when 'plugged' object.plugged = Reader.read_boolean(reader) when 'instance_type' object.instance_type = InstanceTypeReader.read_one(reader) when 'network' object.network = NetworkReader.read_one(reader) when 'network_attachments' object.network_attachments = NetworkAttachmentReader.read_many(reader) when 'network_labels' object.network_labels = NetworkLabelReader.read_many(reader) when 'reported_devices' object.reported_devices = ReportedDeviceReader.read_many(reader) when 'statistics' object.statistics = StatisticReader.read_many(reader) when 'template' object.template = TemplateReader.read_one(reader) when 'virtual_function_allowed_labels' object.virtual_function_allowed_labels = NetworkLabelReader.read_many(reader) when 'virtual_function_allowed_networks' object.virtual_function_allowed_networks = NetworkReader.read_many(reader) when 'vm' object.vm = VmReader.read_one(reader) when 'vms' object.vms = VmReader.read_many(reader) when 'vnic_profile' object.vnic_profile = VnicProfileReader.read_one(reader) when 'link' read_link(reader, object) else reader.next_element end end # Discard the end tag: reader.read return object end