Хэндшейк, улучшенный граф, новые методы в репозитории в DB

This commit is contained in:
RoyceDa
2026-02-04 06:08:24 +02:00
parent cd1e6e6b14
commit f74f4e7af7
16 changed files with 386 additions and 31 deletions

View File

@@ -1,13 +1,20 @@
package com.rosetta.im;
import com.rosetta.im.client.ClientManager;
import com.rosetta.im.event.EventManager;
import com.rosetta.im.executors.Executor0Handshake;
import com.rosetta.im.listeners.HandshakeCompleteListener;
import com.rosetta.im.listeners.ServerStopListener;
import com.rosetta.im.logger.Logger;
import com.rosetta.im.logger.enums.Color;
import com.rosetta.im.logger.enums.LogLevel;
import com.rosetta.im.packet.Packet0Handshake;
import com.rosetta.im.packet.Packet1UserInfo;
import com.rosetta.im.packet.Packet2Result;
import com.rosetta.im.packet.Packet3Search;
import io.orprotocol.Server;
import io.orprotocol.Settings;
import io.orprotocol.packet.PacketManager;
/**
@@ -19,11 +26,20 @@ public class Boot {
private PacketManager packetManager;
private EventManager eventManager;
private Logger logger;
private Server server;
private ServerAdapter serverAdapter;
private ClientManager clientManager;
public Boot() {
this.packetManager = new PacketManager();
this.eventManager = new EventManager();
this.logger = new Logger(LogLevel.INFO);
this.serverAdapter = new ServerAdapter(this.eventManager);
this.server = new Server(new Settings(
8881,
30
), packetManager, this.serverAdapter);
this.clientManager = new ClientManager(server);
}
/**
@@ -42,6 +58,14 @@ public class Boot {
return this.eventManager;
}
/**
* Получить менеджера клиентов, нужно для того чтобы отправить пакет списку клиентов например
* @return менеджер клиентов
*/
public ClientManager getClientManager() {
return this.clientManager;
}
/**
* Получить логгер приложения
* @return Logger
@@ -64,10 +88,14 @@ public class Boot {
private void registerAllEvents() {
this.eventManager.registerListener(new ServerStopListener(this.logger));
this.eventManager.registerListener(new HandshakeCompleteListener());
}
private void registerAllPackets() {
this.packetManager.registerPacket(0, Packet0Handshake.class);
this.packetManager.registerPacket(1, Packet1UserInfo.class);
this.packetManager.registerPacket(2, Packet2Result.class);
this.packetManager.registerPacket(3, Packet3Search.class);
}
private void registerAllExecutors() {