Skip migration checks for all sql backends besides mysql, postgres and sqlite

This commit is contained in:
Robin Appelman 2014-05-06 14:04:22 +02:00
parent a59f6818eb
commit 6f71419f2b
3 changed files with 30 additions and 10 deletions

View File

@ -8,7 +8,9 @@
namespace OC\DB;
use Doctrine\DBAL\Platforms\MySqlPlatform;
use Doctrine\DBAL\Platforms\OraclePlatform;
use Doctrine\DBAL\Platforms\PostgreSqlPlatform;
use Doctrine\DBAL\Platforms\SqlitePlatform;
class MDB2SchemaManager {
@ -62,8 +64,10 @@ class MDB2SchemaManager {
return new SQLiteMigrator($this->conn);
} else if ($platform instanceof OraclePlatform) {
return new OracleMigrator($this->conn);
} else {
} else if ($platform instanceof MySqlPlatform or $platform instanceof PostgreSqlPlatform) {
return new Migrator($this->conn);
} else {
return new NoCheckMigrator($this->conn);
}
}

View File

@ -0,0 +1,24 @@
<?php
/**
* Copyright (c) 2014 Robin Appelman <icewind@owncloud.com>
* This file is licensed under the Affero General Public License version 3 or
* later.
* See the COPYING-README file.
*/
namespace OC\DB;
use Doctrine\DBAL\Schema\Schema;
/**
* migrator for database platforms that don't support the upgrade check
*
* @package OC\DB
*/
class NoCheckMigrator extends Migrator {
/**
* @param \Doctrine\DBAL\Schema\Schema $targetSchema
* @throws \OC\DB\MigrationException
*/
public function checkMigrate(Schema $targetSchema) {}
}

View File

@ -10,15 +10,7 @@ namespace OC\DB;
use Doctrine\DBAL\Schema\Schema;
class OracleMigrator extends Migrator {
/**
* @param \Doctrine\DBAL\Schema\Schema $targetSchema
* @throws \OC\DB\MigrationException
*
* Migration testing is skipped for oracle
*/
public function checkMigrate(Schema $targetSchema) {}
class OracleMigrator extends NoCheckMigrator {
/**
* @param Schema $targetSchema
* @param \Doctrine\DBAL\Connection $connection