class OvirtSDK4::ClusterReader

Public Class Methods

read_many(reader) click to toggle source
# File lib/ovirtsdk4/readers.rb, line 2441
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 2263
def self.read_one(reader)
  # Do nothing if there aren't more tags:
  return nil unless reader.forward
  
  # Create the object:
  object = Cluster.new
  
  # Process the attributes:
  object.href = reader.get_attribute('href')
  value = reader.get_attribute('ballooning_enabled')
  object.ballooning_enabled = value if not value.nil?
  value = reader.get_attribute('bios_type')
  object.bios_type = 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('fips_mode')
  object.fips_mode = value if not value.nil?
  value = reader.get_attribute('firewall_type')
  object.firewall_type = value if not value.nil?
  value = reader.get_attribute('gluster_service')
  object.gluster_service = value if not value.nil?
  value = reader.get_attribute('gluster_tuned_profile')
  object.gluster_tuned_profile = value if not value.nil?
  value = reader.get_attribute('ha_reservation')
  object.ha_reservation = value if not value.nil?
  value = reader.get_attribute('id')
  object.id = value if not value.nil?
  value = reader.get_attribute('log_max_memory_used_threshold')
  object.log_max_memory_used_threshold = value if not value.nil?
  value = reader.get_attribute('log_max_memory_used_threshold_type')
  object.log_max_memory_used_threshold_type = value if not value.nil?
  value = reader.get_attribute('maintenance_reason_required')
  object.maintenance_reason_required = value if not value.nil?
  value = reader.get_attribute('name')
  object.name = value if not value.nil?
  value = reader.get_attribute('optional_reason')
  object.optional_reason = value if not value.nil?
  value = reader.get_attribute('switch_type')
  object.switch_type = value if not value.nil?
  value = reader.get_attribute('threads_as_cores')
  object.threads_as_cores = value if not value.nil?
  value = reader.get_attribute('trusted_service')
  object.trusted_service = value if not value.nil?
  value = reader.get_attribute('tunnel_migration')
  object.tunnel_migration = value if not value.nil?
  value = reader.get_attribute('upgrade_correlation_id')
  object.upgrade_correlation_id = value if not value.nil?
  value = reader.get_attribute('upgrade_in_progress')
  object.upgrade_in_progress = value if not value.nil?
  value = reader.get_attribute('upgrade_percent_complete')
  object.upgrade_percent_complete = value if not value.nil?
  value = reader.get_attribute('virt_service')
  object.virt_service = value if not value.nil?
  value = reader.get_attribute('vnc_encryption')
  object.vnc_encryption = 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 'ballooning_enabled'
      object.ballooning_enabled = Reader.read_boolean(reader)
    when 'bios_type'
      object.bios_type = Reader.read_enum(BiosType, reader)
    when 'comment'
      object.comment = Reader.read_string(reader)
    when 'cpu'
      object.cpu = CpuReader.read_one(reader)
    when 'custom_scheduling_policy_properties'
      object.custom_scheduling_policy_properties = PropertyReader.read_many(reader)
    when 'description'
      object.description = Reader.read_string(reader)
    when 'display'
      object.display = DisplayReader.read_one(reader)
    when 'error_handling'
      object.error_handling = ErrorHandlingReader.read_one(reader)
    when 'fencing_policy'
      object.fencing_policy = FencingPolicyReader.read_one(reader)
    when 'fips_mode'
      object.fips_mode = Reader.read_enum(FipsMode, reader)
    when 'firewall_type'
      object.firewall_type = Reader.read_enum(FirewallType, reader)
    when 'gluster_service'
      object.gluster_service = Reader.read_boolean(reader)
    when 'gluster_tuned_profile'
      object.gluster_tuned_profile = Reader.read_string(reader)
    when 'ha_reservation'
      object.ha_reservation = Reader.read_boolean(reader)
    when 'id'
      object.id = Reader.read_string(reader)
    when 'ksm'
      object.ksm = KsmReader.read_one(reader)
    when 'log_max_memory_used_threshold'
      object.log_max_memory_used_threshold = Reader.read_integer(reader)
    when 'log_max_memory_used_threshold_type'
      object.log_max_memory_used_threshold_type = Reader.read_enum(LogMaxMemoryUsedThresholdType, reader)
    when 'maintenance_reason_required'
      object.maintenance_reason_required = Reader.read_boolean(reader)
    when 'memory_policy'
      object.memory_policy = MemoryPolicyReader.read_one(reader)
    when 'migration'
      object.migration = MigrationOptionsReader.read_one(reader)
    when 'name'
      object.name = Reader.read_string(reader)
    when 'optional_reason'
      object.optional_reason = Reader.read_boolean(reader)
    when 'required_rng_sources'
      object.required_rng_sources = Reader.read_enums(RngSource, reader)
    when 'serial_number'
      object.serial_number = SerialNumberReader.read_one(reader)
    when 'supported_versions'
      object.supported_versions = VersionReader.read_many(reader)
    when 'switch_type'
      object.switch_type = Reader.read_enum(SwitchType, reader)
    when 'threads_as_cores'
      object.threads_as_cores = Reader.read_boolean(reader)
    when 'trusted_service'
      object.trusted_service = Reader.read_boolean(reader)
    when 'tunnel_migration'
      object.tunnel_migration = Reader.read_boolean(reader)
    when 'upgrade_correlation_id'
      object.upgrade_correlation_id = Reader.read_string(reader)
    when 'upgrade_in_progress'
      object.upgrade_in_progress = Reader.read_boolean(reader)
    when 'upgrade_percent_complete'
      object.upgrade_percent_complete = Reader.read_integer(reader)
    when 'version'
      object.version = VersionReader.read_one(reader)
    when 'virt_service'
      object.virt_service = Reader.read_boolean(reader)
    when 'vnc_encryption'
      object.vnc_encryption = Reader.read_boolean(reader)
    when 'affinity_groups'
      object.affinity_groups = AffinityGroupReader.read_many(reader)
    when 'cpu_profiles'
      object.cpu_profiles = CpuProfileReader.read_many(reader)
    when 'data_center'
      object.data_center = DataCenterReader.read_one(reader)
    when 'enabled_features'
      object.enabled_features = ClusterFeatureReader.read_many(reader)
    when 'external_network_providers'
      object.external_network_providers = ExternalProviderReader.read_many(reader)
    when 'gluster_hooks'
      object.gluster_hooks = GlusterHookReader.read_many(reader)
    when 'gluster_volumes'
      object.gluster_volumes = GlusterVolumeReader.read_many(reader)
    when 'mac_pool'
      object.mac_pool = MacPoolReader.read_one(reader)
    when 'management_network'
      object.management_network = NetworkReader.read_one(reader)
    when 'network_filters'
      object.network_filters = NetworkFilterReader.read_many(reader)
    when 'networks'
      object.networks = NetworkReader.read_many(reader)
    when 'permissions'
      object.permissions = PermissionReader.read_many(reader)
    when 'scheduling_policy'
      object.scheduling_policy = SchedulingPolicyReader.read_one(reader)
    when 'link'
      read_link(reader, object)
    else
      reader.next_element
    end
  end
  
  # Discard the end tag:
  reader.read
  
  return object
end