class OvirtSDK4::LogicalUnitReader

Public Class Methods

read_many(reader) click to toggle source
# File lib/ovirtsdk4/readers.rb, line 10541
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 10435
def self.read_one(reader)
  # Do nothing if there aren't more tags:
  return nil unless reader.forward
  
  # Create the object:
  object = LogicalUnit.new
  
  # Process the attributes:
  object.href = reader.get_attribute('href')
  value = reader.get_attribute('address')
  object.address = value if not value.nil?
  value = reader.get_attribute('discard_max_size')
  object.discard_max_size = value if not value.nil?
  value = reader.get_attribute('discard_zeroes_data')
  object.discard_zeroes_data = value if not value.nil?
  value = reader.get_attribute('disk_id')
  object.disk_id = value if not value.nil?
  value = reader.get_attribute('id')
  object.id = value if not value.nil?
  value = reader.get_attribute('lun_mapping')
  object.lun_mapping = value if not value.nil?
  value = reader.get_attribute('password')
  object.password = value if not value.nil?
  value = reader.get_attribute('paths')
  object.paths = value if not value.nil?
  value = reader.get_attribute('port')
  object.port = value if not value.nil?
  value = reader.get_attribute('portal')
  object.portal = value if not value.nil?
  value = reader.get_attribute('product_id')
  object.product_id = value if not value.nil?
  value = reader.get_attribute('serial')
  object.serial = value if not value.nil?
  value = reader.get_attribute('size')
  object.size = value if not value.nil?
  value = reader.get_attribute('status')
  object.status = value if not value.nil?
  value = reader.get_attribute('storage_domain_id')
  object.storage_domain_id = value if not value.nil?
  value = reader.get_attribute('target')
  object.target = value if not value.nil?
  value = reader.get_attribute('username')
  object.username = value if not value.nil?
  value = reader.get_attribute('vendor_id')
  object.vendor_id = value if not value.nil?
  value = reader.get_attribute('volume_group_id')
  object.volume_group_id = 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 'address'
      object.address = Reader.read_string(reader)
    when 'discard_max_size'
      object.discard_max_size = Reader.read_integer(reader)
    when 'discard_zeroes_data'
      object.discard_zeroes_data = Reader.read_boolean(reader)
    when 'disk_id'
      object.disk_id = Reader.read_string(reader)
    when 'id'
      object.id = Reader.read_string(reader)
    when 'lun_mapping'
      object.lun_mapping = Reader.read_integer(reader)
    when 'password'
      object.password = Reader.read_string(reader)
    when 'paths'
      object.paths = Reader.read_integer(reader)
    when 'port'
      object.port = Reader.read_integer(reader)
    when 'portal'
      object.portal = Reader.read_string(reader)
    when 'product_id'
      object.product_id = Reader.read_string(reader)
    when 'serial'
      object.serial = Reader.read_string(reader)
    when 'size'
      object.size = Reader.read_integer(reader)
    when 'status'
      object.status = Reader.read_enum(LunStatus, reader)
    when 'storage_domain_id'
      object.storage_domain_id = Reader.read_string(reader)
    when 'target'
      object.target = Reader.read_string(reader)
    when 'username'
      object.username = Reader.read_string(reader)
    when 'vendor_id'
      object.vendor_id = Reader.read_string(reader)
    when 'volume_group_id'
      object.volume_group_id = Reader.read_string(reader)
    else
      reader.next_element
    end
  end
  
  # Discard the end tag:
  reader.read
  
  return object
end