aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcrobibero <cody@robibe.ro>2020-05-22 10:48:01 -0600
committercrobibero <cody@robibe.ro>2020-05-22 10:48:01 -0600
commit341b947cdecdfc791c1bc3e72da1e68cd3754c3a (patch)
tree0dde9d707204d306cb8746873ed02a23b9dfdd9d
parent2f2bceb1104d8ea669ca21fc40200247aca956ed (diff)
Move int64 converter to JsonDefaults location
-rw-r--r--Jellyfin.Server/Extensions/ApiServiceCollectionExtensions.cs2
-rw-r--r--MediaBrowser.Common/Json/Converters/JsonInt64Converter.cs (renamed from Jellyfin.Server/Converters/LongToStringConverter.cs)10
-rw-r--r--MediaBrowser.Common/Json/JsonDefaults.cs1
3 files changed, 6 insertions, 7 deletions
diff --git a/Jellyfin.Server/Extensions/ApiServiceCollectionExtensions.cs b/Jellyfin.Server/Extensions/ApiServiceCollectionExtensions.cs
index afd42ac5a..71ef9a69a 100644
--- a/Jellyfin.Server/Extensions/ApiServiceCollectionExtensions.cs
+++ b/Jellyfin.Server/Extensions/ApiServiceCollectionExtensions.cs
@@ -4,7 +4,6 @@ using Jellyfin.Api.Auth.FirstTimeSetupOrElevatedPolicy;
using Jellyfin.Api.Auth.RequiresElevationPolicy;
using Jellyfin.Api.Constants;
using Jellyfin.Api.Controllers;
-using Jellyfin.Server.Converters;
using Microsoft.AspNetCore.Authentication;
using Microsoft.AspNetCore.Authorization;
using Microsoft.Extensions.DependencyInjection;
@@ -76,7 +75,6 @@ namespace Jellyfin.Server.Extensions
{
// Setting the naming policy to null leaves the property names as-is when serializing objects to JSON.
options.JsonSerializerOptions.PropertyNamingPolicy = null;
- options.JsonSerializerOptions.Converters.Add(new LongToStringConverter());
})
.AddControllersAsServices();
}
diff --git a/Jellyfin.Server/Converters/LongToStringConverter.cs b/MediaBrowser.Common/Json/Converters/JsonInt64Converter.cs
index ad66b7b0c..d18fd95d5 100644
--- a/Jellyfin.Server/Converters/LongToStringConverter.cs
+++ b/MediaBrowser.Common/Json/Converters/JsonInt64Converter.cs
@@ -5,16 +5,16 @@ using System.Globalization;
using System.Text.Json;
using System.Text.Json.Serialization;
-namespace Jellyfin.Server.Converters
+namespace MediaBrowser.Common.Json.Converters
{
/// <summary>
/// Long to String JSON converter.
/// Javascript does not support 64-bit integers.
/// </summary>
- public class LongToStringConverter : JsonConverter<long>
+ public class JsonInt64Converter : JsonConverter<long>
{
/// <summary>
- /// Read JSON string as Long.
+ /// Read JSON string as int64.
/// </summary>
/// <param name="reader"><see cref="Utf8JsonReader"/>.</param>
/// <param name="type">Type.</param>
@@ -25,8 +25,8 @@ namespace Jellyfin.Server.Converters
if (reader.TokenType == JsonTokenType.String)
{
// try to parse number directly from bytes
- ReadOnlySpan<byte> span = reader.HasValueSequence ? reader.ValueSequence.ToArray() : reader.ValueSpan;
- if (Utf8Parser.TryParse(span, out long number, out int bytesConsumed) && span.Length == bytesConsumed)
+ var span = reader.HasValueSequence ? reader.ValueSequence.ToArray() : reader.ValueSpan;
+ if (Utf8Parser.TryParse(span, out long number, out var bytesConsumed) && span.Length == bytesConsumed)
{
return number;
}
diff --git a/MediaBrowser.Common/Json/JsonDefaults.cs b/MediaBrowser.Common/Json/JsonDefaults.cs
index 4a6ee0a79..a7f5fde05 100644
--- a/MediaBrowser.Common/Json/JsonDefaults.cs
+++ b/MediaBrowser.Common/Json/JsonDefaults.cs
@@ -23,6 +23,7 @@ namespace MediaBrowser.Common.Json
options.Converters.Add(new JsonGuidConverter());
options.Converters.Add(new JsonStringEnumConverter());
+ options.Converters.Add(new JsonInt64Converter());
return options;
}