public SocketAddrMatchConditionParameters(SocketAddrMatchConditionParametersTypeName typeName, SocketAddrOperator @operator) { TypeName = typeName; Operator = @operator; MatchValues = new ChangeTrackingList <string>(); Transforms = new ChangeTrackingList <TransformCategory>(); }
internal SocketAddrMatchConditionParameters(SocketAddrMatchConditionParametersTypeName typeName, SocketAddrOperator @operator, bool?negateCondition, IList <string> matchValues, IList <TransformCategory> transforms) { TypeName = typeName; Operator = @operator; NegateCondition = negateCondition; MatchValues = matchValues; Transforms = transforms; }
internal static SocketAddrMatchConditionParameters DeserializeSocketAddrMatchConditionParameters(JsonElement element) { SocketAddrMatchConditionParametersTypeName typeName = default; SocketAddrOperator @operator = default; Optional <bool> negateCondition = default; Optional <IList <string> > matchValues = default; Optional <IList <TransformCategory> > transforms = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("typeName")) { typeName = new SocketAddrMatchConditionParametersTypeName(property.Value.GetString()); continue; } if (property.NameEquals("operator")) { @operator = new SocketAddrOperator(property.Value.GetString()); continue; } if (property.NameEquals("negateCondition")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } negateCondition = property.Value.GetBoolean(); continue; } if (property.NameEquals("matchValues")) { 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()); } matchValues = array; continue; } if (property.NameEquals("transforms")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } List <TransformCategory> array = new List <TransformCategory>(); foreach (var item in property.Value.EnumerateArray()) { array.Add(new TransformCategory(item.GetString())); } transforms = array; continue; } } return(new SocketAddrMatchConditionParameters(typeName, @operator, Optional.ToNullable(negateCondition), Optional.ToList(matchValues), Optional.ToList(transforms))); }