Files
kiri-http-server/Handler/OnPipeMessage.php
T

38 lines
738 B
PHP
Raw Normal View History

2022-01-09 03:49:02 +08:00
<?php
2022-01-10 11:39:55 +08:00
namespace Kiri\Server\Handler;
2022-01-09 03:49:02 +08:00
2022-01-12 11:29:50 +08:00
use Exception;
2022-01-09 03:49:02 +08:00
use Kiri\Annotation\Inject;
2022-01-12 11:29:50 +08:00
use Kiri\Events\EventDispatch;
2022-01-10 11:39:55 +08:00
use Kiri\Server\Abstracts\Server;
use Kiri\Server\Contract\OnPipeMessageInterface;
2022-01-09 03:49:02 +08:00
/**
*
*/
class OnPipeMessage extends Server
{
/**
* @param \Swoole\Server $server
* @param int $src_worker_id
* @param mixed $message
* @throws Exception
*/
public function onPipeMessage(\Swoole\Server $server, int $src_worker_id, mixed $message)
{
2022-01-12 11:29:50 +08:00
if (is_string($message)) {
$message = unserialize($message);
}
2022-01-09 03:49:02 +08:00
if (!is_object($message) || !($message instanceof OnPipeMessageInterface)) {
return;
}
call_user_func([$message, 'process'], $server, $src_worker_id);
}
}