public override bool Read(ref System.Text.Json.Utf8JsonReader reader, Type typeToConvert, System.Text.Json.JsonSerializerOptions options) { if (reader.TokenType == System.Text.Json.JsonTokenType.String) { string test = reader.GetString(); if (string.IsNullOrEmpty(test)) { return(false); } test = test.ToLower(); if (test == "0" || test == "false") { return(false); } if (test == "1" || test == "true") { return(true); } } else if (reader.TokenType == System.Text.Json.JsonTokenType.True) { return(true); } return(false); }
public override MappedGuid Read(ref System.Text.Json.Utf8JsonReader reader, Type typeToConvert, System.Text.Json.JsonSerializerOptions options) { if (reader.Read()) { var guid = Guid.Parse(reader.GetString()); return(MappedGuidHelpers.Create(guid).Match(s => s, e => throw e)); } throw new Exception("Didn't map guid"); }
public override EnvironmentVariableString Read(ref System.Text.Json.Utf8JsonReader reader, Type typeToConvert, System.Text.Json.JsonSerializerOptions options) { if (reader.TokenType == System.Text.Json.JsonTokenType.String) { return(new EnvironmentVariableString(reader.GetString())); } else { throw new System.Text.Json.JsonException($"Current value is not a valid {nameof(EnvironmentVariableString)}"); } }
public override string Read(ref System.Text.Json.Utf8JsonReader reader, Type typeToConvert, System.Text.Json.JsonSerializerOptions options) { var s = reader.GetString(); if (s != null) { return(string.Intern(s)); } else { return(null); } }
public override System.TimeSpan Read(ref System.Text.Json.Utf8JsonReader Utf8JsonReader, System.Type Type, System.Text.Json.JsonSerializerOptions JsonSerializerOptions) { System.String Value = Utf8JsonReader.GetString(); if (System.String.IsNullOrWhiteSpace(Value)) { return(System.TimeSpan.Zero); } System.TimeSpan Result; if (!(System.TimeSpan.TryParseExact(Value, Format, null, out Result))) { throw new System.FormatException("The provided TimeSpan is invalid."); } return(Result); }
public override StringId Read(ref System.Text.Json.Utf8JsonReader reader, System.Type typeToConvert, System.Text.Json.JsonSerializerOptions options) { return(new StringId(reader.GetString())); }
public override PhoneNumber Read(ref System.Text.Json.Utf8JsonReader reader, Type typeToConvert, System.Text.Json.JsonSerializerOptions options) { if (reader.TokenType == System.Text.Json.JsonTokenType.Null) { return(null); } else if (reader.TokenType == System.Text.Json.JsonTokenType.String && PhoneNumber.TryParse(reader.GetString(), out PhoneNumber phoneNumber)) { return(phoneNumber); } else { throw new System.Text.Json.JsonException($"Current value is not a valid {nameof(PhoneNumber)}"); } }
public override EmailAddress Read(ref System.Text.Json.Utf8JsonReader reader, Type typeToConvert, System.Text.Json.JsonSerializerOptions options) { if (reader.TokenType == System.Text.Json.JsonTokenType.Null) { return(null); } else if (reader.TokenType == System.Text.Json.JsonTokenType.String && EmailAddress.TryParse(reader.GetString(), out EmailAddress address)) { return(address); } else { throw new System.Text.Json.JsonException($"Current value is not a valid {nameof(EmailAddress)}"); } }