func()

in sdk/resourcemanager/containerservice/armcontainerservice/models_serde.go [3100:3282]


func (m *ManagedClusterAgentPoolProfileProperties) UnmarshalJSON(data []byte) error {
	var rawMsg map[string]json.RawMessage
	if err := json.Unmarshal(data, &rawMsg); err != nil {
		return fmt.Errorf("unmarshalling type %T: %v", m, err)
	}
	for key, val := range rawMsg {
		var err error
		switch key {
		case "artifactStreamingProfile":
			err = unpopulate(val, "ArtifactStreamingProfile", &m.ArtifactStreamingProfile)
			delete(rawMsg, key)
		case "availabilityZones":
			err = unpopulate(val, "AvailabilityZones", &m.AvailabilityZones)
			delete(rawMsg, key)
		case "capacityReservationGroupID":
			err = unpopulate(val, "CapacityReservationGroupID", &m.CapacityReservationGroupID)
			delete(rawMsg, key)
		case "count":
			err = unpopulate(val, "Count", &m.Count)
			delete(rawMsg, key)
		case "creationData":
			err = unpopulate(val, "CreationData", &m.CreationData)
			delete(rawMsg, key)
		case "currentOrchestratorVersion":
			err = unpopulate(val, "CurrentOrchestratorVersion", &m.CurrentOrchestratorVersion)
			delete(rawMsg, key)
		case "eTag":
			err = unpopulate(val, "ETag", &m.ETag)
			delete(rawMsg, key)
		case "enableAutoScaling":
			err = unpopulate(val, "EnableAutoScaling", &m.EnableAutoScaling)
			delete(rawMsg, key)
		case "enableCustomCATrust":
			err = unpopulate(val, "EnableCustomCATrust", &m.EnableCustomCATrust)
			delete(rawMsg, key)
		case "enableEncryptionAtHost":
			err = unpopulate(val, "EnableEncryptionAtHost", &m.EnableEncryptionAtHost)
			delete(rawMsg, key)
		case "enableFIPS":
			err = unpopulate(val, "EnableFIPS", &m.EnableFIPS)
			delete(rawMsg, key)
		case "enableNodePublicIP":
			err = unpopulate(val, "EnableNodePublicIP", &m.EnableNodePublicIP)
			delete(rawMsg, key)
		case "enableUltraSSD":
			err = unpopulate(val, "EnableUltraSSD", &m.EnableUltraSSD)
			delete(rawMsg, key)
		case "gatewayProfile":
			err = unpopulate(val, "GatewayProfile", &m.GatewayProfile)
			delete(rawMsg, key)
		case "gpuInstanceProfile":
			err = unpopulate(val, "GpuInstanceProfile", &m.GpuInstanceProfile)
			delete(rawMsg, key)
		case "gpuProfile":
			err = unpopulate(val, "GpuProfile", &m.GpuProfile)
			delete(rawMsg, key)
		case "hostGroupID":
			err = unpopulate(val, "HostGroupID", &m.HostGroupID)
			delete(rawMsg, key)
		case "kubeletConfig":
			err = unpopulate(val, "KubeletConfig", &m.KubeletConfig)
			delete(rawMsg, key)
		case "kubeletDiskType":
			err = unpopulate(val, "KubeletDiskType", &m.KubeletDiskType)
			delete(rawMsg, key)
		case "linuxOSConfig":
			err = unpopulate(val, "LinuxOSConfig", &m.LinuxOSConfig)
			delete(rawMsg, key)
		case "maxCount":
			err = unpopulate(val, "MaxCount", &m.MaxCount)
			delete(rawMsg, key)
		case "maxPods":
			err = unpopulate(val, "MaxPods", &m.MaxPods)
			delete(rawMsg, key)
		case "messageOfTheDay":
			err = unpopulate(val, "MessageOfTheDay", &m.MessageOfTheDay)
			delete(rawMsg, key)
		case "minCount":
			err = unpopulate(val, "MinCount", &m.MinCount)
			delete(rawMsg, key)
		case "mode":
			err = unpopulate(val, "Mode", &m.Mode)
			delete(rawMsg, key)
		case "networkProfile":
			err = unpopulate(val, "NetworkProfile", &m.NetworkProfile)
			delete(rawMsg, key)
		case "nodeImageVersion":
			err = unpopulate(val, "NodeImageVersion", &m.NodeImageVersion)
			delete(rawMsg, key)
		case "nodeInitializationTaints":
			err = unpopulate(val, "NodeInitializationTaints", &m.NodeInitializationTaints)
			delete(rawMsg, key)
		case "nodeLabels":
			err = unpopulate(val, "NodeLabels", &m.NodeLabels)
			delete(rawMsg, key)
		case "nodePublicIPPrefixID":
			err = unpopulate(val, "NodePublicIPPrefixID", &m.NodePublicIPPrefixID)
			delete(rawMsg, key)
		case "nodeTaints":
			err = unpopulate(val, "NodeTaints", &m.NodeTaints)
			delete(rawMsg, key)
		case "osDiskSizeGB":
			err = unpopulate(val, "OSDiskSizeGB", &m.OSDiskSizeGB)
			delete(rawMsg, key)
		case "osDiskType":
			err = unpopulate(val, "OSDiskType", &m.OSDiskType)
			delete(rawMsg, key)
		case "osSKU":
			err = unpopulate(val, "OSSKU", &m.OSSKU)
			delete(rawMsg, key)
		case "osType":
			err = unpopulate(val, "OSType", &m.OSType)
			delete(rawMsg, key)
		case "orchestratorVersion":
			err = unpopulate(val, "OrchestratorVersion", &m.OrchestratorVersion)
			delete(rawMsg, key)
		case "podIPAllocationMode":
			err = unpopulate(val, "PodIPAllocationMode", &m.PodIPAllocationMode)
			delete(rawMsg, key)
		case "podSubnetID":
			err = unpopulate(val, "PodSubnetID", &m.PodSubnetID)
			delete(rawMsg, key)
		case "powerState":
			err = unpopulate(val, "PowerState", &m.PowerState)
			delete(rawMsg, key)
		case "provisioningState":
			err = unpopulate(val, "ProvisioningState", &m.ProvisioningState)
			delete(rawMsg, key)
		case "proximityPlacementGroupID":
			err = unpopulate(val, "ProximityPlacementGroupID", &m.ProximityPlacementGroupID)
			delete(rawMsg, key)
		case "scaleDownMode":
			err = unpopulate(val, "ScaleDownMode", &m.ScaleDownMode)
			delete(rawMsg, key)
		case "scaleSetEvictionPolicy":
			err = unpopulate(val, "ScaleSetEvictionPolicy", &m.ScaleSetEvictionPolicy)
			delete(rawMsg, key)
		case "scaleSetPriority":
			err = unpopulate(val, "ScaleSetPriority", &m.ScaleSetPriority)
			delete(rawMsg, key)
		case "securityProfile":
			err = unpopulate(val, "SecurityProfile", &m.SecurityProfile)
			delete(rawMsg, key)
		case "spotMaxPrice":
			err = unpopulate(val, "SpotMaxPrice", &m.SpotMaxPrice)
			delete(rawMsg, key)
		case "status":
			err = unpopulate(val, "Status", &m.Status)
			delete(rawMsg, key)
		case "tags":
			err = unpopulate(val, "Tags", &m.Tags)
			delete(rawMsg, key)
		case "type":
			err = unpopulate(val, "Type", &m.Type)
			delete(rawMsg, key)
		case "upgradeSettings":
			err = unpopulate(val, "UpgradeSettings", &m.UpgradeSettings)
			delete(rawMsg, key)
		case "vmSize":
			err = unpopulate(val, "VMSize", &m.VMSize)
			delete(rawMsg, key)
		case "virtualMachineNodesStatus":
			err = unpopulate(val, "VirtualMachineNodesStatus", &m.VirtualMachineNodesStatus)
			delete(rawMsg, key)
		case "virtualMachinesProfile":
			err = unpopulate(val, "VirtualMachinesProfile", &m.VirtualMachinesProfile)
			delete(rawMsg, key)
		case "vnetSubnetID":
			err = unpopulate(val, "VnetSubnetID", &m.VnetSubnetID)
			delete(rawMsg, key)
		case "windowsProfile":
			err = unpopulate(val, "WindowsProfile", &m.WindowsProfile)
			delete(rawMsg, key)
		case "workloadRuntime":
			err = unpopulate(val, "WorkloadRuntime", &m.WorkloadRuntime)
			delete(rawMsg, key)
		}
		if err != nil {
			return fmt.Errorf("unmarshalling type %T: %v", m, err)
		}
	}
	return nil
}