internal static ExitCodeRangeMapping DeserializeExitCodeRangeMapping(JsonElement element) { int start = default; int end = default; ExitOptions exitOptions = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("start")) { start = property.Value.GetInt32(); continue; } if (property.NameEquals("end")) { end = property.Value.GetInt32(); continue; } if (property.NameEquals("exitOptions")) { exitOptions = ExitOptions.DeserializeExitOptions(property.Value); continue; } } return(new ExitCodeRangeMapping(start, end, exitOptions)); }
internal static ExitCodeMapping DeserializeExitCodeMapping(JsonElement element) { int code = default; ExitOptions exitOptions = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("code")) { code = property.Value.GetInt32(); continue; } if (property.NameEquals("exitOptions")) { exitOptions = ExitOptions.DeserializeExitOptions(property.Value); continue; } } return(new ExitCodeMapping(code, exitOptions)); }
internal static ExitConditions DeserializeExitConditions(JsonElement element) { IList <ExitCodeMapping> exitCodes = default; IList <ExitCodeRangeMapping> exitCodeRanges = default; ExitOptions preProcessingError = default; ExitOptions fileUploadError = default; ExitOptions @default = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("exitCodes")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } List <ExitCodeMapping> array = new List <ExitCodeMapping>(); foreach (var item in property.Value.EnumerateArray()) { array.Add(ExitCodeMapping.DeserializeExitCodeMapping(item)); } exitCodes = array; continue; } if (property.NameEquals("exitCodeRanges")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } List <ExitCodeRangeMapping> array = new List <ExitCodeRangeMapping>(); foreach (var item in property.Value.EnumerateArray()) { array.Add(ExitCodeRangeMapping.DeserializeExitCodeRangeMapping(item)); } exitCodeRanges = array; continue; } if (property.NameEquals("preProcessingError")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } preProcessingError = ExitOptions.DeserializeExitOptions(property.Value); continue; } if (property.NameEquals("fileUploadError")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } fileUploadError = ExitOptions.DeserializeExitOptions(property.Value); continue; } if (property.NameEquals("default")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } @default = ExitOptions.DeserializeExitOptions(property.Value); continue; } } return(new ExitConditions(exitCodes, exitCodeRanges, preProcessingError, fileUploadError, @default)); }