/// <summary> /// Initializes a new instance of the NetworkSecurityGroupRule class. /// </summary> /// <param name="priority">The priority for this rule.</param> /// <param name="access">The action that should be taken for a /// specified IP address, subnet range or tag.</param> /// <param name="sourceAddressPrefix">The source address prefix or tag /// to match for the rule.</param> public NetworkSecurityGroupRule(int priority, NetworkSecurityGroupRuleAccess access, string sourceAddressPrefix) { Priority = priority; Access = access; SourceAddressPrefix = sourceAddressPrefix; CustomInit(); }
internal NetworkSecurityGroupRule(int priority, NetworkSecurityGroupRuleAccess access, string sourceAddressPrefix, IReadOnlyList <string> sourcePortRanges) { Priority = priority; Access = access; SourceAddressPrefix = sourceAddressPrefix; SourcePortRanges = sourcePortRanges; }
/// <summary> /// Initializes a new instance of the NetworkSecurityGroupRule class. /// </summary> /// <param name="priority">The priority for this rule.</param> /// <param name="access">The action that should be taken for a /// specified IP address, subnet range or tag.</param> /// <param name="sourceAddressPrefix">The source address prefix or tag /// to match for the rule.</param> /// <param name="sourcePortRanges">The source port ranges to match for /// the rule.</param> public NetworkSecurityGroupRule(int priority, NetworkSecurityGroupRuleAccess access, string sourceAddressPrefix, IList <string> sourcePortRanges = default(IList <string>)) { Priority = priority; Access = access; SourceAddressPrefix = sourceAddressPrefix; SourcePortRanges = sourcePortRanges; CustomInit(); }
internal NetworkSecurityGroupRule(int priority, NetworkSecurityGroupRuleAccess access, string sourceAddressPrefix) { if (sourceAddressPrefix == null) { throw new ArgumentNullException(nameof(sourceAddressPrefix)); } Priority = priority; Access = access; SourceAddressPrefix = sourceAddressPrefix; }
internal static string ToSerializedValue(this NetworkSecurityGroupRuleAccess value) { switch (value) { case NetworkSecurityGroupRuleAccess.Allow: return("allow"); case NetworkSecurityGroupRuleAccess.Deny: return("deny"); } return(null); }
internal static NetworkSecurityGroupRule DeserializeNetworkSecurityGroupRule(JsonElement element) { int priority = default; NetworkSecurityGroupRuleAccess access = default; string sourceAddressPrefix = default; IReadOnlyList <string> sourcePortRanges = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("priority")) { priority = property.Value.GetInt32(); continue; } if (property.NameEquals("access")) { access = property.Value.GetString().ToNetworkSecurityGroupRuleAccess(); continue; } if (property.NameEquals("sourceAddressPrefix")) { sourceAddressPrefix = property.Value.GetString(); continue; } if (property.NameEquals("sourcePortRanges")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } List <string> array = new List <string>(); foreach (var item in property.Value.EnumerateArray()) { array.Add(item.GetString()); } sourcePortRanges = array; continue; } } return(new NetworkSecurityGroupRule(priority, access, sourceAddressPrefix, sourcePortRanges)); }
public static string ToSerialString(this NetworkSecurityGroupRuleAccess value) => value switch {