2012-01-15 08:47:13 +03:00
|
|
|
using System;
|
2013-02-04 07:18:59 +03:00
|
|
|
using System.Data.SqlServerCe;
|
2012-01-15 08:47:13 +03:00
|
|
|
using System.Linq;
|
|
|
|
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 04:27:34 +03:00
|
|
|
if (Database.ConnectionString.Contains(PathExtentions.NZBDRONE_SQLCE_DB_FILE))
|
2012-01-15 08:47:13 +03:00
|
|
|
{
|
|
|
|
MainDbUpgrade();
|
|
|
|
}
|
2013-02-04 04:27:34 +03:00
|
|
|
else if (Database.ConnectionString.Contains(PathExtentions.LOG_SQLCE_DB_FILE))
|
2012-01-15 08:47:13 +03:00
|
|
|
{
|
|
|
|
LogDbUpgrade();
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
LogDbUpgrade();
|
|
|
|
MainDbUpgrade();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2013-02-04 07:18:59 +03:00
|
|
|
protected EloqueraDb GetObjectDb()
|
|
|
|
{
|
|
|
|
|
|
|
|
var sqlCeConnection = new SqlCeConnection(Database.ConnectionString);
|
|
|
|
|
|
|
|
var eqPath = sqlCeConnection.Database.Replace(".sdf", ".eq");
|
|
|
|
return new EloqueraDbFactory(new EnvironmentProvider()).Create(eqPath);
|
|
|
|
}
|
2012-01-15 08:47:13 +03:00
|
|
|
|
|
|
|
public override void Down()
|
|
|
|
{
|
|
|
|
throw new NotImplementedException();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|