1
0
Fork 0
mirror of https://github.com/archtechx/tenancy.git synced 2026-02-05 18:34:04 +00:00

Store string instead of Connection instance

This commit is contained in:
Samuel Štancl 2020-03-05 18:08:16 +01:00 committed by GitHub
parent 68b74642c8
commit 9a13cac9d2
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -12,36 +12,36 @@ use Stancl\Tenancy\Contracts\TenantDatabaseManager;
class PostgreSQLSchemaManager implements TenantDatabaseManager, CanSetConnection
{
/** @var Connection */
protected $database;
/** @var string */
protected $connection;
public function __construct(Repository $config, DatabaseManager $databaseManager)
public function __construct(Repository $config)
{
$this->connection = $config['tenancy.database_manager_connections.pgsql'];
$this->database = $databaseManager->connection($this->connection);
$this->connection = $config->get('tenancy.database_manager_connections.mysql');
}
public function createDatabase(string $name): bool
protected function database(): Connection
{
return $this->database->statement("CREATE SCHEMA \"$name\"");
}
public function deleteDatabase(string $name): bool
{
return $this->database->statement("DROP SCHEMA \"$name\"");
}
public function databaseExists(string $name): bool
{
return (bool) $this->database->select("SELECT schema_name FROM information_schema.schemata WHERE schema_name = '$name'");
return DB::connection($this->connection);
}
public function setConnection(string $connection): void
{
$this->connection = $connection;
}
public function createDatabase(string $name): bool
{
return $this->database()->statement("CREATE SCHEMA \"$name\"");
}
public function deleteDatabase(string $name): bool
{
return $this->database()->statement("DROP SCHEMA \"$name\"");
}
public function databaseExists(string $name): bool
{
return (bool) $this->database()->select("SELECT schema_name FROM information_schema.schemata WHERE schema_name = '$name'");
}
}