aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs')
-rw-r--r--MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs29
1 files changed, 24 insertions, 5 deletions
diff --git a/MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs b/MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs
index 799b74fe2..893d6ea62 100644
--- a/MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs
+++ b/MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs
@@ -1,6 +1,7 @@
using MediaBrowser.Common.Configuration;
using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Persistence;
+using MediaBrowser.Controller.Providers;
using MediaBrowser.Model.Entities;
using MediaBrowser.Model.Logging;
using MediaBrowser.Model.Serialization;
@@ -57,6 +58,7 @@ namespace MediaBrowser.Server.Implementations.Persistence
private SqliteChapterRepository _chapterRepository;
private SqliteMediaStreamsRepository _mediaStreamsRepository;
+ private SqliteProviderInfoRepository _providerInfoRepository;
private IDbCommand _deleteChildrenCommand;
private IDbCommand _saveChildrenCommand;
@@ -91,16 +93,16 @@ namespace MediaBrowser.Server.Implementations.Persistence
_logger = logManager.GetLogger(GetType().Name);
var chapterDbFile = Path.Combine(_appPaths.DataPath, "chapters.db");
-
var chapterConnection = SqliteExtensions.ConnectToDb(chapterDbFile, _logger).Result;
-
_chapterRepository = new SqliteChapterRepository(chapterConnection, logManager);
var mediaStreamsDbFile = Path.Combine(_appPaths.DataPath, "mediainfo.db");
-
var mediaStreamsConnection = SqliteExtensions.ConnectToDb(mediaStreamsDbFile, _logger).Result;
-
_mediaStreamsRepository = new SqliteMediaStreamsRepository(mediaStreamsConnection, logManager);
+
+ var providerInfosDbFile = Path.Combine(_appPaths.DataPath, "providerinfo.db");
+ var providerInfoConnection = SqliteExtensions.ConnectToDb(providerInfosDbFile, _logger).Result;
+ _providerInfoRepository = new SqliteProviderInfoRepository(providerInfoConnection, logManager);
}
/// <summary>
@@ -128,8 +130,9 @@ namespace MediaBrowser.Server.Implementations.Persistence
_connection.RunQueries(queries, _logger);
PrepareStatements();
-
+
_mediaStreamsRepository.Initialize();
+ _providerInfoRepository.Initialize();
_chapterRepository.Initialize();
}
@@ -427,6 +430,12 @@ namespace MediaBrowser.Server.Implementations.Persistence
_mediaStreamsRepository.Dispose();
_mediaStreamsRepository = null;
}
+
+ if (_providerInfoRepository != null)
+ {
+ _providerInfoRepository.Dispose();
+ _providerInfoRepository = null;
+ }
}
}
@@ -535,5 +544,15 @@ namespace MediaBrowser.Server.Implementations.Persistence
{
return _mediaStreamsRepository.SaveMediaStreams(id, streams, cancellationToken);
}
+
+ public IEnumerable<BaseProviderInfo> GetProviderHistory(Guid itemId)
+ {
+ return _providerInfoRepository.GetBaseProviderInfos(itemId);
+ }
+
+ public Task SaveProviderHistory(Guid id, IEnumerable<BaseProviderInfo> history, CancellationToken cancellationToken)
+ {
+ return _providerInfoRepository.SaveProviderInfos(id, history, cancellationToken);
+ }
}
} \ No newline at end of file