class OvirtSDK4::QosReader

Public Class Methods

read_many(reader) click to toggle source
# File lib/ovirtsdk4/readers.rb, line 14409
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 14293
def self.read_one(reader)
  # Do nothing if there aren't more tags:
  return nil unless reader.forward
  
  # Create the object:
  object = Qos.new
  
  # Process the attributes:
  object.href = reader.get_attribute('href')
  value = reader.get_attribute('comment')
  object.comment = value if not value.nil?
  value = reader.get_attribute('cpu_limit')
  object.cpu_limit = 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('inbound_average')
  object.inbound_average = value if not value.nil?
  value = reader.get_attribute('inbound_burst')
  object.inbound_burst = value if not value.nil?
  value = reader.get_attribute('inbound_peak')
  object.inbound_peak = value if not value.nil?
  value = reader.get_attribute('max_iops')
  object.max_iops = value if not value.nil?
  value = reader.get_attribute('max_read_iops')
  object.max_read_iops = value if not value.nil?
  value = reader.get_attribute('max_read_throughput')
  object.max_read_throughput = value if not value.nil?
  value = reader.get_attribute('max_throughput')
  object.max_throughput = value if not value.nil?
  value = reader.get_attribute('max_write_iops')
  object.max_write_iops = value if not value.nil?
  value = reader.get_attribute('max_write_throughput')
  object.max_write_throughput = value if not value.nil?
  value = reader.get_attribute('name')
  object.name = value if not value.nil?
  value = reader.get_attribute('outbound_average')
  object.outbound_average = value if not value.nil?
  value = reader.get_attribute('outbound_average_linkshare')
  object.outbound_average_linkshare = value if not value.nil?
  value = reader.get_attribute('outbound_average_realtime')
  object.outbound_average_realtime = value if not value.nil?
  value = reader.get_attribute('outbound_average_upperlimit')
  object.outbound_average_upperlimit = value if not value.nil?
  value = reader.get_attribute('outbound_burst')
  object.outbound_burst = value if not value.nil?
  value = reader.get_attribute('outbound_peak')
  object.outbound_peak = value if not value.nil?
  value = reader.get_attribute('type')
  object.type = 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 'comment'
      object.comment = Reader.read_string(reader)
    when 'cpu_limit'
      object.cpu_limit = Reader.read_integer(reader)
    when 'description'
      object.description = Reader.read_string(reader)
    when 'id'
      object.id = Reader.read_string(reader)
    when 'inbound_average'
      object.inbound_average = Reader.read_integer(reader)
    when 'inbound_burst'
      object.inbound_burst = Reader.read_integer(reader)
    when 'inbound_peak'
      object.inbound_peak = Reader.read_integer(reader)
    when 'max_iops'
      object.max_iops = Reader.read_integer(reader)
    when 'max_read_iops'
      object.max_read_iops = Reader.read_integer(reader)
    when 'max_read_throughput'
      object.max_read_throughput = Reader.read_integer(reader)
    when 'max_throughput'
      object.max_throughput = Reader.read_integer(reader)
    when 'max_write_iops'
      object.max_write_iops = Reader.read_integer(reader)
    when 'max_write_throughput'
      object.max_write_throughput = Reader.read_integer(reader)
    when 'name'
      object.name = Reader.read_string(reader)
    when 'outbound_average'
      object.outbound_average = Reader.read_integer(reader)
    when 'outbound_average_linkshare'
      object.outbound_average_linkshare = Reader.read_integer(reader)
    when 'outbound_average_realtime'
      object.outbound_average_realtime = Reader.read_integer(reader)
    when 'outbound_average_upperlimit'
      object.outbound_average_upperlimit = Reader.read_integer(reader)
    when 'outbound_burst'
      object.outbound_burst = Reader.read_integer(reader)
    when 'outbound_peak'
      object.outbound_peak = Reader.read_integer(reader)
    when 'type'
      object.type = Reader.read_enum(QosType, reader)
    when 'data_center'
      object.data_center = DataCenterReader.read_one(reader)
    else
      reader.next_element
    end
  end
  
  # Discard the end tag:
  reader.read
  
  return object
end