class OvirtSDK4::MigrationOptionsReader

Public Class Methods

read_many(reader) click to toggle source
# File lib/ovirtsdk4/readers.rb, line 11128
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 11074
def self.read_one(reader)
  # Do nothing if there aren't more tags:
  return nil unless reader.forward
  
  # Create the object:
  object = MigrationOptions.new
  
  # Process the attributes:
  object.href = reader.get_attribute('href')
  value = reader.get_attribute('auto_converge')
  object.auto_converge = value if not value.nil?
  value = reader.get_attribute('compressed')
  object.compressed = value if not value.nil?
  value = reader.get_attribute('custom_parallel_migrations')
  object.custom_parallel_migrations = value if not value.nil?
  value = reader.get_attribute('encrypted')
  object.encrypted = value if not value.nil?
  value = reader.get_attribute('parallel_migrations_policy')
  object.parallel_migrations_policy = 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 'auto_converge'
      object.auto_converge = Reader.read_enum(InheritableBoolean, reader)
    when 'bandwidth'
      object.bandwidth = MigrationBandwidthReader.read_one(reader)
    when 'compressed'
      object.compressed = Reader.read_enum(InheritableBoolean, reader)
    when 'custom_parallel_migrations'
      object.custom_parallel_migrations = Reader.read_integer(reader)
    when 'encrypted'
      object.encrypted = Reader.read_enum(InheritableBoolean, reader)
    when 'parallel_migrations_policy'
      object.parallel_migrations_policy = Reader.read_enum(ParallelMigrationsPolicy, reader)
    when 'policy'
      object.policy = MigrationPolicyReader.read_one(reader)
    else
      reader.next_element
    end
  end
  
  # Discard the end tag:
  reader.read
  
  return object
end