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']); }); }
public function getResolver() { $res = new ConnectionResolver(); $res->addConnection('tests', self::$connection); $res->setDefaultConnection('tests'); return $res; }
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; }