# File lib/ovirtsdk4/readers.rb, line 15604 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 'datacenters' object.data_centers = list when 'diskprofiles' object.disk_profiles = list when 'disksnapshots' object.disk_snapshots = list when 'disks' object.disks = list when 'files' object.files = list when 'images' object.images = list when 'permissions' object.permissions = list when 'storageconnections' object.storage_connections = list when 'templates' object.templates = list when 'vms' object.vms = list end end # Discard the rest of the element: reader.next_element end
# File lib/ovirtsdk4/readers.rb, line 15580 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 15446 def self.read_one(reader) # Do nothing if there aren't more tags: return nil unless reader.forward # Create the object: object = StorageDomain.new # Process the attributes: object.href = reader.get_attribute('href') value = reader.get_attribute('available') object.available = value if not value.nil? value = reader.get_attribute('comment') object.comment = value if not value.nil? value = reader.get_attribute('committed') object.committed = value if not value.nil? value = reader.get_attribute('critical_space_action_blocker') object.critical_space_action_blocker = value if not value.nil? value = reader.get_attribute('description') object.description = value if not value.nil? value = reader.get_attribute('discard_after_delete') object.discard_after_delete = value if not value.nil? value = reader.get_attribute('external_status') object.external_status = value if not value.nil? value = reader.get_attribute('id') object.id = value if not value.nil? value = reader.get_attribute('import') object.import = value if not value.nil? value = reader.get_attribute('master') object.master = value if not value.nil? value = reader.get_attribute('name') object.name = value if not value.nil? value = reader.get_attribute('status') object.status = value if not value.nil? value = reader.get_attribute('storage_format') object.storage_format = value if not value.nil? value = reader.get_attribute('supports_discard') object.supports_discard = value if not value.nil? value = reader.get_attribute('supports_discard_zeroes_data') object.supports_discard_zeroes_data = value if not value.nil? value = reader.get_attribute('type') object.type = value if not value.nil? value = reader.get_attribute('used') object.used = value if not value.nil? value = reader.get_attribute('warning_low_space_indicator') object.warning_low_space_indicator = value if not value.nil? value = reader.get_attribute('wipe_after_delete') object.wipe_after_delete = 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 'available' object.available = Reader.read_integer(reader) when 'comment' object.comment = Reader.read_string(reader) when 'committed' object.committed = Reader.read_integer(reader) when 'critical_space_action_blocker' object.critical_space_action_blocker = Reader.read_integer(reader) when 'description' object.description = Reader.read_string(reader) when 'discard_after_delete' object.discard_after_delete = Reader.read_boolean(reader) when 'external_status' object.external_status = Reader.read_string(reader) when 'id' object.id = Reader.read_string(reader) when 'import' object.import = Reader.read_boolean(reader) when 'master' object.master = Reader.read_boolean(reader) when 'name' object.name = Reader.read_string(reader) when 'status' object.status = Reader.read_string(reader) when 'storage' object.storage = HostStorageReader.read_one(reader) when 'storage_format' object.storage_format = Reader.read_string(reader) when 'supports_discard' object.supports_discard = Reader.read_boolean(reader) when 'supports_discard_zeroes_data' object.supports_discard_zeroes_data = Reader.read_boolean(reader) when 'type' object.type = Reader.read_string(reader) when 'used' object.used = Reader.read_integer(reader) when 'warning_low_space_indicator' object.warning_low_space_indicator = Reader.read_integer(reader) when 'wipe_after_delete' object.wipe_after_delete = Reader.read_boolean(reader) when 'data_center' object.data_center = DataCenterReader.read_one(reader) when 'data_centers' object.data_centers = DataCenterReader.read_many(reader) when 'disk_profiles' object.disk_profiles = DiskProfileReader.read_many(reader) when 'disk_snapshots' object.disk_snapshots = DiskSnapshotReader.read_many(reader) when 'disks' object.disks = DiskReader.read_many(reader) when 'files' object.files = FileReader.read_many(reader) when 'host' object.host = HostReader.read_one(reader) when 'images' object.images = ImageReader.read_many(reader) when 'permissions' object.permissions = PermissionReader.read_many(reader) when 'storage_connections' object.storage_connections = StorageConnectionReader.read_many(reader) when 'templates' object.templates = TemplateReader.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