From dbc465de973660ec0530967cd3ae54aeacab70ee Mon Sep 17 00:00:00 2001
From: Morris Jobke <hey@morrisjobke.de>
Date: Mon, 22 Dec 2014 10:44:30 +0100
Subject: [PATCH] use injected config object and fix typos

---
 core/command/db/converttype.php     |  2 +-
 lib/private/db/mdb2schemawriter.php | 14 ++++++++------
 lib/private/db/migrator.php         |  6 +++---
 lib/private/db/pgsqltools.php       | 14 +++++++++++++-
 4 files changed, 25 insertions(+), 11 deletions(-)

diff --git a/core/command/db/converttype.php b/core/command/db/converttype.php
index 92ca9e41ebe..b4d1f0e2a1a 100644
--- a/core/command/db/converttype.php
+++ b/core/command/db/converttype.php
@@ -266,7 +266,7 @@ class ConvertType extends Command {
 				$this->copyTable($fromDB, $toDB, $table, $input, $output);
 			}
 			if ($input->getArgument('type') === 'pgsql') {
-				$tools = new \OC\DB\PgSqlTools;
+				$tools = new \OC\DB\PgSqlTools($this->config);
 				$tools->resynchronizeDatabaseSequences($toDB);
 			}
 			// save new database config
diff --git a/lib/private/db/mdb2schemawriter.php b/lib/private/db/mdb2schemawriter.php
index 3c91f3c784a..aa6d578e9b5 100644
--- a/lib/private/db/mdb2schemawriter.php
+++ b/lib/private/db/mdb2schemawriter.php
@@ -10,19 +10,21 @@ class OC_DB_MDB2SchemaWriter {
 
 	/**
 	 * @param string $file
-	 * @param \Doctrine\DBAL\Schema\AbstractSchemaManager $sm
+	 * @param \OC\DB\Connection $conn
 	 * @return bool
 	 */
-	static public function saveSchemaToFile($file, $conn) {
+	static public function saveSchemaToFile($file, \OC\DB\Connection $conn) {
+		$config = \OC::$server->getConfig();
+
 		$xml = new SimpleXMLElement('<database/>');
-		$xml->addChild('name', OC_Config::getValue( "dbname", "owncloud" ));
+		$xml->addChild('name', $config->getSystemValue('dbname', 'owncloud'));
 		$xml->addChild('create', 'true');
 		$xml->addChild('overwrite', 'false');
 		$xml->addChild('charset', 'utf8');
-		
+
 		$conn->getConfiguration()->
-			setFilterSchemaAssetsExpression('/^'.\OCP\Config::getSystemValue('dbtableprefix'.'/'));
-		
+			setFilterSchemaAssetsExpression('/^' . $config->getSystemValue('dbtableprefix') . '/');
+
 		foreach ($conn->getSchemaManager()->listTables() as $table) {
 			self::saveTable($table, $xml->addChild('table'));
 		}
diff --git a/lib/private/db/migrator.php b/lib/private/db/migrator.php
index 3a178f387ed..aecbcf418d3 100644
--- a/lib/private/db/migrator.php
+++ b/lib/private/db/migrator.php
@@ -75,9 +75,9 @@ class Migrator {
 		 * @var \Doctrine\DBAL\Schema\Table[] $tables
 		 */
 		$tables = $targetSchema->getTables();
-		
+
 		$this->connection->getConfiguration()->
-			setFilterSchemaAssetsExpression('/^'.\OCP\Config::getSystemValue('dbtableprefix').'/');
+			setFilterSchemaAssetsExpression('/^' . $this->config->getSystemValue('dbtableprefix') . '/');
 		$existingTables = $this->connection->getSchemaManager()->listTableNames();
 
 		foreach ($tables as $table) {
@@ -162,7 +162,7 @@ class Migrator {
 
 	protected function getDiff(Schema $targetSchema, \Doctrine\DBAL\Connection $connection) {
 		$connection->getConfiguration()->
-			setFilterSchemaAssetsExpression('/^'.\OCP\Config::getSystemValue('dbtableprefix').'/');
+			setFilterSchemaAssetsExpression('/^' . $this->config->getSystemValue('dbtableprefix') . '/');
 		$sourceSchema = $connection->getSchemaManager()->createSchema();
 
 		// remove tables we don't know about
diff --git a/lib/private/db/pgsqltools.php b/lib/private/db/pgsqltools.php
index 6d17f8f40f8..3896009add4 100644
--- a/lib/private/db/pgsqltools.php
+++ b/lib/private/db/pgsqltools.php
@@ -8,11 +8,23 @@
  */
 
 namespace OC\DB;
+use OCP\IConfig;
 
 /**
 * Various PostgreSQL specific helper functions.
 */
 class PgSqlTools {
+
+	/** @var \OCP\IConfig */
+	private $config;
+
+	/**
+	 * @param \OCP\IConfig $config
+	 */
+	public function __construct(IConfig $config) {
+		$this->config = $config;
+	}
+
 	/**
 	* @brief Resynchronizes all sequences of a database after using INSERTs
 	*        without leaving out the auto-incremented column.
@@ -22,7 +34,7 @@ class PgSqlTools {
 	public function resynchronizeDatabaseSequences(Connection $conn) {
 		$databaseName = $conn->getDatabase();
 		$conn->getConfiguration()->
-			setFilterSchemaAssetsExpression('/^'.\OCP\Config::getSystemValue('dbtableprefix').'/');
+			setFilterSchemaAssetsExpression('/^' . $this->config->getSystemValue('dbtableprefix') . '/');
 
 		foreach ($conn->getSchemaManager()->listSequences() as $sequence) {
 			$sequenceName = $sequence->getName();
-- 
GitLab