def self.read_one(reader)
return nil unless reader.forward
object = Cluster.new
object.href = reader.get_attribute('href')
value = reader.get_attribute('ballooning_enabled')
object.ballooning_enabled = 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('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('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('virt_service')
object.virt_service = value if not value.nil?
empty = reader.empty_element?
reader.read
return object if empty
while reader.forward do
case reader.node_name
when 'ballooning_enabled'
object.ballooning_enabled = Reader.read_boolean(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 '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 '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 'version'
object.version = VersionReader.read_one(reader)
when 'virt_service'
object.virt_service = 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 '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
reader.read
return object
end