internal static EffectiveNetworkSecurityGroup DeserializeEffectiveNetworkSecurityGroup(JsonElement element) { SubResource networkSecurityGroup = default; EffectiveNetworkSecurityGroupAssociation association = default; IReadOnlyList <EffectiveNetworkSecurityRule> effectiveSecurityRules = default; string tagMap = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("networkSecurityGroup")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } networkSecurityGroup = SubResource.DeserializeSubResource(property.Value); continue; } if (property.NameEquals("association")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } association = EffectiveNetworkSecurityGroupAssociation.DeserializeEffectiveNetworkSecurityGroupAssociation(property.Value); continue; } if (property.NameEquals("effectiveSecurityRules")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } List <EffectiveNetworkSecurityRule> array = new List <EffectiveNetworkSecurityRule>(); foreach (var item in property.Value.EnumerateArray()) { if (item.ValueKind == JsonValueKind.Null) { array.Add(null); } else { array.Add(EffectiveNetworkSecurityRule.DeserializeEffectiveNetworkSecurityRule(item)); } } effectiveSecurityRules = array; continue; } if (property.NameEquals("tagMap")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } tagMap = property.Value.GetString(); continue; } } return(new EffectiveNetworkSecurityGroup(networkSecurityGroup, association, effectiveSecurityRules, tagMap)); }
internal static EffectiveNetworkSecurityGroup DeserializeEffectiveNetworkSecurityGroup(JsonElement element) { Optional <SubResource> networkSecurityGroup = default; Optional <EffectiveNetworkSecurityGroupAssociation> association = default; Optional <IReadOnlyList <EffectiveNetworkSecurityRule> > effectiveSecurityRules = default; Optional <string> tagMap = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("networkSecurityGroup")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } networkSecurityGroup = SubResource.DeserializeSubResource(property.Value); continue; } if (property.NameEquals("association")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } association = EffectiveNetworkSecurityGroupAssociation.DeserializeEffectiveNetworkSecurityGroupAssociation(property.Value); continue; } if (property.NameEquals("effectiveSecurityRules")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } List <EffectiveNetworkSecurityRule> array = new List <EffectiveNetworkSecurityRule>(); foreach (var item in property.Value.EnumerateArray()) { array.Add(EffectiveNetworkSecurityRule.DeserializeEffectiveNetworkSecurityRule(item)); } effectiveSecurityRules = array; continue; } if (property.NameEquals("tagMap")) { tagMap = property.Value.GetString(); continue; } } return(new EffectiveNetworkSecurityGroup(networkSecurityGroup.Value, association.Value, Optional.ToList(effectiveSecurityRules), tagMap.Value)); }
internal static SecurityRuleAssociations DeserializeSecurityRuleAssociations(JsonElement element) { Optional <NetworkInterfaceAssociation> networkInterfaceAssociation = default; Optional <SubnetAssociation> subnetAssociation = default; Optional <IReadOnlyList <SecurityRule> > defaultSecurityRules = default; Optional <IReadOnlyList <EffectiveNetworkSecurityRule> > effectiveSecurityRules = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("networkInterfaceAssociation")) { networkInterfaceAssociation = NetworkInterfaceAssociation.DeserializeNetworkInterfaceAssociation(property.Value); continue; } if (property.NameEquals("subnetAssociation")) { subnetAssociation = SubnetAssociation.DeserializeSubnetAssociation(property.Value); continue; } if (property.NameEquals("defaultSecurityRules")) { List <SecurityRule> array = new List <SecurityRule>(); foreach (var item in property.Value.EnumerateArray()) { array.Add(SecurityRule.DeserializeSecurityRule(item)); } defaultSecurityRules = array; continue; } if (property.NameEquals("effectiveSecurityRules")) { List <EffectiveNetworkSecurityRule> array = new List <EffectiveNetworkSecurityRule>(); foreach (var item in property.Value.EnumerateArray()) { array.Add(EffectiveNetworkSecurityRule.DeserializeEffectiveNetworkSecurityRule(item)); } effectiveSecurityRules = array; continue; } } return(new SecurityRuleAssociations(networkInterfaceAssociation.Value, subnetAssociation.Value, Optional.ToList(defaultSecurityRules), Optional.ToList(effectiveSecurityRules))); }
internal static SecurityRuleAssociations DeserializeSecurityRuleAssociations(JsonElement element) { NetworkInterfaceAssociation networkInterfaceAssociation = default; SubnetAssociation subnetAssociation = default; IReadOnlyList <SecurityRule> defaultSecurityRules = default; IReadOnlyList <EffectiveNetworkSecurityRule> effectiveSecurityRules = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("networkInterfaceAssociation")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } networkInterfaceAssociation = NetworkInterfaceAssociation.DeserializeNetworkInterfaceAssociation(property.Value); continue; } if (property.NameEquals("subnetAssociation")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } subnetAssociation = SubnetAssociation.DeserializeSubnetAssociation(property.Value); continue; } if (property.NameEquals("defaultSecurityRules")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } List <SecurityRule> array = new List <SecurityRule>(); foreach (var item in property.Value.EnumerateArray()) { if (item.ValueKind == JsonValueKind.Null) { array.Add(null); } else { array.Add(SecurityRule.DeserializeSecurityRule(item)); } } defaultSecurityRules = array; continue; } if (property.NameEquals("effectiveSecurityRules")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } List <EffectiveNetworkSecurityRule> array = new List <EffectiveNetworkSecurityRule>(); foreach (var item in property.Value.EnumerateArray()) { if (item.ValueKind == JsonValueKind.Null) { array.Add(null); } else { array.Add(EffectiveNetworkSecurityRule.DeserializeEffectiveNetworkSecurityRule(item)); } } effectiveSecurityRules = array; continue; } } return(new SecurityRuleAssociations(networkInterfaceAssociation, subnetAssociation, defaultSecurityRules, effectiveSecurityRules)); }