public void Deserialization() { var id = "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.ClassicStorage/storageAccounts/account1"; var expected = "{\"id\":\"" + id + "\"}"; var resource1 = new SubResource(id); var jsonString = JsonHelper.SerializeToString(resource1); var json = JsonDocument.Parse(jsonString).RootElement; var resource2 = SubResource.DeserializeSubResource(json); Assert.AreEqual(expected, jsonString); Assert.AreEqual(jsonString, JsonHelper.SerializeToString(resource2)); }
internal static VirtualWANData DeserializeVirtualWANData(JsonElement element) { Optional <string> etag = default; Optional <string> name = default; Optional <string> type = default; Optional <string> location = default; Optional <IDictionary <string, string> > tags = default; ResourceIdentifier id = default; Optional <bool> disableVpnEncryption = default; Optional <IReadOnlyList <SubResource> > virtualHubs = default; Optional <IReadOnlyList <SubResource> > vpnSites = default; Optional <bool> allowBranchToBranchTraffic = default; Optional <bool> allowVnetToVnetTraffic = default; Optional <OfficeTrafficCategory> office365LocalBreakoutCategory = default; Optional <ProvisioningState> provisioningState = default; Optional <string> type0 = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("etag")) { etag = property.Value.GetString(); continue; } if (property.NameEquals("name")) { name = property.Value.GetString(); continue; } if (property.NameEquals("type")) { type = property.Value.GetString(); continue; } if (property.NameEquals("location")) { location = property.Value.GetString(); continue; } if (property.NameEquals("tags")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } Dictionary <string, string> dictionary = new Dictionary <string, string>(); foreach (var property0 in property.Value.EnumerateObject()) { dictionary.Add(property0.Name, property0.Value.GetString()); } tags = dictionary; continue; } if (property.NameEquals("id")) { id = property.Value.GetString(); continue; } if (property.NameEquals("properties")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("disableVpnEncryption")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } disableVpnEncryption = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("virtualHubs")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <SubResource> array = new List <SubResource>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(SubResource.DeserializeSubResource(item)); } virtualHubs = array; continue; } if (property0.NameEquals("vpnSites")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <SubResource> array = new List <SubResource>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(SubResource.DeserializeSubResource(item)); } vpnSites = array; continue; } if (property0.NameEquals("allowBranchToBranchTraffic")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } allowBranchToBranchTraffic = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("allowVnetToVnetTraffic")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } allowVnetToVnetTraffic = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("office365LocalBreakoutCategory")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } office365LocalBreakoutCategory = new OfficeTrafficCategory(property0.Value.GetString()); continue; } if (property0.NameEquals("provisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } provisioningState = new ProvisioningState(property0.Value.GetString()); continue; } if (property0.NameEquals("type")) { type0 = property0.Value.GetString(); continue; } } continue; } } return(new VirtualWANData(id, name.Value, type.Value, location.Value, Optional.ToDictionary(tags), etag.Value, Optional.ToNullable(disableVpnEncryption), Optional.ToList(virtualHubs), Optional.ToList(vpnSites), Optional.ToNullable(allowBranchToBranchTraffic), Optional.ToNullable(allowVnetToVnetTraffic), Optional.ToNullable(office365LocalBreakoutCategory), Optional.ToNullable(provisioningState), type0.Value)); }
internal static NatGatewayData DeserializeNatGatewayData(JsonElement element) { Optional <NatGatewaySku> sku = default; Optional <IList <string> > zones = default; Optional <string> etag = default; Optional <string> name = default; Optional <string> type = default; Optional <string> location = default; Optional <IDictionary <string, string> > tags = default; ResourceIdentifier id = default; Optional <int> idleTimeoutInMinutes = default; Optional <IList <SubResource> > publicIpAddresses = default; Optional <IList <SubResource> > publicIpPrefixes = default; Optional <IReadOnlyList <SubResource> > subnets = default; Optional <string> resourceGuid = default; Optional <ProvisioningState> provisioningState = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("sku")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } sku = NatGatewaySku.DeserializeNatGatewaySku(property.Value); continue; } if (property.NameEquals("zones")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } List <string> array = new List <string>(); foreach (var item in property.Value.EnumerateArray()) { array.Add(item.GetString()); } zones = array; continue; } if (property.NameEquals("etag")) { etag = property.Value.GetString(); continue; } if (property.NameEquals("name")) { name = property.Value.GetString(); continue; } if (property.NameEquals("type")) { type = property.Value.GetString(); continue; } if (property.NameEquals("location")) { location = property.Value.GetString(); continue; } if (property.NameEquals("tags")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } Dictionary <string, string> dictionary = new Dictionary <string, string>(); foreach (var property0 in property.Value.EnumerateObject()) { dictionary.Add(property0.Name, property0.Value.GetString()); } tags = dictionary; continue; } if (property.NameEquals("id")) { id = property.Value.GetString(); continue; } if (property.NameEquals("properties")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("idleTimeoutInMinutes")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } idleTimeoutInMinutes = property0.Value.GetInt32(); continue; } if (property0.NameEquals("publicIpAddresses")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <SubResource> array = new List <SubResource>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(SubResource.DeserializeSubResource(item)); } publicIpAddresses = array; continue; } if (property0.NameEquals("publicIpPrefixes")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <SubResource> array = new List <SubResource>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(SubResource.DeserializeSubResource(item)); } publicIpPrefixes = array; continue; } if (property0.NameEquals("subnets")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <SubResource> array = new List <SubResource>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(SubResource.DeserializeSubResource(item)); } subnets = array; continue; } if (property0.NameEquals("resourceGuid")) { resourceGuid = property0.Value.GetString(); continue; } if (property0.NameEquals("provisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } provisioningState = new ProvisioningState(property0.Value.GetString()); continue; } } continue; } } return(new NatGatewayData(id, name.Value, type.Value, location.Value, Optional.ToDictionary(tags), sku.Value, Optional.ToList(zones), etag.Value, Optional.ToNullable(idleTimeoutInMinutes), Optional.ToList(publicIpAddresses), Optional.ToList(publicIpPrefixes), Optional.ToList(subnets), resourceGuid.Value, Optional.ToNullable(provisioningState))); }
internal static VpnConnectionData DeserializeVpnConnectionData(JsonElement element) { Optional <string> name = default; Optional <string> etag = default; ResourceIdentifier id = default; Optional <SubResource> remoteVpnSite = default; Optional <int> routingWeight = default; Optional <int> dpdTimeoutSeconds = default; Optional <VpnConnectionStatus> connectionStatus = default; Optional <VirtualNetworkGatewayConnectionProtocol> vpnConnectionProtocolType = default; Optional <long> ingressBytesTransferred = default; Optional <long> egressBytesTransferred = default; Optional <int> connectionBandwidth = default; Optional <string> sharedKey = default; Optional <bool> enableBgp = default; Optional <bool> usePolicyBasedTrafficSelectors = default; Optional <IList <IpsecPolicy> > ipsecPolicies = default; Optional <IList <TrafficSelectorPolicy> > trafficSelectorPolicies = default; Optional <bool> enableRateLimiting = default; Optional <bool> enableInternetSecurity = default; Optional <bool> useLocalAzureIpAddress = default; Optional <ProvisioningState> provisioningState = default; Optional <IList <VpnSiteLinkConnection> > vpnLinkConnections = default; Optional <RoutingConfiguration> routingConfiguration = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("name")) { name = property.Value.GetString(); continue; } if (property.NameEquals("etag")) { etag = property.Value.GetString(); continue; } if (property.NameEquals("id")) { id = property.Value.GetString(); continue; } if (property.NameEquals("properties")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("remoteVpnSite")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } remoteVpnSite = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("routingWeight")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } routingWeight = property0.Value.GetInt32(); continue; } if (property0.NameEquals("dpdTimeoutSeconds")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } dpdTimeoutSeconds = property0.Value.GetInt32(); continue; } if (property0.NameEquals("connectionStatus")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } connectionStatus = new VpnConnectionStatus(property0.Value.GetString()); continue; } if (property0.NameEquals("vpnConnectionProtocolType")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } vpnConnectionProtocolType = new VirtualNetworkGatewayConnectionProtocol(property0.Value.GetString()); continue; } if (property0.NameEquals("ingressBytesTransferred")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } ingressBytesTransferred = property0.Value.GetInt64(); continue; } if (property0.NameEquals("egressBytesTransferred")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } egressBytesTransferred = property0.Value.GetInt64(); continue; } if (property0.NameEquals("connectionBandwidth")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } connectionBandwidth = property0.Value.GetInt32(); continue; } if (property0.NameEquals("sharedKey")) { sharedKey = property0.Value.GetString(); continue; } if (property0.NameEquals("enableBgp")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } enableBgp = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("usePolicyBasedTrafficSelectors")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } usePolicyBasedTrafficSelectors = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("ipsecPolicies")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <IpsecPolicy> array = new List <IpsecPolicy>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(IpsecPolicy.DeserializeIpsecPolicy(item)); } ipsecPolicies = array; continue; } if (property0.NameEquals("trafficSelectorPolicies")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <TrafficSelectorPolicy> array = new List <TrafficSelectorPolicy>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(TrafficSelectorPolicy.DeserializeTrafficSelectorPolicy(item)); } trafficSelectorPolicies = array; continue; } if (property0.NameEquals("enableRateLimiting")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } enableRateLimiting = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("enableInternetSecurity")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } enableInternetSecurity = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("useLocalAzureIpAddress")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } useLocalAzureIpAddress = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("provisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } provisioningState = new ProvisioningState(property0.Value.GetString()); continue; } if (property0.NameEquals("vpnLinkConnections")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <VpnSiteLinkConnection> array = new List <VpnSiteLinkConnection>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(VpnSiteLinkConnection.DeserializeVpnSiteLinkConnection(item)); } vpnLinkConnections = array; continue; } if (property0.NameEquals("routingConfiguration")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } routingConfiguration = RoutingConfiguration.DeserializeRoutingConfiguration(property0.Value); continue; } } continue; } } return(new VpnConnectionData(id, name.Value, etag.Value, remoteVpnSite.Value, Optional.ToNullable(routingWeight), Optional.ToNullable(dpdTimeoutSeconds), Optional.ToNullable(connectionStatus), Optional.ToNullable(vpnConnectionProtocolType), Optional.ToNullable(ingressBytesTransferred), Optional.ToNullable(egressBytesTransferred), Optional.ToNullable(connectionBandwidth), sharedKey.Value, Optional.ToNullable(enableBgp), Optional.ToNullable(usePolicyBasedTrafficSelectors), Optional.ToList(ipsecPolicies), Optional.ToList(trafficSelectorPolicies), Optional.ToNullable(enableRateLimiting), Optional.ToNullable(enableInternetSecurity), Optional.ToNullable(useLocalAzureIpAddress), Optional.ToNullable(provisioningState), Optional.ToList(vpnLinkConnections), routingConfiguration.Value)); }
internal static PublicIPAddressData DeserializePublicIPAddressData(JsonElement element) { Optional <ExtendedLocation> extendedLocation = default; Optional <PublicIPAddressSku> sku = default; Optional <string> etag = default; Optional <IList <string> > zones = default; Optional <string> name = default; Optional <string> type = default; Optional <string> location = default; Optional <IDictionary <string, string> > tags = default; ResourceIdentifier id = default; Optional <IPAllocationMethod> publicIPAllocationMethod = default; Optional <IPVersion> publicIPAddressVersion = default; Optional <IPConfiguration> ipConfiguration = default; Optional <PublicIPAddressDnsSettings> dnsSettings = default; Optional <DdosSettings> ddosSettings = default; Optional <IList <IpTag> > ipTags = default; Optional <string> ipAddress = default; Optional <SubResource> publicIPPrefix = default; Optional <int> idleTimeoutInMinutes = default; Optional <string> resourceGuid = default; Optional <ProvisioningState> provisioningState = default; Optional <PublicIPAddressData> servicePublicIPAddress = default; Optional <NatGatewayData> natGateway = default; Optional <PublicIPAddressMigrationPhase> migrationPhase = default; Optional <PublicIPAddressData> linkedPublicIPAddress = default; Optional <DeleteOptions> deleteOption = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("extendedLocation")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } extendedLocation = ExtendedLocation.DeserializeExtendedLocation(property.Value); continue; } if (property.NameEquals("sku")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } sku = PublicIPAddressSku.DeserializePublicIPAddressSku(property.Value); continue; } if (property.NameEquals("etag")) { etag = property.Value.GetString(); continue; } if (property.NameEquals("zones")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } List <string> array = new List <string>(); foreach (var item in property.Value.EnumerateArray()) { array.Add(item.GetString()); } zones = array; continue; } if (property.NameEquals("name")) { name = property.Value.GetString(); continue; } if (property.NameEquals("type")) { type = property.Value.GetString(); continue; } if (property.NameEquals("location")) { location = property.Value.GetString(); continue; } if (property.NameEquals("tags")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } Dictionary <string, string> dictionary = new Dictionary <string, string>(); foreach (var property0 in property.Value.EnumerateObject()) { dictionary.Add(property0.Name, property0.Value.GetString()); } tags = dictionary; continue; } if (property.NameEquals("id")) { id = property.Value.GetString(); continue; } if (property.NameEquals("properties")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("publicIPAllocationMethod")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } publicIPAllocationMethod = new IPAllocationMethod(property0.Value.GetString()); continue; } if (property0.NameEquals("publicIPAddressVersion")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } publicIPAddressVersion = new IPVersion(property0.Value.GetString()); continue; } if (property0.NameEquals("ipConfiguration")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } ipConfiguration = IPConfiguration.DeserializeIPConfiguration(property0.Value); continue; } if (property0.NameEquals("dnsSettings")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } dnsSettings = PublicIPAddressDnsSettings.DeserializePublicIPAddressDnsSettings(property0.Value); continue; } if (property0.NameEquals("ddosSettings")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } ddosSettings = DdosSettings.DeserializeDdosSettings(property0.Value); continue; } if (property0.NameEquals("ipTags")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <IpTag> array = new List <IpTag>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(IpTag.DeserializeIpTag(item)); } ipTags = array; continue; } if (property0.NameEquals("ipAddress")) { ipAddress = property0.Value.GetString(); continue; } if (property0.NameEquals("publicIPPrefix")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } publicIPPrefix = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("idleTimeoutInMinutes")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } idleTimeoutInMinutes = property0.Value.GetInt32(); continue; } if (property0.NameEquals("resourceGuid")) { resourceGuid = property0.Value.GetString(); continue; } if (property0.NameEquals("provisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } provisioningState = new ProvisioningState(property0.Value.GetString()); continue; } if (property0.NameEquals("servicePublicIPAddress")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } servicePublicIPAddress = DeserializePublicIPAddressData(property0.Value); continue; } if (property0.NameEquals("natGateway")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } natGateway = NatGatewayData.DeserializeNatGatewayData(property0.Value); continue; } if (property0.NameEquals("migrationPhase")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } migrationPhase = new PublicIPAddressMigrationPhase(property0.Value.GetString()); continue; } if (property0.NameEquals("linkedPublicIPAddress")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } linkedPublicIPAddress = DeserializePublicIPAddressData(property0.Value); continue; } if (property0.NameEquals("deleteOption")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } deleteOption = new DeleteOptions(property0.Value.GetString()); continue; } } continue; } } return(new PublicIPAddressData(id, name.Value, type.Value, location.Value, Optional.ToDictionary(tags), extendedLocation.Value, sku.Value, etag.Value, Optional.ToList(zones), Optional.ToNullable(publicIPAllocationMethod), Optional.ToNullable(publicIPAddressVersion), ipConfiguration.Value, dnsSettings.Value, ddosSettings.Value, Optional.ToList(ipTags), ipAddress.Value, publicIPPrefix.Value, Optional.ToNullable(idleTimeoutInMinutes), resourceGuid.Value, Optional.ToNullable(provisioningState), servicePublicIPAddress.Value, natGateway.Value, Optional.ToNullable(migrationPhase), linkedPublicIPAddress.Value, Optional.ToNullable(deleteOption))); }
internal static ExpressRouteCircuitConnectionData DeserializeExpressRouteCircuitConnectionData(JsonElement element) { Optional <string> name = default; Optional <string> etag = default; Optional <string> type = default; ResourceIdentifier id = default; Optional <SubResource> expressRouteCircuitPeering = default; Optional <SubResource> peerExpressRouteCircuitPeering = default; Optional <string> addressPrefix = default; Optional <string> authorizationKey = default; Optional <Ipv6CircuitConnectionConfig> ipv6CircuitConnectionConfig = default; Optional <CircuitConnectionStatus> circuitConnectionStatus = default; Optional <ProvisioningState> provisioningState = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("name")) { name = property.Value.GetString(); continue; } if (property.NameEquals("etag")) { etag = property.Value.GetString(); continue; } if (property.NameEquals("type")) { type = property.Value.GetString(); continue; } if (property.NameEquals("id")) { id = property.Value.GetString(); continue; } if (property.NameEquals("properties")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("expressRouteCircuitPeering")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } expressRouteCircuitPeering = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("peerExpressRouteCircuitPeering")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } peerExpressRouteCircuitPeering = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("addressPrefix")) { addressPrefix = property0.Value.GetString(); continue; } if (property0.NameEquals("authorizationKey")) { authorizationKey = property0.Value.GetString(); continue; } if (property0.NameEquals("ipv6CircuitConnectionConfig")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } ipv6CircuitConnectionConfig = Ipv6CircuitConnectionConfig.DeserializeIpv6CircuitConnectionConfig(property0.Value); continue; } if (property0.NameEquals("circuitConnectionStatus")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } circuitConnectionStatus = new CircuitConnectionStatus(property0.Value.GetString()); continue; } if (property0.NameEquals("provisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } provisioningState = new ProvisioningState(property0.Value.GetString()); continue; } } continue; } } return(new ExpressRouteCircuitConnectionData(id, name.Value, etag.Value, type.Value, expressRouteCircuitPeering.Value, peerExpressRouteCircuitPeering.Value, addressPrefix.Value, authorizationKey.Value, ipv6CircuitConnectionConfig.Value, Optional.ToNullable(circuitConnectionStatus), Optional.ToNullable(provisioningState))); }
internal static CustomIpPrefixData DeserializeCustomIpPrefixData(JsonElement element) { Optional <ExtendedLocation> extendedLocation = default; Optional <string> etag = default; Optional <IList <string> > zones = default; Optional <string> name = default; Optional <string> type = default; Optional <string> location = default; Optional <IDictionary <string, string> > tags = default; ResourceIdentifier id = default; Optional <string> cidr = default; Optional <string> signedMessage = default; Optional <string> authorizationMessage = default; Optional <CustomIpPrefixData> customIpPrefixParent = default; Optional <IReadOnlyList <CustomIpPrefixData> > childCustomIpPrefixes = default; Optional <CommissionedState> commissionedState = default; Optional <IReadOnlyList <SubResource> > publicIpPrefixes = default; Optional <string> resourceGuid = default; Optional <string> failedReason = default; Optional <ProvisioningState> provisioningState = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("extendedLocation")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } extendedLocation = ExtendedLocation.DeserializeExtendedLocation(property.Value); continue; } if (property.NameEquals("etag")) { etag = property.Value.GetString(); continue; } if (property.NameEquals("zones")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } List <string> array = new List <string>(); foreach (var item in property.Value.EnumerateArray()) { array.Add(item.GetString()); } zones = array; continue; } if (property.NameEquals("name")) { name = property.Value.GetString(); continue; } if (property.NameEquals("type")) { type = property.Value.GetString(); continue; } if (property.NameEquals("location")) { location = property.Value.GetString(); continue; } if (property.NameEquals("tags")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } Dictionary <string, string> dictionary = new Dictionary <string, string>(); foreach (var property0 in property.Value.EnumerateObject()) { dictionary.Add(property0.Name, property0.Value.GetString()); } tags = dictionary; continue; } if (property.NameEquals("id")) { id = property.Value.GetString(); continue; } if (property.NameEquals("properties")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("cidr")) { cidr = property0.Value.GetString(); continue; } if (property0.NameEquals("signedMessage")) { signedMessage = property0.Value.GetString(); continue; } if (property0.NameEquals("authorizationMessage")) { authorizationMessage = property0.Value.GetString(); continue; } if (property0.NameEquals("customIpPrefixParent")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } customIpPrefixParent = DeserializeCustomIpPrefixData(property0.Value); continue; } if (property0.NameEquals("childCustomIpPrefixes")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <CustomIpPrefixData> array = new List <CustomIpPrefixData>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(DeserializeCustomIpPrefixData(item)); } childCustomIpPrefixes = array; continue; } if (property0.NameEquals("commissionedState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } commissionedState = new CommissionedState(property0.Value.GetString()); continue; } if (property0.NameEquals("publicIpPrefixes")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <SubResource> array = new List <SubResource>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(SubResource.DeserializeSubResource(item)); } publicIpPrefixes = array; continue; } if (property0.NameEquals("resourceGuid")) { resourceGuid = property0.Value.GetString(); continue; } if (property0.NameEquals("failedReason")) { failedReason = property0.Value.GetString(); continue; } if (property0.NameEquals("provisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } provisioningState = new ProvisioningState(property0.Value.GetString()); continue; } } continue; } } return(new CustomIpPrefixData(id, name.Value, type.Value, location.Value, Optional.ToDictionary(tags), extendedLocation.Value, etag.Value, Optional.ToList(zones), cidr.Value, signedMessage.Value, authorizationMessage.Value, customIpPrefixParent.Value, Optional.ToList(childCustomIpPrefixes), Optional.ToNullable(commissionedState), Optional.ToList(publicIpPrefixes), resourceGuid.Value, failedReason.Value, Optional.ToNullable(provisioningState))); }
internal static HubVirtualNetworkConnectionData DeserializeHubVirtualNetworkConnectionData(JsonElement element) { Optional <string> name = default; Optional <string> etag = default; ResourceIdentifier id = default; Optional <SubResource> remoteVirtualNetwork = default; Optional <bool> allowHubToRemoteVnetTransit = default; Optional <bool> allowRemoteVnetToUseHubVnetGateways = default; Optional <bool> enableInternetSecurity = default; Optional <RoutingConfiguration> routingConfiguration = default; Optional <ProvisioningState> provisioningState = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("name")) { name = property.Value.GetString(); continue; } if (property.NameEquals("etag")) { etag = property.Value.GetString(); continue; } if (property.NameEquals("id")) { id = property.Value.GetString(); continue; } if (property.NameEquals("properties")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("remoteVirtualNetwork")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } remoteVirtualNetwork = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("allowHubToRemoteVnetTransit")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } allowHubToRemoteVnetTransit = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("allowRemoteVnetToUseHubVnetGateways")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } allowRemoteVnetToUseHubVnetGateways = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("enableInternetSecurity")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } enableInternetSecurity = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("routingConfiguration")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } routingConfiguration = RoutingConfiguration.DeserializeRoutingConfiguration(property0.Value); continue; } if (property0.NameEquals("provisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } provisioningState = new ProvisioningState(property0.Value.GetString()); continue; } } continue; } } return(new HubVirtualNetworkConnectionData(id, name.Value, etag.Value, remoteVirtualNetwork.Value, Optional.ToNullable(allowHubToRemoteVnetTransit), Optional.ToNullable(allowRemoteVnetToUseHubVnetGateways), Optional.ToNullable(enableInternetSecurity), routingConfiguration.Value, Optional.ToNullable(provisioningState))); }
internal static IpAllocationData DeserializeIpAllocationData(JsonElement element) { Optional <string> etag = default; Optional <string> name = default; Optional <string> type = default; Optional <string> location = default; Optional <IDictionary <string, string> > tags = default; ResourceIdentifier id = default; Optional <SubResource> subnet = default; Optional <SubResource> virtualNetwork = default; Optional <IpAllocationType> type0 = default; Optional <string> prefix = default; Optional <int?> prefixLength = default; Optional <IPVersion> prefixType = default; Optional <string> ipamAllocationId = default; Optional <IDictionary <string, string> > allocationTags = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("etag")) { etag = property.Value.GetString(); continue; } if (property.NameEquals("name")) { name = property.Value.GetString(); continue; } if (property.NameEquals("type")) { type = property.Value.GetString(); continue; } if (property.NameEquals("location")) { location = property.Value.GetString(); continue; } if (property.NameEquals("tags")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } Dictionary <string, string> dictionary = new Dictionary <string, string>(); foreach (var property0 in property.Value.EnumerateObject()) { dictionary.Add(property0.Name, property0.Value.GetString()); } tags = dictionary; continue; } if (property.NameEquals("id")) { id = property.Value.GetString(); continue; } if (property.NameEquals("properties")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("subnet")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } subnet = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("virtualNetwork")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } virtualNetwork = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("type")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } type0 = new IpAllocationType(property0.Value.GetString()); continue; } if (property0.NameEquals("prefix")) { prefix = property0.Value.GetString(); continue; } if (property0.NameEquals("prefixLength")) { if (property0.Value.ValueKind == JsonValueKind.Null) { prefixLength = null; continue; } prefixLength = property0.Value.GetInt32(); continue; } if (property0.NameEquals("prefixType")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } prefixType = new IPVersion(property0.Value.GetString()); continue; } if (property0.NameEquals("ipamAllocationId")) { ipamAllocationId = property0.Value.GetString(); continue; } if (property0.NameEquals("allocationTags")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } Dictionary <string, string> dictionary = new Dictionary <string, string>(); foreach (var property1 in property0.Value.EnumerateObject()) { dictionary.Add(property1.Name, property1.Value.GetString()); } allocationTags = dictionary; continue; } } continue; } } return(new IpAllocationData(id, name.Value, type.Value, location.Value, Optional.ToDictionary(tags), etag.Value, subnet.Value, virtualNetwork.Value, Optional.ToNullable(type0), prefix.Value, Optional.ToNullable(prefixLength), Optional.ToNullable(prefixType), ipamAllocationId.Value, Optional.ToDictionary(allocationTags))); }
internal static ExpressRouteCircuitPeeringData DeserializeExpressRouteCircuitPeeringData(JsonElement element) { Optional <string> name = default; Optional <string> etag = default; Optional <string> type = default; ResourceIdentifier id = default; Optional <ExpressRoutePeeringType> peeringType = default; Optional <ExpressRoutePeeringState> state = default; Optional <int> azureASN = default; Optional <long> peerASN = default; Optional <string> primaryPeerAddressPrefix = default; Optional <string> secondaryPeerAddressPrefix = default; Optional <string> primaryAzurePort = default; Optional <string> secondaryAzurePort = default; Optional <string> sharedKey = default; Optional <int> vlanId = default; Optional <ExpressRouteCircuitPeeringConfig> microsoftPeeringConfig = default; Optional <ExpressRouteCircuitStats> stats = default; Optional <ProvisioningState> provisioningState = default; Optional <string> gatewayManagerEtag = default; Optional <string> lastModifiedBy = default; Optional <SubResource> routeFilter = default; Optional <Ipv6ExpressRouteCircuitPeeringConfig> ipv6PeeringConfig = default; Optional <ExpressRouteConnectionId> expressRouteConnection = default; Optional <IList <ExpressRouteCircuitConnectionData> > connections = default; Optional <IReadOnlyList <PeerExpressRouteCircuitConnection> > peeredConnections = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("name")) { name = property.Value.GetString(); continue; } if (property.NameEquals("etag")) { etag = property.Value.GetString(); continue; } if (property.NameEquals("type")) { type = property.Value.GetString(); continue; } if (property.NameEquals("id")) { id = property.Value.GetString(); continue; } if (property.NameEquals("properties")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("peeringType")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } peeringType = new ExpressRoutePeeringType(property0.Value.GetString()); continue; } if (property0.NameEquals("state")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } state = new ExpressRoutePeeringState(property0.Value.GetString()); continue; } if (property0.NameEquals("azureASN")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } azureASN = property0.Value.GetInt32(); continue; } if (property0.NameEquals("peerASN")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } peerASN = property0.Value.GetInt64(); continue; } if (property0.NameEquals("primaryPeerAddressPrefix")) { primaryPeerAddressPrefix = property0.Value.GetString(); continue; } if (property0.NameEquals("secondaryPeerAddressPrefix")) { secondaryPeerAddressPrefix = property0.Value.GetString(); continue; } if (property0.NameEquals("primaryAzurePort")) { primaryAzurePort = property0.Value.GetString(); continue; } if (property0.NameEquals("secondaryAzurePort")) { secondaryAzurePort = property0.Value.GetString(); continue; } if (property0.NameEquals("sharedKey")) { sharedKey = property0.Value.GetString(); continue; } if (property0.NameEquals("vlanId")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } vlanId = property0.Value.GetInt32(); continue; } if (property0.NameEquals("microsoftPeeringConfig")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } microsoftPeeringConfig = ExpressRouteCircuitPeeringConfig.DeserializeExpressRouteCircuitPeeringConfig(property0.Value); continue; } if (property0.NameEquals("stats")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } stats = ExpressRouteCircuitStats.DeserializeExpressRouteCircuitStats(property0.Value); continue; } if (property0.NameEquals("provisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } provisioningState = new ProvisioningState(property0.Value.GetString()); continue; } if (property0.NameEquals("gatewayManagerEtag")) { gatewayManagerEtag = property0.Value.GetString(); continue; } if (property0.NameEquals("lastModifiedBy")) { lastModifiedBy = property0.Value.GetString(); continue; } if (property0.NameEquals("routeFilter")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } routeFilter = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("ipv6PeeringConfig")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } ipv6PeeringConfig = Ipv6ExpressRouteCircuitPeeringConfig.DeserializeIpv6ExpressRouteCircuitPeeringConfig(property0.Value); continue; } if (property0.NameEquals("expressRouteConnection")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } expressRouteConnection = ExpressRouteConnectionId.DeserializeExpressRouteConnectionId(property0.Value); continue; } if (property0.NameEquals("connections")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <ExpressRouteCircuitConnectionData> array = new List <ExpressRouteCircuitConnectionData>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(ExpressRouteCircuitConnectionData.DeserializeExpressRouteCircuitConnectionData(item)); } connections = array; continue; } if (property0.NameEquals("peeredConnections")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <PeerExpressRouteCircuitConnection> array = new List <PeerExpressRouteCircuitConnection>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(PeerExpressRouteCircuitConnection.DeserializePeerExpressRouteCircuitConnection(item)); } peeredConnections = array; continue; } } continue; } } return(new ExpressRouteCircuitPeeringData(id, name.Value, etag.Value, type.Value, Optional.ToNullable(peeringType), Optional.ToNullable(state), Optional.ToNullable(azureASN), Optional.ToNullable(peerASN), primaryPeerAddressPrefix.Value, secondaryPeerAddressPrefix.Value, primaryAzurePort.Value, secondaryAzurePort.Value, sharedKey.Value, Optional.ToNullable(vlanId), microsoftPeeringConfig.Value, stats.Value, Optional.ToNullable(provisioningState), gatewayManagerEtag.Value, lastModifiedBy.Value, routeFilter.Value, ipv6PeeringConfig.Value, expressRouteConnection.Value, Optional.ToList(connections), Optional.ToList(peeredConnections))); }
internal static SecurityPartnerProviderData DeserializeSecurityPartnerProviderData(JsonElement element) { Optional <string> etag = default; Optional <string> name = default; Optional <string> type = default; Optional <string> location = default; Optional <IDictionary <string, string> > tags = default; ResourceIdentifier id = default; Optional <ProvisioningState> provisioningState = default; Optional <SecurityProviderName> securityProviderName = default; Optional <SecurityPartnerProviderConnectionStatus> connectionStatus = default; Optional <SubResource> virtualHub = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("etag")) { etag = property.Value.GetString(); continue; } if (property.NameEquals("name")) { name = property.Value.GetString(); continue; } if (property.NameEquals("type")) { type = property.Value.GetString(); continue; } if (property.NameEquals("location")) { location = property.Value.GetString(); continue; } if (property.NameEquals("tags")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } Dictionary <string, string> dictionary = new Dictionary <string, string>(); foreach (var property0 in property.Value.EnumerateObject()) { dictionary.Add(property0.Name, property0.Value.GetString()); } tags = dictionary; continue; } if (property.NameEquals("id")) { id = property.Value.GetString(); continue; } if (property.NameEquals("properties")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("provisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } provisioningState = new ProvisioningState(property0.Value.GetString()); continue; } if (property0.NameEquals("securityProviderName")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } securityProviderName = new SecurityProviderName(property0.Value.GetString()); continue; } if (property0.NameEquals("connectionStatus")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } connectionStatus = new SecurityPartnerProviderConnectionStatus(property0.Value.GetString()); continue; } if (property0.NameEquals("virtualHub")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } virtualHub = SubResource.DeserializeSubResource(property0.Value); continue; } } continue; } } return(new SecurityPartnerProviderData(id, name.Value, type.Value, location.Value, Optional.ToDictionary(tags), etag.Value, Optional.ToNullable(provisioningState), Optional.ToNullable(securityProviderName), Optional.ToNullable(connectionStatus), virtualHub.Value)); }
internal static NetworkInterfaceData DeserializeNetworkInterfaceData(JsonElement element) { Optional <ExtendedLocation> extendedLocation = default; Optional <string> etag = default; Optional <string> name = default; Optional <string> type = default; Optional <string> location = default; Optional <IDictionary <string, string> > tags = default; ResourceIdentifier id = default; Optional <SubResource> virtualMachine = default; Optional <NetworkSecurityGroupData> networkSecurityGroup = default; Optional <PrivateEndpointData> privateEndpoint = default; Optional <IList <NetworkInterfaceIPConfiguration> > ipConfigurations = default; Optional <IReadOnlyList <NetworkInterfaceTapConfigurationData> > tapConfigurations = default; Optional <NetworkInterfaceDnsSettings> dnsSettings = default; Optional <string> macAddress = default; Optional <bool> primary = default; Optional <bool> enableAcceleratedNetworking = default; Optional <bool> enableIPForwarding = default; Optional <IReadOnlyList <string> > hostedWorkloads = default; Optional <SubResource> dscpConfiguration = default; Optional <string> resourceGuid = default; Optional <ProvisioningState> provisioningState = default; Optional <string> workloadType = default; Optional <NetworkInterfaceNicType> nicType = default; Optional <PrivateLinkServiceData> privateLinkService = default; Optional <NetworkInterfaceMigrationPhase> migrationPhase = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("extendedLocation")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } extendedLocation = ExtendedLocation.DeserializeExtendedLocation(property.Value); continue; } if (property.NameEquals("etag")) { etag = property.Value.GetString(); continue; } if (property.NameEquals("name")) { name = property.Value.GetString(); continue; } if (property.NameEquals("type")) { type = property.Value.GetString(); continue; } if (property.NameEquals("location")) { location = property.Value.GetString(); continue; } if (property.NameEquals("tags")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } Dictionary <string, string> dictionary = new Dictionary <string, string>(); foreach (var property0 in property.Value.EnumerateObject()) { dictionary.Add(property0.Name, property0.Value.GetString()); } tags = dictionary; continue; } if (property.NameEquals("id")) { id = property.Value.GetString(); continue; } if (property.NameEquals("properties")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("virtualMachine")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } virtualMachine = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("networkSecurityGroup")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } networkSecurityGroup = NetworkSecurityGroupData.DeserializeNetworkSecurityGroupData(property0.Value); continue; } if (property0.NameEquals("privateEndpoint")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } privateEndpoint = PrivateEndpointData.DeserializePrivateEndpointData(property0.Value); continue; } if (property0.NameEquals("ipConfigurations")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <NetworkInterfaceIPConfiguration> array = new List <NetworkInterfaceIPConfiguration>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(NetworkInterfaceIPConfiguration.DeserializeNetworkInterfaceIPConfiguration(item)); } ipConfigurations = array; continue; } if (property0.NameEquals("tapConfigurations")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <NetworkInterfaceTapConfigurationData> array = new List <NetworkInterfaceTapConfigurationData>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(NetworkInterfaceTapConfigurationData.DeserializeNetworkInterfaceTapConfigurationData(item)); } tapConfigurations = array; continue; } if (property0.NameEquals("dnsSettings")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } dnsSettings = NetworkInterfaceDnsSettings.DeserializeNetworkInterfaceDnsSettings(property0.Value); continue; } if (property0.NameEquals("macAddress")) { macAddress = property0.Value.GetString(); continue; } if (property0.NameEquals("primary")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } primary = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("enableAcceleratedNetworking")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } enableAcceleratedNetworking = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("enableIPForwarding")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } enableIPForwarding = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("hostedWorkloads")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <string> array = new List <string>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(item.GetString()); } hostedWorkloads = array; continue; } if (property0.NameEquals("dscpConfiguration")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } dscpConfiguration = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("resourceGuid")) { resourceGuid = property0.Value.GetString(); continue; } if (property0.NameEquals("provisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } provisioningState = new ProvisioningState(property0.Value.GetString()); continue; } if (property0.NameEquals("workloadType")) { workloadType = property0.Value.GetString(); continue; } if (property0.NameEquals("nicType")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } nicType = new NetworkInterfaceNicType(property0.Value.GetString()); continue; } if (property0.NameEquals("privateLinkService")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } privateLinkService = PrivateLinkServiceData.DeserializePrivateLinkServiceData(property0.Value); continue; } if (property0.NameEquals("migrationPhase")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } migrationPhase = new NetworkInterfaceMigrationPhase(property0.Value.GetString()); continue; } } continue; } } return(new NetworkInterfaceData(id, name.Value, type.Value, location.Value, Optional.ToDictionary(tags), extendedLocation.Value, etag.Value, virtualMachine.Value, networkSecurityGroup.Value, privateEndpoint.Value, Optional.ToList(ipConfigurations), Optional.ToList(tapConfigurations), dnsSettings.Value, macAddress.Value, Optional.ToNullable(primary), Optional.ToNullable(enableAcceleratedNetworking), Optional.ToNullable(enableIPForwarding), Optional.ToList(hostedWorkloads), dscpConfiguration.Value, resourceGuid.Value, Optional.ToNullable(provisioningState), workloadType.Value, Optional.ToNullable(nicType), privateLinkService.Value, Optional.ToNullable(migrationPhase))); }
internal static VirtualRouterData DeserializeVirtualRouterData(JsonElement element) { Optional <string> etag = default; Optional <string> name = default; Optional <string> type = default; Optional <string> location = default; Optional <IDictionary <string, string> > tags = default; ResourceIdentifier id = default; Optional <long> virtualRouterAsn = default; Optional <IList <string> > virtualRouterIps = default; Optional <SubResource> hostedSubnet = default; Optional <SubResource> hostedGateway = default; Optional <IReadOnlyList <SubResource> > peerings = default; Optional <ProvisioningState> provisioningState = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("etag")) { etag = property.Value.GetString(); continue; } if (property.NameEquals("name")) { name = property.Value.GetString(); continue; } if (property.NameEquals("type")) { type = property.Value.GetString(); continue; } if (property.NameEquals("location")) { location = property.Value.GetString(); continue; } if (property.NameEquals("tags")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } Dictionary <string, string> dictionary = new Dictionary <string, string>(); foreach (var property0 in property.Value.EnumerateObject()) { dictionary.Add(property0.Name, property0.Value.GetString()); } tags = dictionary; continue; } if (property.NameEquals("id")) { id = property.Value.GetString(); continue; } if (property.NameEquals("properties")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("virtualRouterAsn")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } virtualRouterAsn = property0.Value.GetInt64(); continue; } if (property0.NameEquals("virtualRouterIps")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <string> array = new List <string>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(item.GetString()); } virtualRouterIps = array; continue; } if (property0.NameEquals("hostedSubnet")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } hostedSubnet = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("hostedGateway")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } hostedGateway = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("peerings")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <SubResource> array = new List <SubResource>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(SubResource.DeserializeSubResource(item)); } peerings = array; continue; } if (property0.NameEquals("provisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } provisioningState = new ProvisioningState(property0.Value.GetString()); continue; } } continue; } } return(new VirtualRouterData(id, name.Value, type.Value, location.Value, Optional.ToDictionary(tags), etag.Value, Optional.ToNullable(virtualRouterAsn), Optional.ToList(virtualRouterIps), hostedSubnet.Value, hostedGateway.Value, Optional.ToList(peerings), Optional.ToNullable(provisioningState))); }
internal static SubnetData DeserializeSubnetData(JsonElement element) { Optional <string> name = default; Optional <string> etag = default; Optional <string> type = default; ResourceIdentifier id = default; Optional <string> addressPrefix = default; Optional <IList <string> > addressPrefixes = default; Optional <NetworkSecurityGroupData> networkSecurityGroup = default; Optional <RouteTableData> routeTable = default; Optional <SubResource> natGateway = default; Optional <IList <ServiceEndpointPropertiesFormat> > serviceEndpoints = default; Optional <IList <ServiceEndpointPolicyData> > serviceEndpointPolicies = default; Optional <IReadOnlyList <PrivateEndpointData> > privateEndpoints = default; Optional <IReadOnlyList <IPConfiguration> > ipConfigurations = default; Optional <IReadOnlyList <IPConfigurationProfile> > ipConfigurationProfiles = default; Optional <IList <SubResource> > ipAllocations = default; Optional <IReadOnlyList <ResourceNavigationLink> > resourceNavigationLinks = default; Optional <IReadOnlyList <ServiceAssociationLink> > serviceAssociationLinks = default; Optional <IList <Delegation> > delegations = default; Optional <string> purpose = default; Optional <ProvisioningState> provisioningState = default; Optional <VirtualNetworkPrivateEndpointNetworkPolicies> privateEndpointNetworkPolicies = default; Optional <VirtualNetworkPrivateLinkServiceNetworkPolicies> privateLinkServiceNetworkPolicies = default; Optional <IList <ApplicationGatewayIPConfiguration> > applicationGatewayIpConfigurations = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("name")) { name = property.Value.GetString(); continue; } if (property.NameEquals("etag")) { etag = property.Value.GetString(); continue; } if (property.NameEquals("type")) { type = property.Value.GetString(); continue; } if (property.NameEquals("id")) { id = property.Value.GetString(); continue; } if (property.NameEquals("properties")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("addressPrefix")) { addressPrefix = property0.Value.GetString(); continue; } if (property0.NameEquals("addressPrefixes")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <string> array = new List <string>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(item.GetString()); } addressPrefixes = array; continue; } if (property0.NameEquals("networkSecurityGroup")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } networkSecurityGroup = NetworkSecurityGroupData.DeserializeNetworkSecurityGroupData(property0.Value); continue; } if (property0.NameEquals("routeTable")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } routeTable = RouteTableData.DeserializeRouteTableData(property0.Value); continue; } if (property0.NameEquals("natGateway")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } natGateway = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("serviceEndpoints")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <ServiceEndpointPropertiesFormat> array = new List <ServiceEndpointPropertiesFormat>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(ServiceEndpointPropertiesFormat.DeserializeServiceEndpointPropertiesFormat(item)); } serviceEndpoints = array; continue; } if (property0.NameEquals("serviceEndpointPolicies")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <ServiceEndpointPolicyData> array = new List <ServiceEndpointPolicyData>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(ServiceEndpointPolicyData.DeserializeServiceEndpointPolicyData(item)); } serviceEndpointPolicies = array; continue; } if (property0.NameEquals("privateEndpoints")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <PrivateEndpointData> array = new List <PrivateEndpointData>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(PrivateEndpointData.DeserializePrivateEndpointData(item)); } privateEndpoints = array; continue; } if (property0.NameEquals("ipConfigurations")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <IPConfiguration> array = new List <IPConfiguration>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(IPConfiguration.DeserializeIPConfiguration(item)); } ipConfigurations = array; continue; } if (property0.NameEquals("ipConfigurationProfiles")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <IPConfigurationProfile> array = new List <IPConfigurationProfile>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(IPConfigurationProfile.DeserializeIPConfigurationProfile(item)); } ipConfigurationProfiles = array; continue; } if (property0.NameEquals("ipAllocations")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <SubResource> array = new List <SubResource>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(SubResource.DeserializeSubResource(item)); } ipAllocations = array; continue; } if (property0.NameEquals("resourceNavigationLinks")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <ResourceNavigationLink> array = new List <ResourceNavigationLink>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(ResourceNavigationLink.DeserializeResourceNavigationLink(item)); } resourceNavigationLinks = array; continue; } if (property0.NameEquals("serviceAssociationLinks")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <ServiceAssociationLink> array = new List <ServiceAssociationLink>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(ServiceAssociationLink.DeserializeServiceAssociationLink(item)); } serviceAssociationLinks = array; continue; } if (property0.NameEquals("delegations")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <Delegation> array = new List <Delegation>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(Delegation.DeserializeDelegation(item)); } delegations = array; continue; } if (property0.NameEquals("purpose")) { purpose = property0.Value.GetString(); continue; } if (property0.NameEquals("provisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } provisioningState = new ProvisioningState(property0.Value.GetString()); continue; } if (property0.NameEquals("privateEndpointNetworkPolicies")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } privateEndpointNetworkPolicies = new VirtualNetworkPrivateEndpointNetworkPolicies(property0.Value.GetString()); continue; } if (property0.NameEquals("privateLinkServiceNetworkPolicies")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } privateLinkServiceNetworkPolicies = new VirtualNetworkPrivateLinkServiceNetworkPolicies(property0.Value.GetString()); continue; } if (property0.NameEquals("applicationGatewayIpConfigurations")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <ApplicationGatewayIPConfiguration> array = new List <ApplicationGatewayIPConfiguration>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(ApplicationGatewayIPConfiguration.DeserializeApplicationGatewayIPConfiguration(item)); } applicationGatewayIpConfigurations = array; continue; } } continue; } } return(new SubnetData(id, name.Value, etag.Value, type.Value, addressPrefix.Value, Optional.ToList(addressPrefixes), networkSecurityGroup.Value, routeTable.Value, natGateway.Value, Optional.ToList(serviceEndpoints), Optional.ToList(serviceEndpointPolicies), Optional.ToList(privateEndpoints), Optional.ToList(ipConfigurations), Optional.ToList(ipConfigurationProfiles), Optional.ToList(ipAllocations), Optional.ToList(resourceNavigationLinks), Optional.ToList(serviceAssociationLinks), Optional.ToList(delegations), purpose.Value, Optional.ToNullable(provisioningState), Optional.ToNullable(privateEndpointNetworkPolicies), Optional.ToNullable(privateLinkServiceNetworkPolicies), Optional.ToList(applicationGatewayIpConfigurations))); }
internal static WebApplicationFirewallPolicyData DeserializeWebApplicationFirewallPolicyData(JsonElement element) { Optional <string> etag = default; Optional <string> name = default; Optional <string> type = default; Optional <string> location = default; Optional <IDictionary <string, string> > tags = default; ResourceIdentifier id = default; Optional <PolicySettings> policySettings = default; Optional <IList <WebApplicationFirewallCustomRule> > customRules = default; Optional <IReadOnlyList <ApplicationGatewayData> > applicationGateways = default; Optional <ProvisioningState> provisioningState = default; Optional <WebApplicationFirewallPolicyResourceState> resourceState = default; Optional <ManagedRulesDefinition> managedRules = default; Optional <IReadOnlyList <SubResource> > httpListeners = default; Optional <IReadOnlyList <SubResource> > pathBasedRules = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("etag")) { etag = property.Value.GetString(); continue; } if (property.NameEquals("name")) { name = property.Value.GetString(); continue; } if (property.NameEquals("type")) { type = property.Value.GetString(); continue; } if (property.NameEquals("location")) { location = property.Value.GetString(); continue; } if (property.NameEquals("tags")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } Dictionary <string, string> dictionary = new Dictionary <string, string>(); foreach (var property0 in property.Value.EnumerateObject()) { dictionary.Add(property0.Name, property0.Value.GetString()); } tags = dictionary; continue; } if (property.NameEquals("id")) { id = property.Value.GetString(); continue; } if (property.NameEquals("properties")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("policySettings")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } policySettings = PolicySettings.DeserializePolicySettings(property0.Value); continue; } if (property0.NameEquals("customRules")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <WebApplicationFirewallCustomRule> array = new List <WebApplicationFirewallCustomRule>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(WebApplicationFirewallCustomRule.DeserializeWebApplicationFirewallCustomRule(item)); } customRules = array; continue; } if (property0.NameEquals("applicationGateways")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <ApplicationGatewayData> array = new List <ApplicationGatewayData>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(ApplicationGatewayData.DeserializeApplicationGatewayData(item)); } applicationGateways = array; continue; } if (property0.NameEquals("provisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } provisioningState = new ProvisioningState(property0.Value.GetString()); continue; } if (property0.NameEquals("resourceState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } resourceState = new WebApplicationFirewallPolicyResourceState(property0.Value.GetString()); continue; } if (property0.NameEquals("managedRules")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } managedRules = ManagedRulesDefinition.DeserializeManagedRulesDefinition(property0.Value); continue; } if (property0.NameEquals("httpListeners")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <SubResource> array = new List <SubResource>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(SubResource.DeserializeSubResource(item)); } httpListeners = array; continue; } if (property0.NameEquals("pathBasedRules")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <SubResource> array = new List <SubResource>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(SubResource.DeserializeSubResource(item)); } pathBasedRules = array; continue; } } continue; } } return(new WebApplicationFirewallPolicyData(id, name.Value, type.Value, location.Value, Optional.ToDictionary(tags), etag.Value, policySettings.Value, Optional.ToList(customRules), Optional.ToList(applicationGateways), Optional.ToNullable(provisioningState), Optional.ToNullable(resourceState), managedRules.Value, Optional.ToList(httpListeners), Optional.ToList(pathBasedRules))); }
internal static VpnGatewayNatRuleData DeserializeVpnGatewayNatRuleData(JsonElement element) { Optional <string> name = default; Optional <string> etag = default; Optional <string> type = default; ResourceIdentifier id = default; Optional <ProvisioningState> provisioningState = default; Optional <VpnNatRuleType> type0 = default; Optional <VpnNatRuleMode> mode = default; Optional <IList <VpnNatRuleMapping> > internalMappings = default; Optional <IList <VpnNatRuleMapping> > externalMappings = default; Optional <string> ipConfigurationId = default; Optional <IReadOnlyList <SubResource> > egressVpnSiteLinkConnections = default; Optional <IReadOnlyList <SubResource> > ingressVpnSiteLinkConnections = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("name")) { name = property.Value.GetString(); continue; } if (property.NameEquals("etag")) { etag = property.Value.GetString(); continue; } if (property.NameEquals("type")) { type = property.Value.GetString(); continue; } if (property.NameEquals("id")) { id = property.Value.GetString(); continue; } if (property.NameEquals("properties")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("provisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } provisioningState = new ProvisioningState(property0.Value.GetString()); continue; } if (property0.NameEquals("type")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } type0 = new VpnNatRuleType(property0.Value.GetString()); continue; } if (property0.NameEquals("mode")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } mode = new VpnNatRuleMode(property0.Value.GetString()); continue; } if (property0.NameEquals("internalMappings")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <VpnNatRuleMapping> array = new List <VpnNatRuleMapping>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(VpnNatRuleMapping.DeserializeVpnNatRuleMapping(item)); } internalMappings = array; continue; } if (property0.NameEquals("externalMappings")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <VpnNatRuleMapping> array = new List <VpnNatRuleMapping>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(VpnNatRuleMapping.DeserializeVpnNatRuleMapping(item)); } externalMappings = array; continue; } if (property0.NameEquals("ipConfigurationId")) { ipConfigurationId = property0.Value.GetString(); continue; } if (property0.NameEquals("egressVpnSiteLinkConnections")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <SubResource> array = new List <SubResource>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(SubResource.DeserializeSubResource(item)); } egressVpnSiteLinkConnections = array; continue; } if (property0.NameEquals("ingressVpnSiteLinkConnections")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <SubResource> array = new List <SubResource>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(SubResource.DeserializeSubResource(item)); } ingressVpnSiteLinkConnections = array; continue; } } continue; } } return(new VpnGatewayNatRuleData(id, name.Value, etag.Value, type.Value, Optional.ToNullable(provisioningState), Optional.ToNullable(type0), Optional.ToNullable(mode), Optional.ToList(internalMappings), Optional.ToList(externalMappings), ipConfigurationId.Value, Optional.ToList(egressVpnSiteLinkConnections), Optional.ToList(ingressVpnSiteLinkConnections))); }
internal static VpnSiteData DeserializeVpnSiteData(JsonElement element) { Optional <string> etag = default; Optional <string> name = default; Optional <string> type = default; Optional <string> location = default; Optional <IDictionary <string, string> > tags = default; ResourceIdentifier id = default; Optional <SubResource> virtualWan = default; Optional <DeviceProperties> deviceProperties = default; Optional <string> ipAddress = default; Optional <string> siteKey = default; Optional <AddressSpace> addressSpace = default; Optional <BgpSettings> bgpProperties = default; Optional <ProvisioningState> provisioningState = default; Optional <bool> isSecuritySite = default; Optional <IList <VpnSiteLink> > vpnSiteLinks = default; Optional <O365PolicyProperties> o365Policy = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("etag")) { etag = property.Value.GetString(); continue; } if (property.NameEquals("name")) { name = property.Value.GetString(); continue; } if (property.NameEquals("type")) { type = property.Value.GetString(); continue; } if (property.NameEquals("location")) { location = property.Value.GetString(); continue; } if (property.NameEquals("tags")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } Dictionary <string, string> dictionary = new Dictionary <string, string>(); foreach (var property0 in property.Value.EnumerateObject()) { dictionary.Add(property0.Name, property0.Value.GetString()); } tags = dictionary; continue; } if (property.NameEquals("id")) { id = property.Value.GetString(); continue; } if (property.NameEquals("properties")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("virtualWan")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } virtualWan = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("deviceProperties")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } deviceProperties = DeviceProperties.DeserializeDeviceProperties(property0.Value); continue; } if (property0.NameEquals("ipAddress")) { ipAddress = property0.Value.GetString(); continue; } if (property0.NameEquals("siteKey")) { siteKey = property0.Value.GetString(); continue; } if (property0.NameEquals("addressSpace")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } addressSpace = AddressSpace.DeserializeAddressSpace(property0.Value); continue; } if (property0.NameEquals("bgpProperties")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } bgpProperties = BgpSettings.DeserializeBgpSettings(property0.Value); continue; } if (property0.NameEquals("provisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } provisioningState = new ProvisioningState(property0.Value.GetString()); continue; } if (property0.NameEquals("isSecuritySite")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } isSecuritySite = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("vpnSiteLinks")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <VpnSiteLink> array = new List <VpnSiteLink>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(VpnSiteLink.DeserializeVpnSiteLink(item)); } vpnSiteLinks = array; continue; } if (property0.NameEquals("o365Policy")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } o365Policy = O365PolicyProperties.DeserializeO365PolicyProperties(property0.Value); continue; } } continue; } } return(new VpnSiteData(id, name.Value, type.Value, location.Value, Optional.ToDictionary(tags), etag.Value, virtualWan.Value, deviceProperties.Value, ipAddress.Value, siteKey.Value, addressSpace.Value, bgpProperties.Value, Optional.ToNullable(provisioningState), Optional.ToNullable(isSecuritySite), Optional.ToList(vpnSiteLinks), o365Policy.Value)); }
internal static P2SVpnGatewayData DeserializeP2SVpnGatewayData(JsonElement element) { Optional <string> etag = default; Optional <string> name = default; Optional <string> type = default; Optional <string> location = default; Optional <IDictionary <string, string> > tags = default; ResourceIdentifier id = default; Optional <SubResource> virtualHub = default; Optional <IList <P2SConnectionConfiguration> > p2SConnectionConfigurations = default; Optional <ProvisioningState> provisioningState = default; Optional <int> vpnGatewayScaleUnit = default; Optional <SubResource> vpnServerConfiguration = default; Optional <VpnClientConnectionHealth> vpnClientConnectionHealth = default; Optional <IList <string> > customDnsServers = default; Optional <bool> isRoutingPreferenceInternet = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("etag")) { etag = property.Value.GetString(); continue; } if (property.NameEquals("name")) { name = property.Value.GetString(); continue; } if (property.NameEquals("type")) { type = property.Value.GetString(); continue; } if (property.NameEquals("location")) { location = property.Value.GetString(); continue; } if (property.NameEquals("tags")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } Dictionary <string, string> dictionary = new Dictionary <string, string>(); foreach (var property0 in property.Value.EnumerateObject()) { dictionary.Add(property0.Name, property0.Value.GetString()); } tags = dictionary; continue; } if (property.NameEquals("id")) { id = property.Value.GetString(); continue; } if (property.NameEquals("properties")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("virtualHub")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } virtualHub = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("p2SConnectionConfigurations")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <P2SConnectionConfiguration> array = new List <P2SConnectionConfiguration>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(P2SConnectionConfiguration.DeserializeP2SConnectionConfiguration(item)); } p2SConnectionConfigurations = array; continue; } if (property0.NameEquals("provisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } provisioningState = new ProvisioningState(property0.Value.GetString()); continue; } if (property0.NameEquals("vpnGatewayScaleUnit")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } vpnGatewayScaleUnit = property0.Value.GetInt32(); continue; } if (property0.NameEquals("vpnServerConfiguration")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } vpnServerConfiguration = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("vpnClientConnectionHealth")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } vpnClientConnectionHealth = VpnClientConnectionHealth.DeserializeVpnClientConnectionHealth(property0.Value); continue; } if (property0.NameEquals("customDnsServers")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <string> array = new List <string>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(item.GetString()); } customDnsServers = array; continue; } if (property0.NameEquals("isRoutingPreferenceInternet")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } isRoutingPreferenceInternet = property0.Value.GetBoolean(); continue; } } continue; } } return(new P2SVpnGatewayData(id, name.Value, type.Value, location.Value, Optional.ToDictionary(tags), etag.Value, virtualHub.Value, Optional.ToList(p2SConnectionConfigurations), Optional.ToNullable(provisioningState), Optional.ToNullable(vpnGatewayScaleUnit), vpnServerConfiguration.Value, vpnClientConnectionHealth.Value, Optional.ToList(customDnsServers), Optional.ToNullable(isRoutingPreferenceInternet))); }
internal static ExpressRouteCircuitData DeserializeExpressRouteCircuitData(JsonElement element) { Optional <ExpressRouteCircuitSku> sku = default; Optional <string> etag = default; Optional <string> name = default; Optional <string> type = default; Optional <string> location = default; Optional <IDictionary <string, string> > tags = default; ResourceIdentifier id = default; Optional <bool> allowClassicOperations = default; Optional <string> circuitProvisioningState = default; Optional <ServiceProviderProvisioningState> serviceProviderProvisioningState = default; Optional <IList <ExpressRouteCircuitAuthorizationData> > authorizations = default; Optional <IList <ExpressRouteCircuitPeeringData> > peerings = default; Optional <string> serviceKey = default; Optional <string> serviceProviderNotes = default; Optional <ExpressRouteCircuitServiceProviderProperties> serviceProviderProperties = default; Optional <SubResource> expressRoutePort = default; Optional <float> bandwidthInGbps = default; Optional <int> stag = default; Optional <ProvisioningState> provisioningState = default; Optional <string> gatewayManagerEtag = default; Optional <bool> globalReachEnabled = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("sku")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } sku = ExpressRouteCircuitSku.DeserializeExpressRouteCircuitSku(property.Value); continue; } if (property.NameEquals("etag")) { etag = property.Value.GetString(); continue; } if (property.NameEquals("name")) { name = property.Value.GetString(); continue; } if (property.NameEquals("type")) { type = property.Value.GetString(); continue; } if (property.NameEquals("location")) { location = property.Value.GetString(); continue; } if (property.NameEquals("tags")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } Dictionary <string, string> dictionary = new Dictionary <string, string>(); foreach (var property0 in property.Value.EnumerateObject()) { dictionary.Add(property0.Name, property0.Value.GetString()); } tags = dictionary; continue; } if (property.NameEquals("id")) { id = property.Value.GetString(); continue; } if (property.NameEquals("properties")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("allowClassicOperations")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } allowClassicOperations = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("circuitProvisioningState")) { circuitProvisioningState = property0.Value.GetString(); continue; } if (property0.NameEquals("serviceProviderProvisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } serviceProviderProvisioningState = new ServiceProviderProvisioningState(property0.Value.GetString()); continue; } if (property0.NameEquals("authorizations")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <ExpressRouteCircuitAuthorizationData> array = new List <ExpressRouteCircuitAuthorizationData>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(ExpressRouteCircuitAuthorizationData.DeserializeExpressRouteCircuitAuthorizationData(item)); } authorizations = array; continue; } if (property0.NameEquals("peerings")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <ExpressRouteCircuitPeeringData> array = new List <ExpressRouteCircuitPeeringData>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(ExpressRouteCircuitPeeringData.DeserializeExpressRouteCircuitPeeringData(item)); } peerings = array; continue; } if (property0.NameEquals("serviceKey")) { serviceKey = property0.Value.GetString(); continue; } if (property0.NameEquals("serviceProviderNotes")) { serviceProviderNotes = property0.Value.GetString(); continue; } if (property0.NameEquals("serviceProviderProperties")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } serviceProviderProperties = ExpressRouteCircuitServiceProviderProperties.DeserializeExpressRouteCircuitServiceProviderProperties(property0.Value); continue; } if (property0.NameEquals("expressRoutePort")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } expressRoutePort = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("bandwidthInGbps")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } bandwidthInGbps = property0.Value.GetSingle(); continue; } if (property0.NameEquals("stag")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } stag = property0.Value.GetInt32(); continue; } if (property0.NameEquals("provisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } provisioningState = new ProvisioningState(property0.Value.GetString()); continue; } if (property0.NameEquals("gatewayManagerEtag")) { gatewayManagerEtag = property0.Value.GetString(); continue; } if (property0.NameEquals("globalReachEnabled")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } globalReachEnabled = property0.Value.GetBoolean(); continue; } } continue; } } return(new ExpressRouteCircuitData(id, name.Value, type.Value, location.Value, Optional.ToDictionary(tags), sku.Value, etag.Value, Optional.ToNullable(allowClassicOperations), circuitProvisioningState.Value, Optional.ToNullable(serviceProviderProvisioningState), Optional.ToList(authorizations), Optional.ToList(peerings), serviceKey.Value, serviceProviderNotes.Value, serviceProviderProperties.Value, expressRoutePort.Value, Optional.ToNullable(bandwidthInGbps), Optional.ToNullable(stag), Optional.ToNullable(provisioningState), gatewayManagerEtag.Value, Optional.ToNullable(globalReachEnabled))); }
internal static InboundNatRuleData DeserializeInboundNatRuleData(JsonElement element) { Optional <string> name = default; Optional <string> etag = default; Optional <string> type = default; ResourceIdentifier id = default; Optional <SubResource> frontendIPConfiguration = default; Optional <NetworkInterfaceIPConfiguration> backendIPConfiguration = default; Optional <TransportProtocol> protocol = default; Optional <int> frontendPort = default; Optional <int> backendPort = default; Optional <int> idleTimeoutInMinutes = default; Optional <bool> enableFloatingIP = default; Optional <bool> enableTcpReset = default; Optional <ProvisioningState> provisioningState = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("name")) { name = property.Value.GetString(); continue; } if (property.NameEquals("etag")) { etag = property.Value.GetString(); continue; } if (property.NameEquals("type")) { type = property.Value.GetString(); continue; } if (property.NameEquals("id")) { id = property.Value.GetString(); continue; } if (property.NameEquals("properties")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("frontendIPConfiguration")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } frontendIPConfiguration = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("backendIPConfiguration")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } backendIPConfiguration = NetworkInterfaceIPConfiguration.DeserializeNetworkInterfaceIPConfiguration(property0.Value); continue; } if (property0.NameEquals("protocol")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } protocol = new TransportProtocol(property0.Value.GetString()); continue; } if (property0.NameEquals("frontendPort")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } frontendPort = property0.Value.GetInt32(); continue; } if (property0.NameEquals("backendPort")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } backendPort = property0.Value.GetInt32(); continue; } if (property0.NameEquals("idleTimeoutInMinutes")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } idleTimeoutInMinutes = property0.Value.GetInt32(); continue; } if (property0.NameEquals("enableFloatingIP")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } enableFloatingIP = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("enableTcpReset")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } enableTcpReset = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("provisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } provisioningState = new ProvisioningState(property0.Value.GetString()); continue; } } continue; } } return(new InboundNatRuleData(id, name.Value, etag.Value, type.Value, frontendIPConfiguration.Value, backendIPConfiguration.Value, Optional.ToNullable(protocol), Optional.ToNullable(frontendPort), Optional.ToNullable(backendPort), Optional.ToNullable(idleTimeoutInMinutes), Optional.ToNullable(enableFloatingIP), Optional.ToNullable(enableTcpReset), Optional.ToNullable(provisioningState))); }
internal static IpGroupData DeserializeIpGroupData(JsonElement element) { Optional <string> etag = default; Optional <string> name = default; Optional <string> type = default; Optional <string> location = default; Optional <IDictionary <string, string> > tags = default; ResourceIdentifier id = default; Optional <ProvisioningState> provisioningState = default; Optional <IList <string> > ipAddresses = default; Optional <IReadOnlyList <SubResource> > firewalls = default; Optional <IReadOnlyList <SubResource> > firewallPolicies = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("etag")) { etag = property.Value.GetString(); continue; } if (property.NameEquals("name")) { name = property.Value.GetString(); continue; } if (property.NameEquals("type")) { type = property.Value.GetString(); continue; } if (property.NameEquals("location")) { location = property.Value.GetString(); continue; } if (property.NameEquals("tags")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } Dictionary <string, string> dictionary = new Dictionary <string, string>(); foreach (var property0 in property.Value.EnumerateObject()) { dictionary.Add(property0.Name, property0.Value.GetString()); } tags = dictionary; continue; } if (property.NameEquals("id")) { id = property.Value.GetString(); continue; } if (property.NameEquals("properties")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("provisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } provisioningState = new ProvisioningState(property0.Value.GetString()); continue; } if (property0.NameEquals("ipAddresses")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <string> array = new List <string>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(item.GetString()); } ipAddresses = array; continue; } if (property0.NameEquals("firewalls")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <SubResource> array = new List <SubResource>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(SubResource.DeserializeSubResource(item)); } firewalls = array; continue; } if (property0.NameEquals("firewallPolicies")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <SubResource> array = new List <SubResource>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(SubResource.DeserializeSubResource(item)); } firewallPolicies = array; continue; } } continue; } } return(new IpGroupData(id, name.Value, type.Value, location.Value, Optional.ToDictionary(tags), etag.Value, Optional.ToNullable(provisioningState), Optional.ToList(ipAddresses), Optional.ToList(firewalls), Optional.ToList(firewallPolicies))); }
internal static BackendAddressPoolData DeserializeBackendAddressPoolData(JsonElement element) { Optional <string> name = default; Optional <string> etag = default; Optional <string> type = default; ResourceIdentifier id = default; Optional <string> location = default; Optional <IList <GatewayLoadBalancerTunnelInterface> > tunnelInterfaces = default; Optional <IList <LoadBalancerBackendAddress> > loadBalancerBackendAddresses = default; Optional <IReadOnlyList <NetworkInterfaceIPConfiguration> > backendIPConfigurations = default; Optional <IReadOnlyList <SubResource> > loadBalancingRules = default; Optional <SubResource> outboundRule = default; Optional <IReadOnlyList <SubResource> > outboundRules = default; Optional <ProvisioningState> provisioningState = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("name")) { name = property.Value.GetString(); continue; } if (property.NameEquals("etag")) { etag = property.Value.GetString(); continue; } if (property.NameEquals("type")) { type = property.Value.GetString(); continue; } if (property.NameEquals("id")) { id = property.Value.GetString(); continue; } if (property.NameEquals("properties")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("location")) { location = property0.Value.GetString(); continue; } if (property0.NameEquals("tunnelInterfaces")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <GatewayLoadBalancerTunnelInterface> array = new List <GatewayLoadBalancerTunnelInterface>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(GatewayLoadBalancerTunnelInterface.DeserializeGatewayLoadBalancerTunnelInterface(item)); } tunnelInterfaces = array; continue; } if (property0.NameEquals("loadBalancerBackendAddresses")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <LoadBalancerBackendAddress> array = new List <LoadBalancerBackendAddress>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(LoadBalancerBackendAddress.DeserializeLoadBalancerBackendAddress(item)); } loadBalancerBackendAddresses = array; continue; } if (property0.NameEquals("backendIPConfigurations")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <NetworkInterfaceIPConfiguration> array = new List <NetworkInterfaceIPConfiguration>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(NetworkInterfaceIPConfiguration.DeserializeNetworkInterfaceIPConfiguration(item)); } backendIPConfigurations = array; continue; } if (property0.NameEquals("loadBalancingRules")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <SubResource> array = new List <SubResource>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(SubResource.DeserializeSubResource(item)); } loadBalancingRules = array; continue; } if (property0.NameEquals("outboundRule")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } outboundRule = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("outboundRules")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <SubResource> array = new List <SubResource>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(SubResource.DeserializeSubResource(item)); } outboundRules = array; continue; } if (property0.NameEquals("provisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } provisioningState = new ProvisioningState(property0.Value.GetString()); continue; } } continue; } } return(new BackendAddressPoolData(id, name.Value, etag.Value, type.Value, location.Value, Optional.ToList(tunnelInterfaces), Optional.ToList(loadBalancerBackendAddresses), Optional.ToList(backendIPConfigurations), Optional.ToList(loadBalancingRules), outboundRule.Value, Optional.ToList(outboundRules), Optional.ToNullable(provisioningState))); }
internal static VirtualNetworkGatewayConnectionData DeserializeVirtualNetworkGatewayConnectionData(JsonElement element) { Optional <string> etag = default; Optional <string> name = default; Optional <string> type = default; Optional <string> location = default; Optional <IDictionary <string, string> > tags = default; ResourceIdentifier id = default; Optional <string> authorizationKey = default; VirtualNetworkGatewayData virtualNetworkGateway1 = default; Optional <VirtualNetworkGatewayData> virtualNetworkGateway2 = default; Optional <LocalNetworkGatewayData> localNetworkGateway2 = default; Optional <IList <SubResource> > ingressNatRules = default; Optional <IList <SubResource> > egressNatRules = default; VirtualNetworkGatewayConnectionType connectionType = default; Optional <VirtualNetworkGatewayConnectionProtocol> connectionProtocol = default; Optional <int> routingWeight = default; Optional <int> dpdTimeoutSeconds = default; Optional <VirtualNetworkGatewayConnectionMode> connectionMode = default; Optional <string> sharedKey = default; Optional <VirtualNetworkGatewayConnectionStatus> connectionStatus = default; Optional <IReadOnlyList <TunnelConnectionHealth> > tunnelConnectionStatus = default; Optional <long> egressBytesTransferred = default; Optional <long> ingressBytesTransferred = default; Optional <SubResource> peer = default; Optional <bool> enableBgp = default; Optional <bool> useLocalAzureIpAddress = default; Optional <bool> usePolicyBasedTrafficSelectors = default; Optional <IList <IpsecPolicy> > ipsecPolicies = default; Optional <IList <TrafficSelectorPolicy> > trafficSelectorPolicies = default; Optional <string> resourceGuid = default; Optional <ProvisioningState> provisioningState = default; Optional <bool> expressRouteGatewayBypass = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("etag")) { etag = property.Value.GetString(); continue; } if (property.NameEquals("name")) { name = property.Value.GetString(); continue; } if (property.NameEquals("type")) { type = property.Value.GetString(); continue; } if (property.NameEquals("location")) { location = property.Value.GetString(); continue; } if (property.NameEquals("tags")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } Dictionary <string, string> dictionary = new Dictionary <string, string>(); foreach (var property0 in property.Value.EnumerateObject()) { dictionary.Add(property0.Name, property0.Value.GetString()); } tags = dictionary; continue; } if (property.NameEquals("id")) { id = property.Value.GetString(); continue; } if (property.NameEquals("properties")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("authorizationKey")) { authorizationKey = property0.Value.GetString(); continue; } if (property0.NameEquals("virtualNetworkGateway1")) { virtualNetworkGateway1 = VirtualNetworkGatewayData.DeserializeVirtualNetworkGatewayData(property0.Value); continue; } if (property0.NameEquals("virtualNetworkGateway2")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } virtualNetworkGateway2 = VirtualNetworkGatewayData.DeserializeVirtualNetworkGatewayData(property0.Value); continue; } if (property0.NameEquals("localNetworkGateway2")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } localNetworkGateway2 = LocalNetworkGatewayData.DeserializeLocalNetworkGatewayData(property0.Value); continue; } if (property0.NameEquals("ingressNatRules")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <SubResource> array = new List <SubResource>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(SubResource.DeserializeSubResource(item)); } ingressNatRules = array; continue; } if (property0.NameEquals("egressNatRules")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <SubResource> array = new List <SubResource>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(SubResource.DeserializeSubResource(item)); } egressNatRules = array; continue; } if (property0.NameEquals("connectionType")) { connectionType = new VirtualNetworkGatewayConnectionType(property0.Value.GetString()); continue; } if (property0.NameEquals("connectionProtocol")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } connectionProtocol = new VirtualNetworkGatewayConnectionProtocol(property0.Value.GetString()); continue; } if (property0.NameEquals("routingWeight")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } routingWeight = property0.Value.GetInt32(); continue; } if (property0.NameEquals("dpdTimeoutSeconds")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } dpdTimeoutSeconds = property0.Value.GetInt32(); continue; } if (property0.NameEquals("connectionMode")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } connectionMode = new VirtualNetworkGatewayConnectionMode(property0.Value.GetString()); continue; } if (property0.NameEquals("sharedKey")) { sharedKey = property0.Value.GetString(); continue; } if (property0.NameEquals("connectionStatus")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } connectionStatus = new VirtualNetworkGatewayConnectionStatus(property0.Value.GetString()); continue; } if (property0.NameEquals("tunnelConnectionStatus")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <TunnelConnectionHealth> array = new List <TunnelConnectionHealth>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(TunnelConnectionHealth.DeserializeTunnelConnectionHealth(item)); } tunnelConnectionStatus = array; continue; } if (property0.NameEquals("egressBytesTransferred")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } egressBytesTransferred = property0.Value.GetInt64(); continue; } if (property0.NameEquals("ingressBytesTransferred")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } ingressBytesTransferred = property0.Value.GetInt64(); continue; } if (property0.NameEquals("peer")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } peer = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("enableBgp")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } enableBgp = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("useLocalAzureIpAddress")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } useLocalAzureIpAddress = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("usePolicyBasedTrafficSelectors")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } usePolicyBasedTrafficSelectors = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("ipsecPolicies")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <IpsecPolicy> array = new List <IpsecPolicy>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(IpsecPolicy.DeserializeIpsecPolicy(item)); } ipsecPolicies = array; continue; } if (property0.NameEquals("trafficSelectorPolicies")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <TrafficSelectorPolicy> array = new List <TrafficSelectorPolicy>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(TrafficSelectorPolicy.DeserializeTrafficSelectorPolicy(item)); } trafficSelectorPolicies = array; continue; } if (property0.NameEquals("resourceGuid")) { resourceGuid = property0.Value.GetString(); continue; } if (property0.NameEquals("provisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } provisioningState = new ProvisioningState(property0.Value.GetString()); continue; } if (property0.NameEquals("expressRouteGatewayBypass")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } expressRouteGatewayBypass = property0.Value.GetBoolean(); continue; } } continue; } } return(new VirtualNetworkGatewayConnectionData(id, name.Value, type.Value, location.Value, Optional.ToDictionary(tags), etag.Value, authorizationKey.Value, virtualNetworkGateway1, virtualNetworkGateway2.Value, localNetworkGateway2.Value, Optional.ToList(ingressNatRules), Optional.ToList(egressNatRules), connectionType, Optional.ToNullable(connectionProtocol), Optional.ToNullable(routingWeight), Optional.ToNullable(dpdTimeoutSeconds), Optional.ToNullable(connectionMode), sharedKey.Value, Optional.ToNullable(connectionStatus), Optional.ToList(tunnelConnectionStatus), Optional.ToNullable(egressBytesTransferred), Optional.ToNullable(ingressBytesTransferred), peer.Value, Optional.ToNullable(enableBgp), Optional.ToNullable(useLocalAzureIpAddress), Optional.ToNullable(usePolicyBasedTrafficSelectors), Optional.ToList(ipsecPolicies), Optional.ToList(trafficSelectorPolicies), resourceGuid.Value, Optional.ToNullable(provisioningState), Optional.ToNullable(expressRouteGatewayBypass))); }
internal static PublicIPPrefixData DeserializePublicIPPrefixData(JsonElement element) { Optional <ExtendedLocation> extendedLocation = default; Optional <PublicIPPrefixSku> sku = default; Optional <string> etag = default; Optional <IList <string> > zones = default; Optional <string> name = default; Optional <string> type = default; Optional <string> location = default; Optional <IDictionary <string, string> > tags = default; ResourceIdentifier id = default; Optional <IPVersion> publicIPAddressVersion = default; Optional <IList <IpTag> > ipTags = default; Optional <int> prefixLength = default; Optional <string> ipPrefix = default; Optional <IReadOnlyList <ReferencedPublicIpAddress> > publicIPAddresses = default; Optional <SubResource> loadBalancerFrontendIpConfiguration = default; Optional <SubResource> customIPPrefix = default; Optional <string> resourceGuid = default; Optional <ProvisioningState> provisioningState = default; Optional <NatGatewayData> natGateway = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("extendedLocation")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } extendedLocation = ExtendedLocation.DeserializeExtendedLocation(property.Value); continue; } if (property.NameEquals("sku")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } sku = PublicIPPrefixSku.DeserializePublicIPPrefixSku(property.Value); continue; } if (property.NameEquals("etag")) { etag = property.Value.GetString(); continue; } if (property.NameEquals("zones")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } List <string> array = new List <string>(); foreach (var item in property.Value.EnumerateArray()) { array.Add(item.GetString()); } zones = array; continue; } if (property.NameEquals("name")) { name = property.Value.GetString(); continue; } if (property.NameEquals("type")) { type = property.Value.GetString(); continue; } if (property.NameEquals("location")) { location = property.Value.GetString(); continue; } if (property.NameEquals("tags")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } Dictionary <string, string> dictionary = new Dictionary <string, string>(); foreach (var property0 in property.Value.EnumerateObject()) { dictionary.Add(property0.Name, property0.Value.GetString()); } tags = dictionary; continue; } if (property.NameEquals("id")) { id = property.Value.GetString(); continue; } if (property.NameEquals("properties")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("publicIPAddressVersion")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } publicIPAddressVersion = new IPVersion(property0.Value.GetString()); continue; } if (property0.NameEquals("ipTags")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <IpTag> array = new List <IpTag>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(IpTag.DeserializeIpTag(item)); } ipTags = array; continue; } if (property0.NameEquals("prefixLength")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } prefixLength = property0.Value.GetInt32(); continue; } if (property0.NameEquals("ipPrefix")) { ipPrefix = property0.Value.GetString(); continue; } if (property0.NameEquals("publicIPAddresses")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <ReferencedPublicIpAddress> array = new List <ReferencedPublicIpAddress>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(ReferencedPublicIpAddress.DeserializeReferencedPublicIpAddress(item)); } publicIPAddresses = array; continue; } if (property0.NameEquals("loadBalancerFrontendIpConfiguration")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } loadBalancerFrontendIpConfiguration = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("customIPPrefix")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } customIPPrefix = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("resourceGuid")) { resourceGuid = property0.Value.GetString(); continue; } if (property0.NameEquals("provisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } provisioningState = new ProvisioningState(property0.Value.GetString()); continue; } if (property0.NameEquals("natGateway")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } natGateway = NatGatewayData.DeserializeNatGatewayData(property0.Value); continue; } } continue; } } return(new PublicIPPrefixData(id, name.Value, type.Value, location.Value, Optional.ToDictionary(tags), extendedLocation.Value, sku.Value, etag.Value, Optional.ToList(zones), Optional.ToNullable(publicIPAddressVersion), Optional.ToList(ipTags), Optional.ToNullable(prefixLength), ipPrefix.Value, Optional.ToList(publicIPAddresses), loadBalancerFrontendIpConfiguration.Value, customIPPrefix.Value, resourceGuid.Value, Optional.ToNullable(provisioningState), natGateway.Value)); }
internal static VpnGatewayData DeserializeVpnGatewayData(JsonElement element) { Optional <string> etag = default; Optional <string> name = default; Optional <string> type = default; Optional <string> location = default; Optional <IDictionary <string, string> > tags = default; ResourceIdentifier id = default; Optional <SubResource> virtualHub = default; Optional <IList <VpnConnectionData> > connections = default; Optional <BgpSettings> bgpSettings = default; Optional <ProvisioningState> provisioningState = default; Optional <int> vpnGatewayScaleUnit = default; Optional <IReadOnlyList <VpnGatewayIpConfiguration> > ipConfigurations = default; Optional <bool> isRoutingPreferenceInternet = default; Optional <IList <VpnGatewayNatRuleData> > natRules = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("etag")) { etag = property.Value.GetString(); continue; } if (property.NameEquals("name")) { name = property.Value.GetString(); continue; } if (property.NameEquals("type")) { type = property.Value.GetString(); continue; } if (property.NameEquals("location")) { location = property.Value.GetString(); continue; } if (property.NameEquals("tags")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } Dictionary <string, string> dictionary = new Dictionary <string, string>(); foreach (var property0 in property.Value.EnumerateObject()) { dictionary.Add(property0.Name, property0.Value.GetString()); } tags = dictionary; continue; } if (property.NameEquals("id")) { id = property.Value.GetString(); continue; } if (property.NameEquals("properties")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("virtualHub")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } virtualHub = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("connections")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <VpnConnectionData> array = new List <VpnConnectionData>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(VpnConnectionData.DeserializeVpnConnectionData(item)); } connections = array; continue; } if (property0.NameEquals("bgpSettings")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } bgpSettings = BgpSettings.DeserializeBgpSettings(property0.Value); continue; } if (property0.NameEquals("provisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } provisioningState = new ProvisioningState(property0.Value.GetString()); continue; } if (property0.NameEquals("vpnGatewayScaleUnit")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } vpnGatewayScaleUnit = property0.Value.GetInt32(); continue; } if (property0.NameEquals("ipConfigurations")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <VpnGatewayIpConfiguration> array = new List <VpnGatewayIpConfiguration>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(VpnGatewayIpConfiguration.DeserializeVpnGatewayIpConfiguration(item)); } ipConfigurations = array; continue; } if (property0.NameEquals("isRoutingPreferenceInternet")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } isRoutingPreferenceInternet = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("natRules")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <VpnGatewayNatRuleData> array = new List <VpnGatewayNatRuleData>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(VpnGatewayNatRuleData.DeserializeVpnGatewayNatRuleData(item)); } natRules = array; continue; } } continue; } } return(new VpnGatewayData(id, name.Value, type.Value, location.Value, Optional.ToDictionary(tags), etag.Value, virtualHub.Value, Optional.ToList(connections), bgpSettings.Value, Optional.ToNullable(provisioningState), Optional.ToNullable(vpnGatewayScaleUnit), Optional.ToList(ipConfigurations), Optional.ToNullable(isRoutingPreferenceInternet), Optional.ToList(natRules))); }
internal static VirtualHubData DeserializeVirtualHubData(JsonElement element) { Optional <string> etag = default; Optional <string> name = default; Optional <string> type = default; Optional <string> location = default; Optional <IDictionary <string, string> > tags = default; ResourceIdentifier id = default; Optional <SubResource> virtualWan = default; Optional <SubResource> vpnGateway = default; Optional <SubResource> p2SVpnGateway = default; Optional <SubResource> expressRouteGateway = default; Optional <SubResource> azureFirewall = default; Optional <SubResource> securityPartnerProvider = default; Optional <string> addressPrefix = default; Optional <VirtualHubRouteTable> routeTable = default; Optional <ProvisioningState> provisioningState = default; Optional <string> securityProviderName = default; Optional <IList <VirtualHubRouteTableV2Data> > virtualHubRouteTableV2s = default; Optional <string> sku = default; Optional <RoutingState> routingState = default; Optional <IReadOnlyList <SubResource> > bgpConnections = default; Optional <IReadOnlyList <SubResource> > ipConfigurations = default; Optional <long> virtualRouterAsn = default; Optional <IList <string> > virtualRouterIps = default; Optional <bool> allowBranchToBranchTraffic = default; Optional <PreferredRoutingGateway> preferredRoutingGateway = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("etag")) { etag = property.Value.GetString(); continue; } if (property.NameEquals("name")) { name = property.Value.GetString(); continue; } if (property.NameEquals("type")) { type = property.Value.GetString(); continue; } if (property.NameEquals("location")) { location = property.Value.GetString(); continue; } if (property.NameEquals("tags")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } Dictionary <string, string> dictionary = new Dictionary <string, string>(); foreach (var property0 in property.Value.EnumerateObject()) { dictionary.Add(property0.Name, property0.Value.GetString()); } tags = dictionary; continue; } if (property.NameEquals("id")) { id = property.Value.GetString(); continue; } if (property.NameEquals("properties")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("virtualWan")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } virtualWan = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("vpnGateway")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } vpnGateway = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("p2SVpnGateway")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } p2SVpnGateway = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("expressRouteGateway")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } expressRouteGateway = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("azureFirewall")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } azureFirewall = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("securityPartnerProvider")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } securityPartnerProvider = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("addressPrefix")) { addressPrefix = property0.Value.GetString(); continue; } if (property0.NameEquals("routeTable")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } routeTable = VirtualHubRouteTable.DeserializeVirtualHubRouteTable(property0.Value); continue; } if (property0.NameEquals("provisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } provisioningState = new ProvisioningState(property0.Value.GetString()); continue; } if (property0.NameEquals("securityProviderName")) { securityProviderName = property0.Value.GetString(); continue; } if (property0.NameEquals("virtualHubRouteTableV2s")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <VirtualHubRouteTableV2Data> array = new List <VirtualHubRouteTableV2Data>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(VirtualHubRouteTableV2Data.DeserializeVirtualHubRouteTableV2Data(item)); } virtualHubRouteTableV2s = array; continue; } if (property0.NameEquals("sku")) { sku = property0.Value.GetString(); continue; } if (property0.NameEquals("routingState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } routingState = new RoutingState(property0.Value.GetString()); continue; } if (property0.NameEquals("bgpConnections")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <SubResource> array = new List <SubResource>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(SubResource.DeserializeSubResource(item)); } bgpConnections = array; continue; } if (property0.NameEquals("ipConfigurations")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <SubResource> array = new List <SubResource>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(SubResource.DeserializeSubResource(item)); } ipConfigurations = array; continue; } if (property0.NameEquals("virtualRouterAsn")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } virtualRouterAsn = property0.Value.GetInt64(); continue; } if (property0.NameEquals("virtualRouterIps")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <string> array = new List <string>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(item.GetString()); } virtualRouterIps = array; continue; } if (property0.NameEquals("allowBranchToBranchTraffic")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } allowBranchToBranchTraffic = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("preferredRoutingGateway")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } preferredRoutingGateway = new PreferredRoutingGateway(property0.Value.GetString()); continue; } } continue; } } return(new VirtualHubData(id, name.Value, type.Value, location.Value, Optional.ToDictionary(tags), etag.Value, virtualWan.Value, vpnGateway.Value, p2SVpnGateway.Value, expressRouteGateway.Value, azureFirewall.Value, securityPartnerProvider.Value, addressPrefix.Value, routeTable.Value, Optional.ToNullable(provisioningState), securityProviderName.Value, Optional.ToList(virtualHubRouteTableV2s), sku.Value, Optional.ToNullable(routingState), Optional.ToList(bgpConnections), Optional.ToList(ipConfigurations), Optional.ToNullable(virtualRouterAsn), Optional.ToList(virtualRouterIps), Optional.ToNullable(allowBranchToBranchTraffic), Optional.ToNullable(preferredRoutingGateway))); }
internal static VirtualNetworkGatewayData DeserializeVirtualNetworkGatewayData(JsonElement element) { Optional <ExtendedLocation> extendedLocation = default; Optional <string> etag = default; Optional <string> name = default; Optional <string> type = default; Optional <string> location = default; Optional <IDictionary <string, string> > tags = default; ResourceIdentifier id = default; Optional <IList <VirtualNetworkGatewayIPConfiguration> > ipConfigurations = default; Optional <VirtualNetworkGatewayType> gatewayType = default; Optional <VpnType> vpnType = default; Optional <VpnGatewayGeneration> vpnGatewayGeneration = default; Optional <bool> enableBgp = default; Optional <bool> enablePrivateIpAddress = default; Optional <bool> activeActive = default; Optional <SubResource> gatewayDefaultSite = default; Optional <VirtualNetworkGatewaySku> sku = default; Optional <VpnClientConfiguration> vpnClientConfiguration = default; Optional <BgpSettings> bgpSettings = default; Optional <AddressSpace> customRoutes = default; Optional <string> resourceGuid = default; Optional <ProvisioningState> provisioningState = default; Optional <bool> enableDnsForwarding = default; Optional <string> inboundDnsForwardingEndpoint = default; Optional <string> vNetExtendedLocationResourceId = default; Optional <IList <VirtualNetworkGatewayNatRuleData> > natRules = default; Optional <bool> enableBgpRouteTranslationForNat = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("extendedLocation")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } extendedLocation = ExtendedLocation.DeserializeExtendedLocation(property.Value); continue; } if (property.NameEquals("etag")) { etag = property.Value.GetString(); continue; } if (property.NameEquals("name")) { name = property.Value.GetString(); continue; } if (property.NameEquals("type")) { type = property.Value.GetString(); continue; } if (property.NameEquals("location")) { location = property.Value.GetString(); continue; } if (property.NameEquals("tags")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } Dictionary <string, string> dictionary = new Dictionary <string, string>(); foreach (var property0 in property.Value.EnumerateObject()) { dictionary.Add(property0.Name, property0.Value.GetString()); } tags = dictionary; continue; } if (property.NameEquals("id")) { id = property.Value.GetString(); continue; } if (property.NameEquals("properties")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("ipConfigurations")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <VirtualNetworkGatewayIPConfiguration> array = new List <VirtualNetworkGatewayIPConfiguration>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(VirtualNetworkGatewayIPConfiguration.DeserializeVirtualNetworkGatewayIPConfiguration(item)); } ipConfigurations = array; continue; } if (property0.NameEquals("gatewayType")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } gatewayType = new VirtualNetworkGatewayType(property0.Value.GetString()); continue; } if (property0.NameEquals("vpnType")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } vpnType = new VpnType(property0.Value.GetString()); continue; } if (property0.NameEquals("vpnGatewayGeneration")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } vpnGatewayGeneration = new VpnGatewayGeneration(property0.Value.GetString()); continue; } if (property0.NameEquals("enableBgp")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } enableBgp = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("enablePrivateIpAddress")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } enablePrivateIpAddress = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("activeActive")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } activeActive = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("gatewayDefaultSite")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } gatewayDefaultSite = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("sku")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } sku = VirtualNetworkGatewaySku.DeserializeVirtualNetworkGatewaySku(property0.Value); continue; } if (property0.NameEquals("vpnClientConfiguration")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } vpnClientConfiguration = VpnClientConfiguration.DeserializeVpnClientConfiguration(property0.Value); continue; } if (property0.NameEquals("bgpSettings")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } bgpSettings = BgpSettings.DeserializeBgpSettings(property0.Value); continue; } if (property0.NameEquals("customRoutes")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } customRoutes = AddressSpace.DeserializeAddressSpace(property0.Value); continue; } if (property0.NameEquals("resourceGuid")) { resourceGuid = property0.Value.GetString(); continue; } if (property0.NameEquals("provisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } provisioningState = new ProvisioningState(property0.Value.GetString()); continue; } if (property0.NameEquals("enableDnsForwarding")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } enableDnsForwarding = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("inboundDnsForwardingEndpoint")) { inboundDnsForwardingEndpoint = property0.Value.GetString(); continue; } if (property0.NameEquals("vNetExtendedLocationResourceId")) { vNetExtendedLocationResourceId = property0.Value.GetString(); continue; } if (property0.NameEquals("natRules")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <VirtualNetworkGatewayNatRuleData> array = new List <VirtualNetworkGatewayNatRuleData>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(VirtualNetworkGatewayNatRuleData.DeserializeVirtualNetworkGatewayNatRuleData(item)); } natRules = array; continue; } if (property0.NameEquals("enableBgpRouteTranslationForNat")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } enableBgpRouteTranslationForNat = property0.Value.GetBoolean(); continue; } } continue; } } return(new VirtualNetworkGatewayData(id, name.Value, type.Value, location.Value, Optional.ToDictionary(tags), extendedLocation.Value, etag.Value, Optional.ToList(ipConfigurations), Optional.ToNullable(gatewayType), Optional.ToNullable(vpnType), Optional.ToNullable(vpnGatewayGeneration), Optional.ToNullable(enableBgp), Optional.ToNullable(enablePrivateIpAddress), Optional.ToNullable(activeActive), gatewayDefaultSite.Value, sku.Value, vpnClientConfiguration.Value, bgpSettings.Value, customRoutes.Value, resourceGuid.Value, Optional.ToNullable(provisioningState), Optional.ToNullable(enableDnsForwarding), inboundDnsForwardingEndpoint.Value, vNetExtendedLocationResourceId.Value, Optional.ToList(natRules), Optional.ToNullable(enableBgpRouteTranslationForNat))); }
internal static VirtualNetworkPeeringData DeserializeVirtualNetworkPeeringData(JsonElement element) { Optional <string> name = default; Optional <string> etag = default; Optional <string> type = default; ResourceIdentifier id = default; Optional <bool> allowVirtualNetworkAccess = default; Optional <bool> allowForwardedTraffic = default; Optional <bool> allowGatewayTransit = default; Optional <bool> useRemoteGateways = default; Optional <SubResource> remoteVirtualNetwork = default; Optional <AddressSpace> remoteAddressSpace = default; Optional <AddressSpace> remoteVirtualNetworkAddressSpace = default; Optional <VirtualNetworkBgpCommunities> remoteBgpCommunities = default; Optional <VirtualNetworkPeeringState> peeringState = default; Optional <VirtualNetworkPeeringLevel> peeringSyncLevel = default; Optional <ProvisioningState> provisioningState = default; Optional <bool> doNotVerifyRemoteGateways = default; Optional <string> resourceGuid = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("name")) { name = property.Value.GetString(); continue; } if (property.NameEquals("etag")) { etag = property.Value.GetString(); continue; } if (property.NameEquals("type")) { type = property.Value.GetString(); continue; } if (property.NameEquals("id")) { id = property.Value.GetString(); continue; } if (property.NameEquals("properties")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("allowVirtualNetworkAccess")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } allowVirtualNetworkAccess = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("allowForwardedTraffic")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } allowForwardedTraffic = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("allowGatewayTransit")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } allowGatewayTransit = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("useRemoteGateways")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } useRemoteGateways = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("remoteVirtualNetwork")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } remoteVirtualNetwork = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("remoteAddressSpace")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } remoteAddressSpace = AddressSpace.DeserializeAddressSpace(property0.Value); continue; } if (property0.NameEquals("remoteVirtualNetworkAddressSpace")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } remoteVirtualNetworkAddressSpace = AddressSpace.DeserializeAddressSpace(property0.Value); continue; } if (property0.NameEquals("remoteBgpCommunities")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } remoteBgpCommunities = VirtualNetworkBgpCommunities.DeserializeVirtualNetworkBgpCommunities(property0.Value); continue; } if (property0.NameEquals("peeringState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } peeringState = new VirtualNetworkPeeringState(property0.Value.GetString()); continue; } if (property0.NameEquals("peeringSyncLevel")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } peeringSyncLevel = new VirtualNetworkPeeringLevel(property0.Value.GetString()); continue; } if (property0.NameEquals("provisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } provisioningState = new ProvisioningState(property0.Value.GetString()); continue; } if (property0.NameEquals("doNotVerifyRemoteGateways")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } doNotVerifyRemoteGateways = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("resourceGuid")) { resourceGuid = property0.Value.GetString(); continue; } } continue; } } return(new VirtualNetworkPeeringData(id, name.Value, etag.Value, type.Value, Optional.ToNullable(allowVirtualNetworkAccess), Optional.ToNullable(allowForwardedTraffic), Optional.ToNullable(allowGatewayTransit), Optional.ToNullable(useRemoteGateways), remoteVirtualNetwork.Value, remoteAddressSpace.Value, remoteVirtualNetworkAddressSpace.Value, remoteBgpCommunities.Value, Optional.ToNullable(peeringState), Optional.ToNullable(peeringSyncLevel), Optional.ToNullable(provisioningState), Optional.ToNullable(doNotVerifyRemoteGateways), resourceGuid.Value)); }
internal static VirtualNetworkData DeserializeVirtualNetworkData(JsonElement element) { Optional <ExtendedLocation> extendedLocation = default; Optional <string> etag = default; Optional <string> name = default; Optional <string> type = default; Optional <string> location = default; Optional <IDictionary <string, string> > tags = default; ResourceIdentifier id = default; Optional <AddressSpace> addressSpace = default; Optional <DhcpOptions> dhcpOptions = default; Optional <int> flowTimeoutInMinutes = default; Optional <IList <SubnetData> > subnets = default; Optional <IList <VirtualNetworkPeeringData> > virtualNetworkPeerings = default; Optional <string> resourceGuid = default; Optional <ProvisioningState> provisioningState = default; Optional <bool> enableDdosProtection = default; Optional <bool> enableVmProtection = default; Optional <SubResource> ddosProtectionPlan = default; Optional <VirtualNetworkBgpCommunities> bgpCommunities = default; Optional <IList <SubResource> > ipAllocations = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("extendedLocation")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } extendedLocation = ExtendedLocation.DeserializeExtendedLocation(property.Value); continue; } if (property.NameEquals("etag")) { etag = property.Value.GetString(); continue; } if (property.NameEquals("name")) { name = property.Value.GetString(); continue; } if (property.NameEquals("type")) { type = property.Value.GetString(); continue; } if (property.NameEquals("location")) { location = property.Value.GetString(); continue; } if (property.NameEquals("tags")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } Dictionary <string, string> dictionary = new Dictionary <string, string>(); foreach (var property0 in property.Value.EnumerateObject()) { dictionary.Add(property0.Name, property0.Value.GetString()); } tags = dictionary; continue; } if (property.NameEquals("id")) { id = property.Value.GetString(); continue; } if (property.NameEquals("properties")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("addressSpace")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } addressSpace = AddressSpace.DeserializeAddressSpace(property0.Value); continue; } if (property0.NameEquals("dhcpOptions")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } dhcpOptions = DhcpOptions.DeserializeDhcpOptions(property0.Value); continue; } if (property0.NameEquals("flowTimeoutInMinutes")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } flowTimeoutInMinutes = property0.Value.GetInt32(); continue; } if (property0.NameEquals("subnets")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <SubnetData> array = new List <SubnetData>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(SubnetData.DeserializeSubnetData(item)); } subnets = array; continue; } if (property0.NameEquals("virtualNetworkPeerings")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <VirtualNetworkPeeringData> array = new List <VirtualNetworkPeeringData>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(VirtualNetworkPeeringData.DeserializeVirtualNetworkPeeringData(item)); } virtualNetworkPeerings = array; continue; } if (property0.NameEquals("resourceGuid")) { resourceGuid = property0.Value.GetString(); continue; } if (property0.NameEquals("provisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } provisioningState = new ProvisioningState(property0.Value.GetString()); continue; } if (property0.NameEquals("enableDdosProtection")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } enableDdosProtection = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("enableVmProtection")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } enableVmProtection = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("ddosProtectionPlan")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } ddosProtectionPlan = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("bgpCommunities")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } bgpCommunities = VirtualNetworkBgpCommunities.DeserializeVirtualNetworkBgpCommunities(property0.Value); continue; } if (property0.NameEquals("ipAllocations")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <SubResource> array = new List <SubResource>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(SubResource.DeserializeSubResource(item)); } ipAllocations = array; continue; } } continue; } } return(new VirtualNetworkData(id, name.Value, type.Value, location.Value, Optional.ToDictionary(tags), extendedLocation.Value, etag.Value, addressSpace.Value, dhcpOptions.Value, Optional.ToNullable(flowTimeoutInMinutes), Optional.ToList(subnets), Optional.ToList(virtualNetworkPeerings), resourceGuid.Value, Optional.ToNullable(provisioningState), Optional.ToNullable(enableDdosProtection), Optional.ToNullable(enableVmProtection), ddosProtectionPlan.Value, bgpCommunities.Value, Optional.ToList(ipAllocations))); }
internal static AzureFirewallData DeserializeAzureFirewallData(JsonElement element) { Optional <IList <string> > zones = default; Optional <string> etag = default; Optional <string> name = default; Optional <string> type = default; Optional <string> location = default; Optional <IDictionary <string, string> > tags = default; ResourceIdentifier id = default; Optional <IList <AzureFirewallApplicationRuleCollection> > applicationRuleCollections = default; Optional <IList <AzureFirewallNatRuleCollection> > natRuleCollections = default; Optional <IList <AzureFirewallNetworkRuleCollection> > networkRuleCollections = default; Optional <IList <AzureFirewallIPConfiguration> > ipConfigurations = default; Optional <AzureFirewallIPConfiguration> managementIpConfiguration = default; Optional <ProvisioningState> provisioningState = default; Optional <AzureFirewallThreatIntelMode> threatIntelMode = default; Optional <SubResource> virtualHub = default; Optional <SubResource> firewallPolicy = default; Optional <HubIPAddresses> hubIPAddresses = default; Optional <IReadOnlyList <AzureFirewallIpGroups> > ipGroups = default; Optional <AzureFirewallSku> sku = default; Optional <IDictionary <string, string> > additionalProperties = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("zones")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } List <string> array = new List <string>(); foreach (var item in property.Value.EnumerateArray()) { array.Add(item.GetString()); } zones = array; continue; } if (property.NameEquals("etag")) { etag = property.Value.GetString(); continue; } if (property.NameEquals("name")) { name = property.Value.GetString(); continue; } if (property.NameEquals("type")) { type = property.Value.GetString(); continue; } if (property.NameEquals("location")) { location = property.Value.GetString(); continue; } if (property.NameEquals("tags")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } Dictionary <string, string> dictionary = new Dictionary <string, string>(); foreach (var property0 in property.Value.EnumerateObject()) { dictionary.Add(property0.Name, property0.Value.GetString()); } tags = dictionary; continue; } if (property.NameEquals("id")) { id = property.Value.GetString(); continue; } if (property.NameEquals("properties")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("applicationRuleCollections")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <AzureFirewallApplicationRuleCollection> array = new List <AzureFirewallApplicationRuleCollection>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(AzureFirewallApplicationRuleCollection.DeserializeAzureFirewallApplicationRuleCollection(item)); } applicationRuleCollections = array; continue; } if (property0.NameEquals("natRuleCollections")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <AzureFirewallNatRuleCollection> array = new List <AzureFirewallNatRuleCollection>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(AzureFirewallNatRuleCollection.DeserializeAzureFirewallNatRuleCollection(item)); } natRuleCollections = array; continue; } if (property0.NameEquals("networkRuleCollections")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <AzureFirewallNetworkRuleCollection> array = new List <AzureFirewallNetworkRuleCollection>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(AzureFirewallNetworkRuleCollection.DeserializeAzureFirewallNetworkRuleCollection(item)); } networkRuleCollections = array; continue; } if (property0.NameEquals("ipConfigurations")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <AzureFirewallIPConfiguration> array = new List <AzureFirewallIPConfiguration>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(AzureFirewallIPConfiguration.DeserializeAzureFirewallIPConfiguration(item)); } ipConfigurations = array; continue; } if (property0.NameEquals("managementIpConfiguration")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } managementIpConfiguration = AzureFirewallIPConfiguration.DeserializeAzureFirewallIPConfiguration(property0.Value); continue; } if (property0.NameEquals("provisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } provisioningState = new ProvisioningState(property0.Value.GetString()); continue; } if (property0.NameEquals("threatIntelMode")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } threatIntelMode = new AzureFirewallThreatIntelMode(property0.Value.GetString()); continue; } if (property0.NameEquals("virtualHub")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } virtualHub = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("firewallPolicy")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } firewallPolicy = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("hubIPAddresses")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } hubIPAddresses = HubIPAddresses.DeserializeHubIPAddresses(property0.Value); continue; } if (property0.NameEquals("ipGroups")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <AzureFirewallIpGroups> array = new List <AzureFirewallIpGroups>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(AzureFirewallIpGroups.DeserializeAzureFirewallIpGroups(item)); } ipGroups = array; continue; } if (property0.NameEquals("sku")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } sku = AzureFirewallSku.DeserializeAzureFirewallSku(property0.Value); continue; } if (property0.NameEquals("additionalProperties")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } Dictionary <string, string> dictionary = new Dictionary <string, string>(); foreach (var property1 in property0.Value.EnumerateObject()) { dictionary.Add(property1.Name, property1.Value.GetString()); } additionalProperties = dictionary; continue; } } continue; } } return(new AzureFirewallData(id, name.Value, type.Value, location.Value, Optional.ToDictionary(tags), Optional.ToList(zones), etag.Value, Optional.ToList(applicationRuleCollections), Optional.ToList(natRuleCollections), Optional.ToList(networkRuleCollections), Optional.ToList(ipConfigurations), managementIpConfiguration.Value, Optional.ToNullable(provisioningState), Optional.ToNullable(threatIntelMode), virtualHub.Value, firewallPolicy.Value, hubIPAddresses.Value, Optional.ToList(ipGroups), sku.Value, Optional.ToDictionary(additionalProperties))); }