diff --git a/kiri-websocket-server/Sender.php b/kiri-websocket-server/Sender.php index c8c768a7..69b52325 100644 --- a/kiri-websocket-server/Sender.php +++ b/kiri-websocket-server/Sender.php @@ -28,6 +28,16 @@ class Sender implements WebSocketInterface } + + /** + * @param AliasServer|Server $server + */ + public function setServer(mixed $server): void + { + $this->server = $server; + } + + /** * @param int $fd * @param mixed $data diff --git a/kiri-websocket-server/Server.php b/kiri-websocket-server/Server.php index ff39b5ec..ec64110b 100644 --- a/kiri-websocket-server/Server.php +++ b/kiri-websocket-server/Server.php @@ -3,15 +3,15 @@ namespace Kiri\Websocket; use Exception; -use Kiri\Message\Handler\DataGrip; use Kiri\Abstracts\AbstractServer; +use Kiri\Message\Handler\DataGrip; use Kiri\Message\Handler\RouterCollector; -use Psr\Container\ContainerExceptionInterface; -use Psr\Container\NotFoundExceptionInterface; use Kiri\Server\Contract\OnCloseInterface; use Kiri\Server\Contract\OnHandshakeInterface; use Kiri\Server\Contract\OnMessageInterface; use Kiri\Server\Contract\OnOpenInterface; +use Psr\Container\ContainerExceptionInterface; +use Psr\Container\NotFoundExceptionInterface; use Swoole\Http\Request; use Swoole\Http\Response; use Swoole\WebSocket\Frame; @@ -32,6 +32,9 @@ class Server extends AbstractServer public mixed $callback = null; + public Sender $sender; + + /** * @throws ContainerExceptionInterface * @throws NotFoundExceptionInterface @@ -44,6 +47,9 @@ class Server extends AbstractServer return; } $this->callback = $handler->callback[0]; + + $this->sender = $this->container->get(Sender::class); + $this->sender->setServer($this->server); }