introduced Storage interface

This commit is contained in:
Dominik Liebler
2018-06-14 17:17:58 +02:00
parent fb42e71a99
commit 477a6d623a
3 changed files with 15 additions and 3 deletions

View File

@@ -2,7 +2,7 @@
namespace DesignPatterns\More\Repository; namespace DesignPatterns\More\Repository;
class MemoryStorage class MemoryStorage implements Storage
{ {
/** /**
* @var array * @var array

View File

@@ -14,11 +14,11 @@ namespace DesignPatterns\More\Repository;
class PostRepository class PostRepository
{ {
/** /**
* @var MemoryStorage * @var Storage
*/ */
private $persistence; private $persistence;
public function __construct(MemoryStorage $persistence) public function __construct(Storage $persistence)
{ {
$this->persistence = $persistence; $this->persistence = $persistence;
} }

View File

@@ -0,0 +1,12 @@
<?php
namespace DesignPatterns\More\Repository;
interface Storage
{
public function persist(array $data): int;
public function retrieve(int $id): array;
public function delete(int $id);
}