jellyfin/MediaBrowser.ServerApplication/Native/DbConnector.cs
2016-06-01 01:50:00 -04:00

38 lines
988 B
C#

using System;
using System.Data;
using System.Data.SQLite;
using System.Threading.Tasks;
using MediaBrowser.Model.Logging;
using MediaBrowser.Server.Implementations.Persistence;
namespace MediaBrowser.ServerApplication.Native
{
public class DbConnector : IDbConnector
{
private readonly ILogger _logger;
public DbConnector(ILogger logger)
{
_logger = logger;
}
public void BindSimilarityScoreFunction(IDbConnection connection)
{
SqliteExtensions.BindGetSimilarityScore(connection, _logger);
}
public async Task<IDbConnection> Connect(string dbPath)
{
try
{
return await SqliteExtensions.ConnectToDb(dbPath, _logger).ConfigureAwait(false);
}
catch (Exception ex)
{
_logger.ErrorException("Error opening database {0}", ex, dbPath);
throw;
}
}
}
}