internal static ConnectionMonitorEndpointFilter DeserializeConnectionMonitorEndpointFilter(JsonElement element) { Optional <ConnectionMonitorEndpointFilterType> type = default; Optional <IList <ConnectionMonitorEndpointFilterItem> > items = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("type")) { type = new ConnectionMonitorEndpointFilterType(property.Value.GetString()); continue; } if (property.NameEquals("items")) { List <ConnectionMonitorEndpointFilterItem> array = new List <ConnectionMonitorEndpointFilterItem>(); foreach (var item in property.Value.EnumerateArray()) { array.Add(ConnectionMonitorEndpointFilterItem.DeserializeConnectionMonitorEndpointFilterItem(item)); } items = array; continue; } } return(new ConnectionMonitorEndpointFilter(Optional.ToNullable(type), Optional.ToList(items))); }
internal static ConnectionMonitorEndpointFilter DeserializeConnectionMonitorEndpointFilter(JsonElement element) { string type = default; IList <ConnectionMonitorEndpointFilterItem> items = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("type")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } type = property.Value.GetString(); continue; } if (property.NameEquals("items")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } List <ConnectionMonitorEndpointFilterItem> array = new List <ConnectionMonitorEndpointFilterItem>(); foreach (var item in property.Value.EnumerateArray()) { if (item.ValueKind == JsonValueKind.Null) { array.Add(null); } else { array.Add(ConnectionMonitorEndpointFilterItem.DeserializeConnectionMonitorEndpointFilterItem(item)); } } items = array; continue; } } return(new ConnectionMonitorEndpointFilter(type, items)); }