Permalink
Browse files

MINOR Changed the way DatabaseAdapterRegistry accepts databases (from…

… r100898)

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@111536 467b73ca-7a2a-4603-9d3b-597d59a354a9
  • Loading branch information...
1 parent a9ab632 commit 1c6e0c3102271013359781c79ffb4108b85e21d5 @sminnee sminnee committed Oct 4, 2010
Showing with 21 additions and 22 deletions.
  1. +21 −22 dev/install/DatabaseAdapterRegistry.php
@@ -9,41 +9,40 @@
* @author Tom Rix
*/
class DatabaseAdapterRegistry {
+
/**
* Internal array of registered database adapters
*/
private static $adapters = array();
/**
* Add new adapter to the registry
- *
- * @param string $class classname of the adapter
- * @param string $title friendly name for the adapter
- * @param string $helperPath path to the DatabaseConfigurationHelper for the adapter
- * @param boolean $supported whether or not php has the required functions
+ * @param array $config Associative array of configuration details
*/
- static function register($class, $title, $helperPath, $supported, $missingModuleText = null, $missingExtensionText = null) {
- self::$adapters[$class] = array(
- 'title' => $title,
- 'helperPath' => $helperPath,
- 'supported' => $supported
- );
- if (!$missingExtensionText) $missingExtensionText = 'The PHP extension is missing, please enable or install it.';
- if (!$missingModuleText) {
- $moduleName = array_shift(explode('/', $helperPath));
- $missingModuleText = 'The SilverStripe module, '.$moduleName.', is missing or incomplete. Please <a href="http://silverstripe.org/modules">download it</a>.';
- }
- self::$adapters[$class]['missingModuleText'] = $missingModuleText;
- self::$adapters[$class]['missingExtensionText'] = $missingExtensionText;
+ static function register($config) {
+ $missingExtensionText = isset($config['missingExtensionText'])
+ ? $config['missingExtensionText']
+ : 'The PHP extension is missing, please enable or install it.';
+
+ $moduleName = array_shift(explode('/', $config['helperPath']));
+ $missingModuleText = isset($config['missingModuleText'])
+ ? $config['missingModuleText']
+ : 'The SilverStripe module, '.$moduleName.', is missing or incomplete. Please <a href="http://silverstripe.org/modules">download it</a>.';
+
+ $config['missingModuleText'] = $missingModuleText;
+ $config['missingExtensionText'] = $missingExtensionText;
+
+ self::$adapters[$config['class']] = $config;
}
static function autodiscover() {
- foreach(glob(dirname(__FILE__).'/../../../*', GLOB_ONLYDIR) as $directory) {
- if (file_exists($directory.'/_register_database.php')) include_once($directory.'/_register_database.php');
+ foreach(glob(dirname(__FILE__) . '/../../../*', GLOB_ONLYDIR) as $directory) {
+ if(file_exists($directory . '/_register_database.php')) include_once($directory . '/_register_database.php');
}
}
- static function adapters() {
+ static function get_adapters() {
return self::$adapters;
}
-}
+
+}

0 comments on commit 1c6e0c3

Please sign in to comment.