public function register(Application $app)
 {
     $app['db.default'] = '';
     $app['db.container'] = $app->share(function ($app) {
         return new Container();
     });
     $app['db.factory'] = $app->share(function ($app) {
         return new ConnectionFactory($app['db.container']);
     });
     $app['db.resolver'] = $app->share(function ($app) {
         $resolver = new ConnectionResolver();
         $config = isset($app['app.config']['db']) ? $app['app.config']['db'] : array();
         if (isset($config['connections'])) {
             foreach ($config['connections'] as $name => $conn) {
                 $connection = $app['db.factory']->make($conn);
                 if (!$app['debug']) {
                     $connection->disableQueryLog();
                 }
                 $resolver->addConnection($name, $connection);
             }
         }
         if (isset($config['default'])) {
             $app['db.default'] = $config['default'];
         }
         $resolver->setDefaultConnection($app['db.default']);
         return $resolver;
     });
     $app['db'] = $app->share(function ($app) {
         return $app['db.resolver']->connection($app['db.default']);
     });
 }
Esempio n. 2
0
 public function getResolver()
 {
     $res = new ConnectionResolver();
     $res->addConnection('tests', self::$connection);
     $res->setDefaultConnection('tests');
     return $res;
 }
Esempio n. 3
0
 private function setConnectionResolver()
 {
     if ($this->checkTablesExists() && is_null(Model::getConnectionResolver())) {
         $res = new ConnectionResolver();
         DB::pretend(function ($db) use($res) {
             $res->addConnection(config('database.default'), $db);
             $res->setDefaultConnection(config('database.default'));
         });
         Model::setConnectionResolver($res);
     }
 }
 /**
  * @param array $dbConfig
  *
  * @return \Illuminate\Database\ConnectionResolver
  */
 protected function buildConnection(array $dbConfig)
 {
     $connFactory = new ConnectionFactory($this->container);
     $conn = $connFactory->make($dbConfig);
     $resolver = new ConnectionResolver();
     $resolver->addConnection('default', $conn);
     $resolver->setDefaultConnection('default');
     return $resolver;
 }