2012-01-15 05:47:13 +00:00
|
|
|
|
using System;
|
2013-02-16 23:29:21 +00:00
|
|
|
|
using System.Data.Common;
|
2013-02-16 19:23:31 +00:00
|
|
|
|
using System.Data.SqlClient;
|
2012-01-15 05:47:13 +00:00
|
|
|
|
using System.Linq;
|
2013-02-16 23:29:21 +00:00
|
|
|
|
using System.Reflection;
|
2012-01-15 05:47:13 +00:00
|
|
|
|
using Migrator.Framework;
|
|
|
|
|
using NzbDrone.Common;
|
|
|
|
|
|
|
|
|
|
namespace NzbDrone.Core.Datastore.Migrations
|
|
|
|
|
{
|
|
|
|
|
public abstract class NzbDroneMigration : Migration
|
|
|
|
|
{
|
|
|
|
|
protected virtual void MainDbUpgrade()
|
|
|
|
|
{
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
protected virtual void LogDbUpgrade()
|
|
|
|
|
{
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public override void Up()
|
|
|
|
|
{
|
2013-02-04 01:27:34 +00:00
|
|
|
|
if (Database.ConnectionString.Contains(PathExtentions.NZBDRONE_SQLCE_DB_FILE))
|
2012-01-15 05:47:13 +00:00
|
|
|
|
{
|
|
|
|
|
MainDbUpgrade();
|
|
|
|
|
}
|
2013-02-04 01:27:34 +00:00
|
|
|
|
else if (Database.ConnectionString.Contains(PathExtentions.LOG_SQLCE_DB_FILE))
|
2012-01-15 05:47:13 +00:00
|
|
|
|
{
|
|
|
|
|
LogDbUpgrade();
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
LogDbUpgrade();
|
|
|
|
|
MainDbUpgrade();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2013-02-04 04:18:59 +00:00
|
|
|
|
protected EloqueraDb GetObjectDb()
|
|
|
|
|
{
|
2013-02-16 23:29:21 +00:00
|
|
|
|
var sqlCeConnection = SqlCeProxy.EnsureDatabase(Database.ConnectionString);
|
|
|
|
|
|
2013-02-04 04:18:59 +00:00
|
|
|
|
var eqPath = sqlCeConnection.Database.Replace(".sdf", ".eq");
|
|
|
|
|
return new EloqueraDbFactory(new EnvironmentProvider()).Create(eqPath);
|
|
|
|
|
}
|
2012-01-15 05:47:13 +00:00
|
|
|
|
|
|
|
|
|
public override void Down()
|
|
|
|
|
{
|
|
|
|
|
throw new NotImplementedException();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|