diff options
Diffstat (limited to 'MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs')
| -rw-r--r-- | MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs | 49 |
1 files changed, 46 insertions, 3 deletions
diff --git a/MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs b/MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs index fc2a6de24..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; @@ -56,6 +57,8 @@ namespace MediaBrowser.Server.Implementations.Persistence private readonly string _criticReviewsPath; private SqliteChapterRepository _chapterRepository; + private SqliteMediaStreamsRepository _mediaStreamsRepository; + private SqliteProviderInfoRepository _providerInfoRepository; private IDbCommand _deleteChildrenCommand; private IDbCommand _saveChildrenCommand; @@ -90,10 +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> @@ -121,7 +130,9 @@ namespace MediaBrowser.Server.Implementations.Persistence _connection.RunQueries(queries, _logger); PrepareStatements(); - + + _mediaStreamsRepository.Initialize(); + _providerInfoRepository.Initialize(); _chapterRepository.Initialize(); } @@ -413,6 +424,18 @@ namespace MediaBrowser.Server.Implementations.Persistence _chapterRepository.Dispose(); _chapterRepository = null; } + + if (_mediaStreamsRepository != null) + { + _mediaStreamsRepository.Dispose(); + _mediaStreamsRepository = null; + } + + if (_providerInfoRepository != null) + { + _providerInfoRepository.Dispose(); + _providerInfoRepository = null; + } } } @@ -511,5 +534,25 @@ namespace MediaBrowser.Server.Implementations.Persistence _writeLock.Release(); } } + + public IEnumerable<MediaStream> GetMediaStreams(MediaStreamQuery query) + { + return _mediaStreamsRepository.GetMediaStreams(query); + } + + public Task SaveMediaStreams(Guid id, IEnumerable<MediaStream> streams, CancellationToken cancellationToken) + { + 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 |
