diff --git a/core/includes/bootstrap.inc b/core/includes/bootstrap.inc index 51a1beb..b381c47 100644 --- a/core/includes/bootstrap.inc +++ b/core/includes/bootstrap.inc @@ -2411,7 +2411,7 @@ function _drupal_bootstrap_database() { // won't be initialized until it is actually requested. $settings = settings()->get('databases'); require_once DRUPAL_ROOT . '/core/includes/database.inc'; - Database::setDatabaseSettings($settings); + Database::parseConnectionInfo($settings); } /** diff --git a/core/lib/Drupal/Core/Database/Database.php b/core/lib/Drupal/Core/Database/Database.php index ea9c04f..0c4b598 100644 --- a/core/lib/Drupal/Core/Database/Database.php +++ b/core/lib/Drupal/Core/Database/Database.php @@ -40,14 +40,6 @@ const RETURN_INSERT_ID = 3; /** - * Contains the externel settings for the database connection defined in - * the settings.php. - * - * @var array - */ - static protected $databaseSettings = array(); - - /** * An nested array of all active connections. It is keyed by database name * and target. * @@ -203,7 +195,7 @@ */ final public static function setActiveConnection($key = 'default') { if (empty(self::$databaseInfo)) { - self::parseConnectionInfo(self::$databaseSettings); + throw new ConnectionNotParsedException("Database information haven't been parsed yet"); } if (!empty(self::$databaseInfo[$key])) { @@ -215,15 +207,11 @@ /** * Process the configuration file for database information. + * + * @param array + * The external settings for the database connection. */ final public static function parseConnectionInfo($databases = array()) { - if (!empty($databases)) { - self::setDatabaseSettings($databases); - } - else { - $databases = self::$databaseSettings; - } - $database_info = is_array($databases) ? $databases : array(); foreach ($database_info as $index => $info) { foreach ($database_info[$index] as $target => $value) { @@ -300,7 +288,7 @@ public static function addConnectionInfo($key, $target, $info) { */ final public static function getConnectionInfo($key = 'default') { if (empty(self::$databaseInfo)) { - self::parseConnectionInfo(); + throw new ConnectionNotParsedException("Database information haven't been parsed yet"); } if (!empty(self::$databaseInfo[$key])) { @@ -320,7 +308,7 @@ public static function addConnectionInfo($key, $target, $info) { */ final public static function renameConnection($old_key, $new_key) { if (empty(self::$databaseInfo)) { - self::parseConnectionInfo(); + throw new ConnectionNotParsedException("Database information haven't been parsed yet"); } if (!empty(self::$databaseInfo[$old_key]) && empty(self::$databaseInfo[$new_key])) { @@ -374,7 +362,7 @@ public static function addConnectionInfo($key, $target, $info) { */ final protected static function openConnection($key, $target) { if (empty(self::$databaseInfo)) { - self::parseConnectionInfo(); + throw new ConnectionNotParsedException("Database information haven't been parsed yet"); } // If the requested database does not exist then it is an unrecoverable @@ -459,12 +447,4 @@ public static function ignoreTarget($key, $target) { self::$ignoreTargets[$key][$target] = TRUE; } - /** - * Injects the database settings comming from the settings.php. - * - * @param array $settings - */ - public static function setDatabaseSettings(array $settings) { - self::$databaseSettings = $settings; - } }