mirror of
https://github.com/jellyfin/jellyfin.git
synced 2025-07-09 03:04:24 -04:00
Properly dispose DisplayPreferencesRepository
This commit is contained in:
parent
e5b163b86a
commit
2fdf7f1098
@ -123,6 +123,8 @@ namespace Emby.Server.Implementations
|
|||||||
{
|
{
|
||||||
private SqliteUserRepository _userRepository;
|
private SqliteUserRepository _userRepository;
|
||||||
|
|
||||||
|
private SqliteDisplayPreferencesRepository _displayPreferencesRepository;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets a value indicating whether this instance can self restart.
|
/// Gets a value indicating whether this instance can self restart.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -757,8 +759,12 @@ namespace Emby.Server.Implementations
|
|||||||
UserDataManager = new UserDataManager(LoggerFactory, ServerConfigurationManager, () => UserManager);
|
UserDataManager = new UserDataManager(LoggerFactory, ServerConfigurationManager, () => UserManager);
|
||||||
serviceCollection.AddSingleton(UserDataManager);
|
serviceCollection.AddSingleton(UserDataManager);
|
||||||
|
|
||||||
var displayPreferencesRepo = new SqliteDisplayPreferencesRepository(LoggerFactory, JsonSerializer, ApplicationPaths, FileSystemManager);
|
_displayPreferencesRepository = new SqliteDisplayPreferencesRepository(
|
||||||
serviceCollection.AddSingleton<IDisplayPreferencesRepository>(displayPreferencesRepo);
|
LoggerFactory.CreateLogger<SqliteDisplayPreferencesRepository>(),
|
||||||
|
JsonSerializer,
|
||||||
|
ApplicationPaths,
|
||||||
|
FileSystemManager);
|
||||||
|
serviceCollection.AddSingleton<IDisplayPreferencesRepository>(_displayPreferencesRepository);
|
||||||
|
|
||||||
ItemRepository = new SqliteItemRepository(ServerConfigurationManager, this, JsonSerializer, LoggerFactory, LocalizationManager);
|
ItemRepository = new SqliteItemRepository(ServerConfigurationManager, this, JsonSerializer, LoggerFactory, LocalizationManager);
|
||||||
serviceCollection.AddSingleton<IItemRepository>(ItemRepository);
|
serviceCollection.AddSingleton<IItemRepository>(ItemRepository);
|
||||||
@ -884,7 +890,7 @@ namespace Emby.Server.Implementations
|
|||||||
|
|
||||||
serviceCollection.AddSingleton(typeof(IResourceFileManager), typeof(ResourceFileManager));
|
serviceCollection.AddSingleton(typeof(IResourceFileManager), typeof(ResourceFileManager));
|
||||||
|
|
||||||
displayPreferencesRepo.Initialize();
|
_displayPreferencesRepository.Initialize();
|
||||||
|
|
||||||
var userDataRepo = new SqliteUserDataRepository(LoggerFactory, ApplicationPaths);
|
var userDataRepo = new SqliteUserDataRepository(LoggerFactory, ApplicationPaths);
|
||||||
|
|
||||||
@ -964,7 +970,10 @@ namespace Emby.Server.Implementations
|
|||||||
/// <returns><see cref="Task{SqliteUserRepository}" />.</returns>
|
/// <returns><see cref="Task{SqliteUserRepository}" />.</returns>
|
||||||
private SqliteUserRepository GetUserRepository()
|
private SqliteUserRepository GetUserRepository()
|
||||||
{
|
{
|
||||||
var repo = new SqliteUserRepository(LoggerFactory, ApplicationPaths, JsonSerializer);
|
var repo = new SqliteUserRepository(
|
||||||
|
LoggerFactory.CreateLogger<SqliteUserRepository>(),
|
||||||
|
ApplicationPaths,
|
||||||
|
JsonSerializer);
|
||||||
|
|
||||||
repo.Initialize();
|
repo.Initialize();
|
||||||
|
|
||||||
@ -1911,8 +1920,12 @@ namespace Emby.Server.Implementations
|
|||||||
}
|
}
|
||||||
|
|
||||||
_userRepository?.Dispose();
|
_userRepository?.Dispose();
|
||||||
|
_displayPreferencesRepository.Dispose();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
_userRepository = null;
|
||||||
|
_displayPreferencesRepository = null;
|
||||||
|
|
||||||
_disposed = true;
|
_disposed = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -21,8 +21,8 @@ namespace Emby.Server.Implementations.Data
|
|||||||
{
|
{
|
||||||
private readonly IFileSystem _fileSystem;
|
private readonly IFileSystem _fileSystem;
|
||||||
|
|
||||||
public SqliteDisplayPreferencesRepository(ILoggerFactory loggerFactory, IJsonSerializer jsonSerializer, IApplicationPaths appPaths, IFileSystem fileSystem)
|
public SqliteDisplayPreferencesRepository(ILogger<SqliteDisplayPreferencesRepository> logger, IJsonSerializer jsonSerializer, IApplicationPaths appPaths, IFileSystem fileSystem)
|
||||||
: base(loggerFactory.CreateLogger(nameof(SqliteDisplayPreferencesRepository)))
|
: base(logger)
|
||||||
{
|
{
|
||||||
_jsonSerializer = jsonSerializer;
|
_jsonSerializer = jsonSerializer;
|
||||||
_fileSystem = fileSystem;
|
_fileSystem = fileSystem;
|
||||||
|
@ -18,10 +18,10 @@ namespace Emby.Server.Implementations.Data
|
|||||||
private readonly IJsonSerializer _jsonSerializer;
|
private readonly IJsonSerializer _jsonSerializer;
|
||||||
|
|
||||||
public SqliteUserRepository(
|
public SqliteUserRepository(
|
||||||
ILoggerFactory loggerFactory,
|
ILogger<SqliteUserRepository> logger,
|
||||||
IServerApplicationPaths appPaths,
|
IServerApplicationPaths appPaths,
|
||||||
IJsonSerializer jsonSerializer)
|
IJsonSerializer jsonSerializer)
|
||||||
: base(loggerFactory.CreateLogger(nameof(SqliteUserRepository)))
|
: base(logger)
|
||||||
{
|
{
|
||||||
_jsonSerializer = jsonSerializer;
|
_jsonSerializer = jsonSerializer;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user