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-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;
|
|
|
|
|
use Kiri\Di\Inject\Service;
|
|
|
|
|
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
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @var Kiri\Router\Request
|
|
|
|
|
*/
|
2023-04-15 23:40:05 +08:00
|
|
|
#[Service('request')]
|
2023-04-16 02:51:27 +08:00
|
|
|
public RequestInterface $request;
|
2023-04-15 23:29:27 +08:00
|
|
|
|
2023-04-16 16:09:14 +08:00
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @var Kiri\Router\Response
|
|
|
|
|
*/
|
2023-04-15 23:40:05 +08:00
|
|
|
#[Service('response')]
|
2023-04-16 02:51:27 +08:00
|
|
|
public ResponseInterface $response;
|
2023-04-15 23:29:27 +08:00
|
|
|
|
|
|
|
|
|
2023-04-16 16:09:14 +08:00
|
|
|
/**
|
|
|
|
|
* @var LoggerInterface
|
|
|
|
|
*/
|
2023-04-15 23:40:05 +08:00
|
|
|
#[Container(LoggerInterface::class)]
|
2023-04-16 02:51:27 +08:00
|
|
|
public LoggerInterface $logger;
|
2023-04-15 23:40:05 +08:00
|
|
|
|
|
|
|
|
|
2023-04-16 16:09:14 +08:00
|
|
|
/**
|
|
|
|
|
* @var ContainerInterface
|
|
|
|
|
*/
|
2023-04-15 23:40:05 +08:00
|
|
|
#[Container(ContainerInterface::class)]
|
2023-04-16 02:51:27 +08:00
|
|
|
public ContainerInterface $container;
|
2023-04-15 23:29:27 +08:00
|
|
|
}
|