/**
  * @param array $params
  * @return \Doctrine\DBAL\Connection
  * @throws \Doctrine\DBAL\DBALException
  */
 public static function connection(array $params = [])
 {
     if (!empty($params)) {
         return DriverManager::getConnection($params);
     }
     $params = static::$defaultConnectionParams;
     $params['path'] = __DIR__ . $params['path'];
     if (is_null(static::$defaultConnection)) {
         static::$defaultConnection = DriverManager::getConnection($params);
     }
     return static::$defaultConnection;
 }
 public static function getConnection($connection = null)
 {
     $updateDefault = false;
     if (!$connection) {
         $connection = static::$defaultConnection;
         $updateDefault = true;
     }
     if (is_string($connection)) {
         if (is_a($connection, SqlConnectionInterface::class, true)) {
             $connection = $connection::getDefaultInstance();
         } elseif (is_a($connection, ConnectionSingletonInterface::class, true)) {
             $connection = $connection::getConnection();
         }
         if ($updateDefault) {
             static::$defaultConnection = $connection;
         }
     }
     return $connection;
 }
Esempio n. 3
0
 /**
  * @param \PDO $pdo
  * @return boolean
  */
 public static function setDefaultConnection(\PDO $pdo)
 {
     static::$defaultConnection = $pdo;
     return true;
 }
Esempio n. 4
0
 /**
  * Reset connection registry
  *
  * @return void
  */
 public static function reset()
 {
     static::$defaultConnection = null;
 }