mirror of
https://github.com/jellyfin/jellyfin.git
synced 2024-07-18 19:50:34 +02:00
Use sync string instead of file
This commit is contained in:
parent
a714008b59
commit
e835dfb27d
|
@ -10,6 +10,7 @@ using System.Net;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using System.Runtime.InteropServices;
|
using System.Runtime.InteropServices;
|
||||||
using System.Security.Cryptography.X509Certificates;
|
using System.Security.Cryptography.X509Certificates;
|
||||||
|
using System.Text.Json;
|
||||||
using System.Threading;
|
using System.Threading;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Emby.Dlna;
|
using Emby.Dlna;
|
||||||
|
@ -100,7 +101,6 @@ using Microsoft.AspNetCore.Mvc;
|
||||||
using Microsoft.Extensions.DependencyInjection;
|
using Microsoft.Extensions.DependencyInjection;
|
||||||
using Microsoft.Extensions.Logging;
|
using Microsoft.Extensions.Logging;
|
||||||
using Prometheus.DotNetRuntime;
|
using Prometheus.DotNetRuntime;
|
||||||
using JsonSerializer = System.Text.Json.JsonSerializer;
|
|
||||||
using OperatingSystem = MediaBrowser.Common.System.OperatingSystem;
|
using OperatingSystem = MediaBrowser.Common.System.OperatingSystem;
|
||||||
using WebSocketManager = Emby.Server.Implementations.HttpServer.WebSocketManager;
|
using WebSocketManager = Emby.Server.Implementations.HttpServer.WebSocketManager;
|
||||||
|
|
||||||
|
@ -1047,8 +1047,8 @@ namespace Emby.Server.Implementations
|
||||||
var metafile = Path.Combine(dir, "meta.json");
|
var metafile = Path.Combine(dir, "meta.json");
|
||||||
if (File.Exists(metafile))
|
if (File.Exists(metafile))
|
||||||
{
|
{
|
||||||
using FileStream jsonStream = File.OpenRead(metafile);
|
var jsonString = File.ReadAllText(metafile);
|
||||||
var manifest = JsonSerializer.DeserializeAsync<PluginManifest>(jsonStream, jsonOptions).GetAwaiter().GetResult();
|
var manifest = JsonSerializer.Deserialize<PluginManifest>(jsonString, jsonOptions);
|
||||||
|
|
||||||
if (!Version.TryParse(manifest.TargetAbi, out var targetAbi))
|
if (!Version.TryParse(manifest.TargetAbi, out var targetAbi))
|
||||||
{
|
{
|
||||||
|
|
|
@ -340,8 +340,8 @@ namespace Emby.Server.Implementations.Channels
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
using FileStream jsonStream = File.OpenRead(path);
|
var jsonString = File.ReadAllText(path);
|
||||||
return JsonSerializer.DeserializeAsync<List<MediaSourceInfo>>(jsonStream, JsonDefaults.GetOptions()).GetAwaiter().GetResult()
|
return JsonSerializer.Deserialize<List<MediaSourceInfo>>(jsonString, JsonDefaults.GetOptions())
|
||||||
?? new List<MediaSourceInfo>();
|
?? new List<MediaSourceInfo>();
|
||||||
}
|
}
|
||||||
catch
|
catch
|
||||||
|
@ -368,6 +368,7 @@ namespace Emby.Server.Implementations.Channels
|
||||||
}
|
}
|
||||||
|
|
||||||
Directory.CreateDirectory(Path.GetDirectoryName(path));
|
Directory.CreateDirectory(Path.GetDirectoryName(path));
|
||||||
|
|
||||||
await using FileStream createStream = File.Create(path);
|
await using FileStream createStream = File.Create(path);
|
||||||
await JsonSerializer.SerializeAsync(createStream, mediaSources, JsonDefaults.GetOptions()).ConfigureAwait(false);
|
await JsonSerializer.SerializeAsync(createStream, mediaSources, JsonDefaults.GetOptions()).ConfigureAwait(false);
|
||||||
}
|
}
|
||||||
|
|
|
@ -44,8 +44,8 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
using FileStream jsonStream = File.OpenRead(_dataPath);
|
var jsonString = File.ReadAllText(_dataPath);
|
||||||
_items = JsonSerializer.DeserializeAsync<T[]>(jsonStream, JsonDefaults.GetOptions()).GetAwaiter().GetResult();
|
_items = JsonSerializer.Deserialize<T[]>(jsonString, JsonDefaults.GetOptions());
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
|
|
|
@ -139,8 +139,15 @@ namespace Emby.Server.Implementations.ScheduledTasks
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
using FileStream jsonStream = File.OpenRead(path);
|
var jsonString = File.ReadAllText(path);
|
||||||
_lastExecutionResult = JsonSerializer.DeserializeAsync<TaskResult>(jsonStream, JsonDefaults.GetOptions()).GetAwaiter().GetResult();
|
if (!string.IsNullOrWhiteSpace(jsonString))
|
||||||
|
{
|
||||||
|
_lastExecutionResult = JsonSerializer.Deserialize<TaskResult>(jsonString, JsonDefaults.GetOptions());
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_logger.LogDebug("Scheduled Task history file {path} is empty. Skipping deserialization.", path);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in a new issue