Exemplo n.º 1
0
 public function validate($value)
 {
     parent::validate($value);
     $pattern = self::PATTERN;
     $parts = explode(":", $value);
     if (count($parts) < 2 || $parts[0] !== self::DRIVERNAME || !preg_match("/{$pattern}/is", $parts[1])) {
         throw new ErrorException("Invalid DSN for inmemory database: '{$value}'");
     }
 }
Exemplo n.º 2
0
 public function __construct($dsn, $doInitDatabaseAdapters = true)
 {
     if (!$dsn instanceof Dsn) {
         $dsn = Dsn::factorizeDSN($dsn);
     }
     $this->dsn = $dsn;
     if ($doInitDatabaseAdapters) {
         $this->initDatabaseAdapters();
     }
 }
Exemplo n.º 3
0
 /**
  * Creates a PDO instance representing a connection to a database
  * @link http://www.php.net/manual/en/pdo.construct.php
  * @param dsn
  * @param username
  * @param passwd
  * @param options[optional]
  */
 public function __construct($dsn, $username = "", $passwd = "", $options = array(), Database $database = null)
 {
     if (!$dsn instanceof Dsn) {
         $dsn = Dsn::factorizeDSN($dsn);
     }
     if (is_null($database)) {
         $database = new Database($dsn);
     }
     $this->dsn = $dsn;
     $this->options = $options;
     $this->databaseResource = $database;
     $this->databaseResource->setCurrentDatabaseType($dsn->getDriverName());
 }