Files
kiri-core/http-server/Handler/OnServer.php
T

59 lines
1.0 KiB
PHP
Raw Normal View History

2021-07-18 12:06:56 +08:00
<?php
2021-10-25 18:20:29 +08:00
namespace Server\Handler;
2021-07-18 12:06:56 +08:00
2021-08-03 18:18:09 +08:00
use Annotation\Inject;
2021-10-19 15:07:02 +08:00
use Kiri\Events\EventDispatch;
use Kiri\Exception\ConfigException;
2021-07-19 19:04:13 +08:00
use Server\Abstracts\Server;
2021-10-19 15:07:02 +08:00
use Server\Events\OnBeforeShutdown;
2021-08-12 14:08:40 +08:00
use Server\Events\OnShutdown;
use Server\Events\OnStart;
2021-07-19 19:04:13 +08:00
/**
2021-08-05 16:15:42 +08:00
* Class OnServerDefault
2021-07-19 19:04:13 +08:00
* @package Server\Manager
*/
2021-08-12 14:35:28 +08:00
class OnServer extends Server
2021-07-18 12:06:56 +08:00
{
2021-08-12 14:08:40 +08:00
/**
* @var EventDispatch
*/
#[Inject(EventDispatch::class)]
public EventDispatch $eventDispatch;
2021-07-18 12:06:56 +08:00
2021-08-12 14:08:40 +08:00
/**
2021-10-19 15:07:02 +08:00
* @param \Swoole\Server $server
* @throws ConfigException
*/
2021-07-19 19:04:13 +08:00
public function onStart(\Swoole\Server $server)
2021-07-18 12:06:56 +08:00
{
2021-10-19 15:07:02 +08:00
$this->setProcessName(sprintf('start[%d].server', $server->master_pid));
$this->eventDispatch->dispatch(new OnStart($server));
}
2021-07-26 02:55:55 +08:00
2021-10-19 15:07:02 +08:00
/**
* @param \Swoole\Server $server
*/
public function onBeforeShutdown(\Swoole\Server $server)
{
$this->eventDispatch->dispatch(new OnBeforeShutdown($server));
2021-07-18 12:06:56 +08:00
}
2021-07-19 19:04:13 +08:00
/**
* @param \Swoole\Server $server
*/
public function onShutdown(\Swoole\Server $server)
2021-07-18 12:06:56 +08:00
{
2021-08-12 14:08:40 +08:00
$this->eventDispatch->dispatch(new OnShutdown($server));
2021-07-18 12:06:56 +08:00
}
}