diff --git a/Jellyfin.Server/Extensions/ApiServiceCollectionExtensions.cs b/Jellyfin.Server/Extensions/ApiServiceCollectionExtensions.cs
index afd42ac5ac..71ef9a69a2 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
similarity index 85%
rename from Jellyfin.Server/Converters/LongToStringConverter.cs
rename to MediaBrowser.Common/Json/Converters/JsonInt64Converter.cs
index ad66b7b0c3..d18fd95d5f 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
{
///
/// Long to String JSON converter.
/// Javascript does not support 64-bit integers.
///
- public class LongToStringConverter : JsonConverter
+ public class JsonInt64Converter : JsonConverter
{
///
- /// Read JSON string as Long.
+ /// Read JSON string as int64.
///
/// .
/// Type.
@@ -25,8 +25,8 @@ namespace Jellyfin.Server.Converters
if (reader.TokenType == JsonTokenType.String)
{
// try to parse number directly from bytes
- ReadOnlySpan 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 4a6ee0a793..a7f5fde050 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;
}