Реализована функции отправки пакетов клиенту
This commit is contained in:
@@ -48,6 +48,14 @@ public class Server extends WebSocketServer {
|
||||
this.context = context;
|
||||
}
|
||||
|
||||
/**
|
||||
* Конструктор сервера с объектом прикрепления и слушателем событий сервера
|
||||
* @param settings базовые настройки серверера
|
||||
* @param packetManager менеджер пакетов (обработчиков и зарегистрированных пакетов)
|
||||
* @param context вложение которое будет передаваться всем серрверным обработчикам пакетов,
|
||||
* @param listener слушатель событий сервера
|
||||
* может быть использовано для передачи контекста приложения
|
||||
*/
|
||||
public Server(Settings settings, PacketManager packetManager, Context context, ServerListener listener) {
|
||||
super(new InetSocketAddress(settings.port));
|
||||
this.settings = settings;
|
||||
@@ -114,8 +122,8 @@ public class Server extends WebSocketServer {
|
||||
client.disconnect(ServerFailures.UNSUPPORTED_PACKET);
|
||||
return;
|
||||
}
|
||||
Class<? extends Packet> packetClass = this.packetManager.getPacketClass(packetId);
|
||||
|
||||
Class<? extends Packet> packetClass = this.packetManager.getPacketClass(packetId);
|
||||
try {
|
||||
Packet packet = packetClass.getConstructor().newInstance();
|
||||
packet.packetId = packetId;
|
||||
@@ -150,7 +158,7 @@ public class Server extends WebSocketServer {
|
||||
* Передаем интервал heartbeat из настроек сервера.
|
||||
* Если клиент не отправляет heartbeat в указанный интервал, его можно отключить.
|
||||
*/
|
||||
Client client = new Client(socket, this.settings.heartbeatInterval);
|
||||
Client client = new Client(socket, this.settings.heartbeatInterval, this.packetManager);
|
||||
socket.setAttachment(client);
|
||||
if(this.listener == null){
|
||||
return;
|
||||
|
||||
Reference in New Issue
Block a user