2023-04-15 23:29:27 +08:00
|
|
|
<?php
|
|
|
|
|
declare(strict_types=1);
|
|
|
|
|
|
2023-04-15 23:31:16 +08:00
|
|
|
namespace Kiri\Router\Base;
|
2023-04-15 23:29:27 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
use Kiri;
|
2023-04-19 12:35:39 +08:00
|
|
|
use Kiri\Router\Response;
|
|
|
|
|
use Kiri\Router\Request;
|
2023-04-16 02:01:26 +08:00
|
|
|
use Psr\Container\ContainerInterface;
|
2023-04-15 23:29:27 +08:00
|
|
|
use Psr\Log\LoggerInterface;
|
2023-04-15 23:40:05 +08:00
|
|
|
use Psr\Http\Message\RequestInterface;
|
|
|
|
|
use Psr\Http\Message\ResponseInterface;
|
2023-05-26 10:16:21 +08:00
|
|
|
use Kiri\Di\Inject\Container;
|
2023-04-15 23:29:27 +08:00
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Class WebController
|
|
|
|
|
* @package Kiri\Web
|
|
|
|
|
*/
|
|
|
|
|
abstract class Controller
|
|
|
|
|
{
|
|
|
|
|
|
2023-04-16 16:09:14 +08:00
|
|
|
|
2023-11-17 09:28:00 +08:00
|
|
|
/**
|
|
|
|
|
* @var Request
|
|
|
|
|
*/
|
|
|
|
|
#[Container(RequestInterface::class)]
|
|
|
|
|
public RequestInterface $request;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @var Response
|
|
|
|
|
*/
|
|
|
|
|
#[Container(ResponseInterface::class)]
|
|
|
|
|
public ResponseInterface $response;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @var ContainerInterface
|
|
|
|
|
*/
|
|
|
|
|
#[Container(ContainerInterface::class)]
|
|
|
|
|
public ContainerInterface $container;
|
2023-04-15 23:29:27 +08:00
|
|
|
|
2023-04-16 16:09:14 +08:00
|
|
|
|
2023-11-17 09:28:00 +08:00
|
|
|
/**
|
2023-11-22 09:30:07 +08:00
|
|
|
* @var Kiri\Error\StdoutLogger
|
2023-11-17 09:28:00 +08:00
|
|
|
*/
|
2023-11-17 09:29:29 +08:00
|
|
|
#[Container(LoggerInterface::class)]
|
2023-11-22 09:30:07 +08:00
|
|
|
public Kiri\Error\StdoutLogger $logger;
|
2023-11-17 09:28:00 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @param Request $request
|
|
|
|
|
* @return true
|
|
|
|
|
*/
|
|
|
|
|
public function beforeAction(RequestInterface $request): bool
|
|
|
|
|
{
|
|
|
|
|
return true;
|
|
|
|
|
}
|
2023-04-15 23:40:05 +08:00
|
|
|
|
2023-04-15 23:29:27 +08:00
|
|
|
}
|