class OvirtSDK4::UserReader

Public Class Methods

read_many(reader) click to toggle source
# File lib/ovirtsdk4/readers.rb, line 16460
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 16364
def self.read_one(reader)
  # Do nothing if there aren't more tags:
  return nil unless reader.forward
  
  # Create the object:
  object = User.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('department')
  object.department = value if not value.nil?
  value = reader.get_attribute('description')
  object.description = value if not value.nil?
  value = reader.get_attribute('domain_entry_id')
  object.domain_entry_id = value if not value.nil?
  value = reader.get_attribute('email')
  object.email = value if not value.nil?
  value = reader.get_attribute('id')
  object.id = value if not value.nil?
  value = reader.get_attribute('last_name')
  object.last_name = value if not value.nil?
  value = reader.get_attribute('logged_in')
  object.logged_in = value if not value.nil?
  value = reader.get_attribute('name')
  object.name = value if not value.nil?
  value = reader.get_attribute('namespace')
  object.namespace = value if not value.nil?
  value = reader.get_attribute('password')
  object.password = value if not value.nil?
  value = reader.get_attribute('principal')
  object.principal = value if not value.nil?
  value = reader.get_attribute('user_name')
  object.user_name = 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 'department'
      object.department = Reader.read_string(reader)
    when 'description'
      object.description = Reader.read_string(reader)
    when 'domain_entry_id'
      object.domain_entry_id = Reader.read_string(reader)
    when 'email'
      object.email = Reader.read_string(reader)
    when 'id'
      object.id = Reader.read_string(reader)
    when 'last_name'
      object.last_name = Reader.read_string(reader)
    when 'logged_in'
      object.logged_in = Reader.read_boolean(reader)
    when 'name'
      object.name = Reader.read_string(reader)
    when 'namespace'
      object.namespace = Reader.read_string(reader)
    when 'password'
      object.password = Reader.read_string(reader)
    when 'principal'
      object.principal = Reader.read_string(reader)
    when 'user_name'
      object.user_name = Reader.read_string(reader)
    when 'domain'
      object.domain = DomainReader.read_one(reader)
    when 'groups'
      object.groups = GroupReader.read_many(reader)
    when 'permissions'
      object.permissions = PermissionReader.read_many(reader)
    when 'roles'
      object.roles = RoleReader.read_many(reader)
    when 'ssh_public_keys'
      object.ssh_public_keys = SshPublicKeyReader.read_many(reader)
    when 'tags'
      object.tags = TagReader.read_many(reader)
    when 'link'
      read_link(reader, object)
    else
      reader.next_element
    end
  end
  
  # Discard the end tag:
  reader.read
  
  return object
end