Removed pipeline

This commit is contained in:
2024-07-08 14:38:47 +02:00
parent 7bb7fa6c9a
commit 0ecd2fabd0
3 changed files with 43 additions and 103 deletions

View File

@@ -1,17 +0,0 @@
package me.finn.unlegitlibrary.network.system;
import me.finn.unlegitlibrary.event.EventManager;
import me.finn.unlegitlibrary.network.system.packets.PacketHandler;
import me.finn.unlegitlibrary.utils.DefaultMethodsOverrider;
public abstract class NetworkPipeline extends DefaultMethodsOverrider {
public int port = 3982;
public PacketHandler packetHandler = new PacketHandler();
public EventManager eventManager = new EventManager();
public boolean logDebug = false;
public int maxAttempts = 10; // -1 = Endless | 0 = Disabled
public int attemptDelayInSeconds = 5;
public abstract void implement();
}

View File

@@ -9,7 +9,6 @@
package me.finn.unlegitlibrary.network.system.client;
import me.finn.unlegitlibrary.event.EventManager;
import me.finn.unlegitlibrary.network.system.NetworkPipeline;
import me.finn.unlegitlibrary.network.system.client.events.packets.received.C_PacketFailedReceivedEvent;
import me.finn.unlegitlibrary.network.system.client.events.packets.received.C_PacketReceivedEvent;
import me.finn.unlegitlibrary.network.system.client.events.packets.received.C_UnknownObjectReceivedEvent;
@@ -30,43 +29,36 @@ import java.net.Socket;
import java.net.SocketException;
public class NetworkClient extends DefaultMethodsOverrider {
public class ClientPipeline extends NetworkPipeline {
public final NetworkClient networkClient;
public String host;
public ClientPipeline(NetworkClient networkClient) {
this.networkClient = networkClient;
}
private final String host;
private final int port;
@Override
public void implement() {
networkClient.host = host;
networkClient.port = port;
networkClient.packetHandler = packetHandler;
networkClient.eventManager = eventManager;
networkClient.maxAttempts = maxAttempts;
networkClient.attemptDelayInSec = attemptDelayInSeconds;
networkClient.debugLog = debugLog;
}
}
private final PacketHandler packetHandler;
private final EventManager eventManager;
private String host;
private int port;
private PacketHandler packetHandler;
private EventManager eventManager;
private boolean debugLog;
private int maxAttempts;
private int attemptDelayInSec;
private final boolean debugLog;
private final int maxAttempts;
private final int attemptDelayInSec;
private Socket socket;
private ObjectOutputStream objectOutputStream;
private ObjectInputStream objectInputStream;
private int clientID = -1;
private int attempt = 1;
private boolean needClientID = false; private final Thread receiveThread = new Thread(this::receive);
private boolean needClientID = false;
private final Thread receiveThread = new Thread(this::receive);
private NetworkClient() {
attempt = 1;
private NetworkClient(String host, int port, PacketHandler packetHandler, EventManager eventManager, boolean debugLog, int maxAttempts, int attemptDelayInSec) {
this.host = host;
this.port = port;
this.packetHandler = packetHandler;
this.eventManager = eventManager;
this.debugLog = debugLog;
this.maxAttempts = maxAttempts;
this.attemptDelayInSec = attemptDelayInSec;
this.attempt = 1;
}
public final int getClientID() {
@@ -335,21 +327,7 @@ public class NetworkClient extends DefaultMethodsOverrider {
}
public final NetworkClient build() {
ClientPipeline pipeline = new ClientPipeline(new NetworkClient());
pipeline.host = host;
pipeline.port = port;
pipeline.packetHandler = packetHandler;
pipeline.eventManager = eventManager;
pipeline.maxAttempts = maxAttempts;
pipeline.logDebug = debugLog;
pipeline.attemptDelayInSeconds = attemptDelayInSec;
pipeline.implement();
return pipeline.networkClient;
return new NetworkClient(host, port, packetHandler, eventManager, debugLog, maxAttempts, attemptDelayInSec);
}
}
}

View File

@@ -9,7 +9,6 @@
package me.finn.unlegitlibrary.network.system.server;
import me.finn.unlegitlibrary.event.EventManager;
import me.finn.unlegitlibrary.network.system.NetworkPipeline;
import me.finn.unlegitlibrary.network.system.packets.Packet;
import me.finn.unlegitlibrary.network.system.packets.PacketHandler;
import me.finn.unlegitlibrary.network.system.server.events.server.S_StartedEvent;
@@ -23,39 +22,32 @@ import java.util.ArrayList;
import java.util.List;
public class NetworkServer {
private final int port;
private final boolean debugLog;
public class ServerPipeline extends NetworkPipeline {
private final PacketHandler packetHandler;
private final EventManager eventManager;
public final NetworkServer networkServer;
private final int maxAttempts;
private final int attemptDelayInSec;
public ServerPipeline(NetworkServer networkServer) {
this.networkServer = networkServer;
}
@Override
public void implement() {
networkServer.port = port;
networkServer.debugLog = debugLog;
networkServer.packetHandler = packetHandler;
networkServer.eventManager = eventManager;
networkServer.maxAttempts = maxAttempts;
networkServer.attemptDelayInSec = attemptDelayInSec;
}
}
private int port;
private PacketHandler packetHandler;
private EventManager eventManager;
private boolean debugLog;
private int maxAttempts;
private int attemptDelayInSec;
private final List<ClientHandler> clientHandlers = new ArrayList<>();
private final Thread incomingConnectionThread = new Thread(this::incomingConnection);
private ServerSocket serverSocket;
private int attempt = 1;
private NetworkServer() {
} private final Thread incomingConnectionThread = new Thread(this::incomingConnection);
private int attempt;
private NetworkServer(int port, boolean debugLog, PacketHandler packetHandler, EventManager eventManager, int maxAttempts, int attemptDelayInSec) {
this.port = port;
this.debugLog = debugLog;
this.packetHandler = packetHandler;
this.eventManager = eventManager;
this.maxAttempts = maxAttempts;
this.attemptDelayInSec = attemptDelayInSec;
this.attempt = 1;
}
public final int getPort() {
return port;
@@ -168,7 +160,7 @@ public class NetworkServer {
return eventManager;
}
public class ServerBuilder {
public static class ServerBuilder {
private int port;
private boolean debugLog = false;
private PacketHandler packetHandler = new PacketHandler();
@@ -207,20 +199,7 @@ public class NetworkServer {
}
public final NetworkServer build() {
ServerPipeline pipeline = new ServerPipeline(new NetworkServer());
pipeline.port = port;
pipeline.packetHandler = packetHandler;
pipeline.eventManager = eventManager;
pipeline.maxAttempts = maxAttempts;
pipeline.logDebug = debugLog;
pipeline.attemptDelayInSeconds = attemptDelayInSec;
pipeline.implement();
return pipeline.networkServer;
return new NetworkServer(port, debugLog, packetHandler, eventManager, maxAttempts, attemptDelayInSec);
}
}
}