big socket refactor

This commit is contained in:
2025-03-04 16:32:11 +01:00
parent 76da347fb9
commit 2bb3e64f2b
7 changed files with 109 additions and 104 deletions

View File

@@ -1,12 +1,10 @@
package client;
import java.io.IOException;
import java.net.DatagramSocket;
import java.net.InetSocketAddress;
import network.PacketHandler;
import network.SocketReader;
import network.SocketWriter;
import network.Socket;
import network.protocol.Packet;
import network.protocol.PacketVisitor;
import network.protocol.packets.*;
@@ -14,16 +12,15 @@ import network.protocol.packets.*;
public class ClientConnexion implements PacketVisitor, PacketHandler {
private final InetSocketAddress serverAddress;
private final SocketWriter writer;
private final SocketReader reader;
private final Socket socket;
private final ClientListener callback;
private volatile boolean connected = false;
public ClientConnexion(DatagramSocket socket, InetSocketAddress serverAddress, ClientListener callback) {
public ClientConnexion(Socket socket, InetSocketAddress serverAddress, ClientListener callback) {
this.serverAddress = serverAddress;
this.writer = new SocketWriter(socket);
this.reader = new SocketReader(socket, this);
this.socket = socket;
this.callback = callback;
this.socket.addHandler(this);
spamHandshake();
}
@@ -48,12 +45,12 @@ public class ClientConnexion implements PacketVisitor, PacketHandler {
}
public void close() {
this.reader.stop();
this.socket.close();
}
public void sendPacket(Packet packet) {
try {
this.writer.sendPacket(packet, serverAddress);
this.socket.sendPacket(packet, serverAddress);
} catch (IOException e) {
this.close();
this.callback.handleConnexionError();