DbConnector.cs 853 B

123456789101112131415161718192021222324252627282930313233
  1. using System;
  2. using System.Data;
  3. using System.Data.SQLite;
  4. using System.Threading.Tasks;
  5. using MediaBrowser.Model.Logging;
  6. using MediaBrowser.Server.Implementations.Persistence;
  7. namespace MediaBrowser.ServerApplication.Native
  8. {
  9. public class DbConnector : IDbConnector
  10. {
  11. private readonly ILogger _logger;
  12. public DbConnector(ILogger logger)
  13. {
  14. _logger = logger;
  15. }
  16. public async Task<IDbConnection> Connect(string dbPath, int? cacheSize = null)
  17. {
  18. try
  19. {
  20. return await SqliteExtensions.ConnectToDb(dbPath, cacheSize, _logger).ConfigureAwait(false);
  21. }
  22. catch (Exception ex)
  23. {
  24. _logger.ErrorException("Error opening database {0}", ex, dbPath);
  25. throw;
  26. }
  27. }
  28. }
  29. }