2
0
Fork 0
forked from flashii/eeprom
eeprom-nabucco/src/DatabaseContext.php

31 lines
886 B
PHP

<?php
namespace EEPROM;
use Index\Data\IDbConnection;
use Index\Data\Migration\IDbMigrationRepo;
use Index\Data\Migration\DbMigrationManager;
use Index\Data\Migration\FsDbMigrationRepo;
class DatabaseContext {
public function __construct(
private IDbConnection $connection
) {}
public function getConnection(): IDbConnection {
return $this->connection;
}
public function getQueryCount(): int {
$result = $this->connection->query('SHOW SESSION STATUS LIKE "Questions"');
return $result->next() ? $result->getInteger(1) : 0;
}
public function createMigrationManager(): DbMigrationManager {
return new DbMigrationManager($this->connection, 'prm_' . DbMigrationManager::DEFAULT_TABLE);
}
public function createMigrationRepo(): IDbMigrationRepo {
return new FsDbMigrationRepo(PRM_MIGRATIONS);
}
}