class OvirtSDK4::ImageTransferReader

Public Class Methods

read_many(reader) click to toggle source
# File lib/ovirtsdk4/readers.rb, line 9136
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 9040
def self.read_one(reader)
  # Do nothing if there aren't more tags:
  return nil unless reader.forward
  
  # Create the object:
  object = ImageTransfer.new
  
  # Process the attributes:
  object.href = reader.get_attribute('href')
  value = reader.get_attribute('active')
  object.active = 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('direction')
  object.direction = value if not value.nil?
  value = reader.get_attribute('format')
  object.format = value if not value.nil?
  value = reader.get_attribute('id')
  object.id = value if not value.nil?
  value = reader.get_attribute('inactivity_timeout')
  object.inactivity_timeout = value if not value.nil?
  value = reader.get_attribute('name')
  object.name = value if not value.nil?
  value = reader.get_attribute('phase')
  object.phase = value if not value.nil?
  value = reader.get_attribute('proxy_url')
  object.proxy_url = value if not value.nil?
  value = reader.get_attribute('shallow')
  object.shallow = value if not value.nil?
  value = reader.get_attribute('timeout_policy')
  object.timeout_policy = value if not value.nil?
  value = reader.get_attribute('transfer_url')
  object.transfer_url = value if not value.nil?
  value = reader.get_attribute('transferred')
  object.transferred = 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 'active'
      object.active = Reader.read_boolean(reader)
    when 'comment'
      object.comment = Reader.read_string(reader)
    when 'description'
      object.description = Reader.read_string(reader)
    when 'direction'
      object.direction = Reader.read_enum(ImageTransferDirection, reader)
    when 'format'
      object.format = Reader.read_enum(DiskFormat, reader)
    when 'id'
      object.id = Reader.read_string(reader)
    when 'inactivity_timeout'
      object.inactivity_timeout = Reader.read_integer(reader)
    when 'name'
      object.name = Reader.read_string(reader)
    when 'phase'
      object.phase = Reader.read_enum(ImageTransferPhase, reader)
    when 'proxy_url'
      object.proxy_url = Reader.read_string(reader)
    when 'shallow'
      object.shallow = Reader.read_boolean(reader)
    when 'timeout_policy'
      object.timeout_policy = Reader.read_enum(ImageTransferTimeoutPolicy, reader)
    when 'transfer_url'
      object.transfer_url = Reader.read_string(reader)
    when 'transferred'
      object.transferred = Reader.read_integer(reader)
    when 'backup'
      object.backup = BackupReader.read_one(reader)
    when 'disk'
      object.disk = DiskReader.read_one(reader)
    when 'host'
      object.host = HostReader.read_one(reader)
    when 'image'
      object.image = ImageReader.read_one(reader)
    when 'snapshot'
      object.snapshot = DiskSnapshotReader.read_one(reader)
    else
      reader.next_element
    end
  end
  
  # Discard the end tag:
  reader.read
  
  return object
end