class OvirtSDK4::GlusterBrickReader

Public Class Methods

read_many(reader) click to toggle source
# File lib/ovirtsdk4/readers.rb, line 5509
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 5413
def self.read_one(reader)
  # Do nothing if there aren't more tags:
  return nil unless reader.forward
  
  # Create the object:
  object = GlusterBrick.new
  
  # Process the attributes:
  object.href = reader.get_attribute('href')
  value = reader.get_attribute('brick_dir')
  object.brick_dir = 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('device')
  object.device = value if not value.nil?
  value = reader.get_attribute('fs_name')
  object.fs_name = value if not value.nil?
  value = reader.get_attribute('id')
  object.id = value if not value.nil?
  value = reader.get_attribute('mnt_options')
  object.mnt_options = value if not value.nil?
  value = reader.get_attribute('name')
  object.name = value if not value.nil?
  value = reader.get_attribute('pid')
  object.pid = value if not value.nil?
  value = reader.get_attribute('port')
  object.port = value if not value.nil?
  value = reader.get_attribute('server_id')
  object.server_id = value if not value.nil?
  value = reader.get_attribute('status')
  object.status = 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 'brick_dir'
      object.brick_dir = Reader.read_string(reader)
    when 'comment'
      object.comment = Reader.read_string(reader)
    when 'description'
      object.description = Reader.read_string(reader)
    when 'device'
      object.device = Reader.read_string(reader)
    when 'fs_name'
      object.fs_name = Reader.read_string(reader)
    when 'gluster_clients'
      object.gluster_clients = GlusterClientReader.read_many(reader)
    when 'id'
      object.id = Reader.read_string(reader)
    when 'memory_pools'
      object.memory_pools = GlusterMemoryPoolReader.read_many(reader)
    when 'mnt_options'
      object.mnt_options = Reader.read_string(reader)
    when 'name'
      object.name = Reader.read_string(reader)
    when 'pid'
      object.pid = Reader.read_integer(reader)
    when 'port'
      object.port = Reader.read_integer(reader)
    when 'server_id'
      object.server_id = Reader.read_string(reader)
    when 'status'
      object.status = Reader.read_string(reader)
    when 'gluster_volume'
      object.gluster_volume = GlusterVolumeReader.read_one(reader)
    when 'instance_type'
      object.instance_type = InstanceTypeReader.read_one(reader)
    when 'statistics'
      object.statistics = StatisticReader.read_many(reader)
    when 'template'
      object.template = TemplateReader.read_one(reader)
    when 'vm'
      object.vm = VmReader.read_one(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