/** * Devuelve una objeto del tipo de base de datos correcto de acuerdo a los par�metros de configuraci�n * de la conexi�n especificada. Si el nombre es vac�o se devuelve la conexi�n por defecto. * * @access public * @static * @param $name (string) nombre de la conexi�n a la base de datos * @return (object) objeto con la referencia a la a base de datos especificada */ static function getConnection($name = '') { static $connections = array(); if (empty($connections[$name])) { $params = ConnectionManager::getParams($name); // Buscar la implementaci�n seg�n el tipo de motor if ($params['driver'] == 'postgres') { $db = new DbPg(); } else { if ($params['driver'] == 'mysql') { $db = new DbMySql(); } else { if ($params['driver'] == 'odbc') { $db = new DbODBC(); } } } if ($params) { $db->conectar($params['hostname'], $params['username'], $params['password'], $params['base']); $connections[$name] = $db; } } return $connections[$name]; }