Various updates
This commit is contained in:
28
api/common/Define/Repository.php
Normal file
28
api/common/Define/Repository.php
Normal file
@ -0,0 +1,28 @@
|
||||
<?php
|
||||
namespace ProVM\Common\Define;
|
||||
|
||||
use PDO;
|
||||
use Psr\Log\LoggerInterface;
|
||||
|
||||
interface Repository
|
||||
{
|
||||
public function getConnection(): PDO;
|
||||
public function getTable(): string;
|
||||
public function getLogger(): LoggerInterface;
|
||||
|
||||
public function setConnection(PDO $pdo): Repository;
|
||||
public function setTable(string $table): Repository;
|
||||
public function setLogger(LoggerInterface $logger): Repository;
|
||||
|
||||
public function isInstalled(): bool;
|
||||
public function install();
|
||||
public function resetIndex(): void;
|
||||
|
||||
public function create(array $data): Model;
|
||||
public function save(Model &$model): void;
|
||||
public function fetchAll(): array;
|
||||
public function fetchById(int $id): Model;
|
||||
public function update(Model $model, Model $old): void;
|
||||
public function optimize(): void;
|
||||
public function delete(Model $model): void;
|
||||
}
|
Reference in New Issue
Block a user