func()

in sdk/resourcemanager/servicefabricmanagedclusters/armservicefabricmanagedclusters/models_serde.go [1555:1692]


func (m *ManagedClusterProperties) 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 "addonFeatures":
			err = unpopulate(val, "AddonFeatures", &m.AddonFeatures)
			delete(rawMsg, key)
		case "adminPassword":
			err = unpopulate(val, "AdminPassword", &m.AdminPassword)
			delete(rawMsg, key)
		case "adminUserName":
			err = unpopulate(val, "AdminUserName", &m.AdminUserName)
			delete(rawMsg, key)
		case "allocatedOutboundPorts":
			err = unpopulate(val, "AllocatedOutboundPorts", &m.AllocatedOutboundPorts)
			delete(rawMsg, key)
		case "allowRdpAccess":
			err = unpopulate(val, "AllowRdpAccess", &m.AllowRdpAccess)
			delete(rawMsg, key)
		case "applicationTypeVersionsCleanupPolicy":
			err = unpopulate(val, "ApplicationTypeVersionsCleanupPolicy", &m.ApplicationTypeVersionsCleanupPolicy)
			delete(rawMsg, key)
		case "autoGeneratedDomainNameLabelScope":
			err = unpopulate(val, "AutoGeneratedDomainNameLabelScope", &m.AutoGeneratedDomainNameLabelScope)
			delete(rawMsg, key)
		case "auxiliarySubnets":
			err = unpopulate(val, "AuxiliarySubnets", &m.AuxiliarySubnets)
			delete(rawMsg, key)
		case "azureActiveDirectory":
			err = unpopulate(val, "AzureActiveDirectory", &m.AzureActiveDirectory)
			delete(rawMsg, key)
		case "clientConnectionPort":
			err = unpopulate(val, "ClientConnectionPort", &m.ClientConnectionPort)
			delete(rawMsg, key)
		case "clients":
			err = unpopulate(val, "Clients", &m.Clients)
			delete(rawMsg, key)
		case "clusterCertificateThumbprints":
			err = unpopulate(val, "ClusterCertificateThumbprints", &m.ClusterCertificateThumbprints)
			delete(rawMsg, key)
		case "clusterCodeVersion":
			err = unpopulate(val, "ClusterCodeVersion", &m.ClusterCodeVersion)
			delete(rawMsg, key)
		case "clusterId":
			err = unpopulate(val, "ClusterID", &m.ClusterID)
			delete(rawMsg, key)
		case "clusterState":
			err = unpopulate(val, "ClusterState", &m.ClusterState)
			delete(rawMsg, key)
		case "clusterUpgradeCadence":
			err = unpopulate(val, "ClusterUpgradeCadence", &m.ClusterUpgradeCadence)
			delete(rawMsg, key)
		case "clusterUpgradeMode":
			err = unpopulate(val, "ClusterUpgradeMode", &m.ClusterUpgradeMode)
			delete(rawMsg, key)
		case "dnsName":
			err = unpopulate(val, "DNSName", &m.DNSName)
			delete(rawMsg, key)
		case "ddosProtectionPlanId":
			err = unpopulate(val, "DdosProtectionPlanID", &m.DdosProtectionPlanID)
			delete(rawMsg, key)
		case "enableAutoOSUpgrade":
			err = unpopulate(val, "EnableAutoOSUpgrade", &m.EnableAutoOSUpgrade)
			delete(rawMsg, key)
		case "enableHttpGatewayExclusiveAuthMode":
			err = unpopulate(val, "EnableHTTPGatewayExclusiveAuthMode", &m.EnableHTTPGatewayExclusiveAuthMode)
			delete(rawMsg, key)
		case "enableIpv6":
			err = unpopulate(val, "EnableIPv6", &m.EnableIPv6)
			delete(rawMsg, key)
		case "enableServicePublicIP":
			err = unpopulate(val, "EnableServicePublicIP", &m.EnableServicePublicIP)
			delete(rawMsg, key)
		case "fabricSettings":
			err = unpopulate(val, "FabricSettings", &m.FabricSettings)
			delete(rawMsg, key)
		case "fqdn":
			err = unpopulate(val, "Fqdn", &m.Fqdn)
			delete(rawMsg, key)
		case "httpGatewayConnectionPort":
			err = unpopulate(val, "HTTPGatewayConnectionPort", &m.HTTPGatewayConnectionPort)
			delete(rawMsg, key)
		case "httpGatewayTokenAuthConnectionPort":
			err = unpopulate(val, "HTTPGatewayTokenAuthConnectionPort", &m.HTTPGatewayTokenAuthConnectionPort)
			delete(rawMsg, key)
		case "ipTags":
			err = unpopulate(val, "IPTags", &m.IPTags)
			delete(rawMsg, key)
		case "ipv4Address":
			err = unpopulate(val, "IPv4Address", &m.IPv4Address)
			delete(rawMsg, key)
		case "ipv6Address":
			err = unpopulate(val, "IPv6Address", &m.IPv6Address)
			delete(rawMsg, key)
		case "loadBalancingRules":
			err = unpopulate(val, "LoadBalancingRules", &m.LoadBalancingRules)
			delete(rawMsg, key)
		case "networkSecurityRules":
			err = unpopulate(val, "NetworkSecurityRules", &m.NetworkSecurityRules)
			delete(rawMsg, key)
		case "provisioningState":
			err = unpopulate(val, "ProvisioningState", &m.ProvisioningState)
			delete(rawMsg, key)
		case "publicIPPrefixId":
			err = unpopulate(val, "PublicIPPrefixID", &m.PublicIPPrefixID)
			delete(rawMsg, key)
		case "publicIPv6PrefixId":
			err = unpopulate(val, "PublicIPv6PrefixID", &m.PublicIPv6PrefixID)
			delete(rawMsg, key)
		case "serviceEndpoints":
			err = unpopulate(val, "ServiceEndpoints", &m.ServiceEndpoints)
			delete(rawMsg, key)
		case "subnetId":
			err = unpopulate(val, "SubnetID", &m.SubnetID)
			delete(rawMsg, key)
		case "upgradeDescription":
			err = unpopulate(val, "UpgradeDescription", &m.UpgradeDescription)
			delete(rawMsg, key)
		case "useCustomVnet":
			err = unpopulate(val, "UseCustomVnet", &m.UseCustomVnet)
			delete(rawMsg, key)
		case "zonalResiliency":
			err = unpopulate(val, "ZonalResiliency", &m.ZonalResiliency)
			delete(rawMsg, key)
		case "zonalUpdateMode":
			err = unpopulate(val, "ZonalUpdateMode", &m.ZonalUpdateMode)
			delete(rawMsg, key)
		}
		if err != nil {
			return fmt.Errorf("unmarshalling type %T: %v", m, err)
		}
	}
	return nil
}