diff options
author | Bart Visscher <bartv@thisnet.nl> | 2013-08-02 16:02:33 +0200 |
---|---|---|
committer | Bart Visscher <bartv@thisnet.nl> | 2013-08-02 16:02:33 +0200 |
commit | 5ffb8fac24801800048c4c2e68c0f8fb6582769c (patch) | |
tree | 92d27cad645617dcf925d70e1d7fd4a693c5e82e /lib/db.php | |
parent | 258e54182a9d68191a721ddc904e3e0299438b70 (diff) | |
download | nextcloud-server-5ffb8fac24801800048c4c2e68c0f8fb6582769c.tar.gz nextcloud-server-5ffb8fac24801800048c4c2e68c0f8fb6582769c.zip |
Use function to create schema manager
Diffstat (limited to 'lib/db.php')
-rw-r--r-- | lib/db.php | 55 |
1 files changed, 35 insertions, 20 deletions
diff --git a/lib/db.php b/lib/db.php index b92f7820f31..a14fab0c774 100644 --- a/lib/db.php +++ b/lib/db.php @@ -195,6 +195,27 @@ class OC_DB { } /** + * get the database connection object + * + * @return \Doctrine\DBAL\Connection + */ + private static function getConnection() + { + self::connect(); + return self::$connection; + } + + /** + * get MDB2 schema manager + * + * @return \OC\DB\MDB2SchemaManager + */ + private static function getMDB2SchemaManager() + { + return new \OC\DB\MDB2SchemaManager(self::getConnection()); + } + + /** * @brief Prepare a SQL query * @param string $query Query string * @param int $limit @@ -388,7 +409,7 @@ class OC_DB { } /** else { - * @brief saves database scheme to xml file + * @brief saves database schema to xml file * @param string $file name of file * @param int $mode * @return bool @@ -396,9 +417,8 @@ class OC_DB { * TODO: write more documentation */ public static function getDbStructure( $file, $mode=MDB2_SCHEMA_DUMP_STRUCTURE) { - self::connectDoctrine(); - $schema = new \OC\DB\MDB2SchemaManager(self::$connection); - return $schema->getDbStructure($file); + $schemaManager = self::getMDB2SchemaManager(); + return $schemaManager->getDbStructure($file); } /** @@ -409,23 +429,21 @@ class OC_DB { * TODO: write more documentation */ public static function createDbFromStructure( $file ) { - self::connectDoctrine(); - $schema = new \OC\DB\MDB2SchemaManager(self::$connection); - $result = $schema->createDbFromStructure($file); + $schemaManager = self::getMDB2SchemaManager(); + $result = $schemaManager->createDbFromStructure($file); return $result; } /** - * @brief update the database scheme + * @brief update the database schema * @param string $file file to read structure from * @throws Exception * @return bool */ public static function updateDbFromStructure($file) { - self::connectDoctrine(); - $schema = new \OC\DB\MDB2SchemaManager(self::$connection); + $schemaManager = self::getMDB2SchemaManager(); try { - $result = $schema->updateDbFromStructure($file); + $result = $schemaManager->updateDbFromStructure($file); } catch (Exception $e) { OC_Log::write('core', 'Failed to update database structure ('.$e.')', OC_Log::FATAL); throw $e; @@ -604,9 +622,8 @@ class OC_DB { * @param string $tableName the table to drop */ public static function dropTable($tableName) { - self::connectDoctrine(); - $schema = new \OC\DB\MDB2SchemaManager(self::$connection); - $schema->dropTable($tableName); + $schemaManager = self::getMDB2SchemaManager(); + $schemaManager->dropTable($tableName); } /** @@ -614,9 +631,8 @@ class OC_DB { * @param string $file the xml file describing the tables */ public static function removeDBStructure($file) { - self::connectDoctrine(); - $schema = new \OC\DB\MDB2SchemaManager(self::$connection); - $schema->removeDBStructure($file); + $schemaManager = self::getMDB2SchemaManager(); + $schemaManager->removeDBStructure($file); } /** @@ -624,9 +640,8 @@ class OC_DB { * @param $file string path to the MDB2 xml db export file */ public static function replaceDB( $file ) { - self::connectDoctrine(); - $schema = new \OC\DB\MDB2SchemaManager(self::$connection); - $schema->replaceDB($file); + $schemaManager = self::getMDB2SchemaManager(); + $schemaManager->replaceDB($file); } /** |