. */ namespace SP\Infrastructure\Common\Repositories; use SP\Core\Context\ContextInterface; use SP\Infrastructure\Database\DatabaseInterface; /** * Class Repository * * @package SP\Infrastructure\Common\Repositories */ abstract class Repository { protected ContextInterface $context; protected DatabaseInterface $db; final public function __construct(DatabaseInterface $database, ContextInterface $session) { $this->db = $database; $this->context = $session; if (method_exists($this, 'initialize')) { $this->initialize(); } } }