From 27a03777c3ffbfa87d3f8fea711e87a6d6db6115 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mr=C2=B7x?= Date: Wed, 28 Jul 2021 11:46:26 +0800 Subject: [PATCH] =?UTF-8?q?=E6=94=B9=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Server/TCPServerListener.php | 14 ++++++-------- Server/UDPServerListener.php | 3 +-- Server/WebSocketServerListener.php | 9 ++++----- 3 files changed, 11 insertions(+), 15 deletions(-) diff --git a/Server/TCPServerListener.php b/Server/TCPServerListener.php index 3262e42b..f3d25150 100644 --- a/Server/TCPServerListener.php +++ b/Server/TCPServerListener.php @@ -43,6 +43,11 @@ class TCPServerListener extends Abstracts\Server /** @var static $reflect */ $reflect = Snowflake::getDi()->getReflect(static::class)?->newInstance(); + $reflect->setEvents(Constant::DISCONNECT, $settings['events'][Constant::DISCONNECT] ?? null); + $reflect->setEvents(Constant::CLOSE, $settings['events'][Constant::CLOSE] ?? null); + $reflect->setEvents(Constant::RECEIVE, $settings['events'][Constant::RECEIVE] ?? null); + $reflect->setEvents(Constant::CONNECT, $settings['events'][Constant::CONNECT] ?? null); + static::$_tcp = $server->addlistener($host, $port, $mode); if (!(static::$_tcp instanceof Port)) { trigger_error('Port is ' . $host . '::' . $port . ' must is tcp listener type.'); @@ -51,14 +56,7 @@ class TCPServerListener extends Abstracts\Server static::$_tcp->on('receive', [$reflect, 'onReceive']); static::$_tcp->on('connect', [$reflect, 'onConnect']); static::$_tcp->on('close', [$reflect, 'onClose']); - if (swoole_version() >= '4.7.0') { - static::$_tcp->on('disconnect', [$reflect, 'onDisconnect']); - $reflect->setEvents(Constant::DISCONNECT, $settings['events'][Constant::DISCONNECT] ?? null); - } - $reflect->setEvents(Constant::CLOSE, $settings['events'][Constant::CLOSE] ?? null); - $reflect->setEvents(Constant::RECEIVE, $settings['events'][Constant::RECEIVE] ?? null); - $reflect->setEvents(Constant::CONNECT, $settings['events'][Constant::CONNECT] ?? null); - + static::$_tcp->on('disconnect', [$reflect, 'onDisconnect']); return static::$_tcp; } diff --git a/Server/UDPServerListener.php b/Server/UDPServerListener.php index e17118a8..532719b5 100644 --- a/Server/UDPServerListener.php +++ b/Server/UDPServerListener.php @@ -43,6 +43,7 @@ class UDPServerListener extends Abstracts\Server /** @var static $reflect */ $reflect = Snowflake::getDi()->getReflect(static::class)->newInstance(); + $reflect->setEvents(Constant::PACKET, $settings['events'][Constant::PACKET] ?? null); static::$_udp = $server->addlistener($host, $port, $mode); if (!(static::$_udp instanceof Port)) { @@ -52,8 +53,6 @@ class UDPServerListener extends Abstracts\Server static::$_udp->set($settings['settings'] ?? []); static::$_udp->on('packet', [$reflect, 'onPacket']); - $reflect->setEvents(Constant::PACKET, $settings['events'][Constant::PACKET] ?? null); - return static::$_udp; } diff --git a/Server/WebSocketServerListener.php b/Server/WebSocketServerListener.php index f461d4fa..63654faa 100644 --- a/Server/WebSocketServerListener.php +++ b/Server/WebSocketServerListener.php @@ -44,6 +44,10 @@ class WebSocketServerListener extends Abstracts\Server /** @var static $reflect */ $reflect = Snowflake::getDi()->getReflect(static::class)?->newInstance(); + $reflect->setEvents(Constant::CONNECT, $settings['events'][Constant::CONNECT] ?? null); + $reflect->setEvents(Constant::HANDSHAKE, $settings['events'][Constant::HANDSHAKE] ?? null); + $reflect->setEvents(Constant::MESSAGE, $settings['events'][Constant::MESSAGE] ?? null); + $reflect->setEvents(Constant::CLOSE, $settings['events'][Constant::CLOSE] ?? null); static::$_http = $server->addlistener($host, $port, $mode); if (!(static::$_http instanceof Port)) { @@ -56,11 +60,6 @@ class WebSocketServerListener extends Abstracts\Server static::$_http->on('message', [$reflect, 'onMessage']); static::$_http->on('close', [$reflect, 'onClose']); - $reflect->setEvents(Constant::CONNECT, $settings['events'][Constant::CONNECT] ?? null); - $reflect->setEvents(Constant::HANDSHAKE, $settings['events'][Constant::HANDSHAKE] ?? null); - $reflect->setEvents(Constant::MESSAGE, $settings['events'][Constant::MESSAGE] ?? null); - $reflect->setEvents(Constant::CLOSE, $settings['events'][Constant::CLOSE] ?? null); - return static::$_http; }