From c632ca746ea5ead994be7f04627e61413ff4a2ad Mon Sep 17 00:00:00 2001 From: eb093 <eb093@hdm-stuttgart.de> Date: Mon, 18 Dec 2023 17:54:02 +0100 Subject: [PATCH] Delete: Removed unnecessary Server classes. --- .../battlearena/Model/Multiplayer/Client.java | 51 ------ .../Model/Multiplayer/ConnectionHandler.java | 88 ----------- .../battlearena/Model/Multiplayer/Server.java | 148 ------------------ 3 files changed, 287 deletions(-) delete mode 100644 src/main/java/de/hdm_stuttgart/battlearena/Model/Multiplayer/Client.java delete mode 100644 src/main/java/de/hdm_stuttgart/battlearena/Model/Multiplayer/ConnectionHandler.java delete mode 100644 src/main/java/de/hdm_stuttgart/battlearena/Model/Multiplayer/Server.java diff --git a/src/main/java/de/hdm_stuttgart/battlearena/Model/Multiplayer/Client.java b/src/main/java/de/hdm_stuttgart/battlearena/Model/Multiplayer/Client.java deleted file mode 100644 index 87189a54..00000000 --- a/src/main/java/de/hdm_stuttgart/battlearena/Model/Multiplayer/Client.java +++ /dev/null @@ -1,51 +0,0 @@ -package de.hdm_stuttgart.battlearena.Model.Multiplayer; - -import org.apache.logging.log4j.LogManager; -import org.apache.logging.log4j.Logger; - -import java.net.*; -import java.io.*; -import java.util.Arrays; - -public class Client { - private Socket clientSocket; - private PrintWriter out; - private BufferedReader in; - - - private static final Logger log = LogManager.getLogger(Client.class); - - public void startConnection(String ip, int port) throws IOException { - clientSocket = new Socket(ip, port); - out = new PrintWriter(clientSocket.getOutputStream(), true); - in = new BufferedReader(new InputStreamReader(clientSocket.getInputStream())); - } - - public int[] sendcords(int[] cords) throws IOException { - String message = String.join(",", Arrays.stream(cords).mapToObj(String::valueOf).toArray(String[]::new)); - out.println(message); - log.info("Sent coordinates: " + message); - String resp = in.readLine(); - return convertStringToArray(resp); - } - - public static int[] convertStringToArray(String inputString) { - // Remove brackets and split by comma - String[] parts = inputString.substring(1, inputString.length() - 1).split(","); - - // Convert each part to integer - int[] result = new int[parts.length]; - for (int i = 0; i < parts.length; i++) { - result[i] = Integer.parseInt(parts[i].trim()); - } - - return result; - } - - - public void stopConnection() throws IOException { - in.close(); - out.close(); - clientSocket.close(); - } -} diff --git a/src/main/java/de/hdm_stuttgart/battlearena/Model/Multiplayer/ConnectionHandler.java b/src/main/java/de/hdm_stuttgart/battlearena/Model/Multiplayer/ConnectionHandler.java deleted file mode 100644 index 67529ff1..00000000 --- a/src/main/java/de/hdm_stuttgart/battlearena/Model/Multiplayer/ConnectionHandler.java +++ /dev/null @@ -1,88 +0,0 @@ -package de.hdm_stuttgart.battlearena.Model.Multiplayer; - -import org.apache.logging.log4j.LogManager; -import org.apache.logging.log4j.Logger; - -import java.io.IOException; -import java.util.Arrays; -import java.util.concurrent.TimeUnit; - -public class ConnectionHandler { - - private static int pX = 0; - private static int pY = 0; - private int enemyX; - private int enemyY; - private static int playerID = 0; - private static int[] coordinates = {pX,pY,playerID}; - - private static final Logger log = LogManager.getLogger(ConnectionHandler.class); - - public static void main(String[] args) throws IOException, InterruptedException { - - Client client = new Client(); - client.startConnection("localhost", 4444); - while (true){ - int[] cords = client.sendcords(coordinates); - System.out.println("Enemy X: " + cords[0]); - System.out.println("Enemy Y: " + cords[1]); - System.out.println("Your PlayerID is " + cords[2]); - pX++; - pY++; - playerID = cords[2]; - //Assign the Values to the message to send: - coordinates[0] = pX; - coordinates[1] = pY; - coordinates[2] = playerID; - - TimeUnit.SECONDS.sleep(1); - } - - //stop the connection: - //client.stopConnection(); - } - - class ConnectionThread implements Runnable { - public void run() { - - try { - Thread.sleep(250); - } catch (InterruptedException e){ - log.error("Error in Thread.sleep()"); - } - } - } - - public int getpX() { - return pX; - } - - public void setpX(int pX) { - this.pX = pX; - } - - public int getpY() { - return pY; - } - - public void setpY(int pY) { - this.pY = pY; - } - - public int getEnemyX() { - return enemyX; - } - - public void setEnemyX(int enemyX) { - this.enemyX = enemyX; - } - - public int getEnemyY() { - return enemyY; - } - - public void setEnemyY(int enemyY) { - this.enemyY = enemyY; - } -} - diff --git a/src/main/java/de/hdm_stuttgart/battlearena/Model/Multiplayer/Server.java b/src/main/java/de/hdm_stuttgart/battlearena/Model/Multiplayer/Server.java deleted file mode 100644 index e9226a37..00000000 --- a/src/main/java/de/hdm_stuttgart/battlearena/Model/Multiplayer/Server.java +++ /dev/null @@ -1,148 +0,0 @@ -package de.hdm_stuttgart.battlearena.Model.Multiplayer; - -import org.apache.logging.log4j.LogManager; -import org.apache.logging.log4j.Logger; - -import java.net.*; -import java.io.*; -import java.util.Arrays; -import java.util.concurrent.Executors; -import java.util.concurrent.ScheduledExecutorService; -import java.util.concurrent.TimeUnit; - -public class Server { - - private static final Logger log = LogManager.getLogger(Server.class); - private ServerSocket serverSocket; - private static boolean isServerRunning = true; - private static int px; - private static int py; - - private static int enemyx = 0; - private static int enemyy = 0; - private static int playerID; - private static int playercount = 0; - private static int[] cords; - - private static int[] returncords = {enemyx,enemyy,playerID}; - - public static void main(String[] args) throws IOException { - Server server = new Server(); - log.info("server starting..."); - server.start("localhost",4444); - } - - public void start(String localhost, int port) throws IOException { - serverSocket = new ServerSocket(port); - log.info("server started!"); - while (true){ - new ServerHandler(serverSocket.accept()).start(); - } - } - - private static class ServerHandler extends Thread { - private final Socket clientSocket; - private PrintWriter out; - private BufferedReader in; - - public ServerHandler(Socket socket) { - this.clientSocket = socket; - } - - public void run() { - ScheduledExecutorService executorService = Executors.newSingleThreadScheduledExecutor(); - - executorService.scheduleAtFixedRate(() -> { - try { - BufferedReader localIn = new BufferedReader(new InputStreamReader(clientSocket.getInputStream())); - PrintWriter localOut = new PrintWriter(clientSocket.getOutputStream(), true); - - String inputLine = localIn.readLine(); - - if (inputLine != null) { - // Assuming that the input line is a comma-separated list of integers - String[] coordinates = inputLine.split(","); - cords = new int[coordinates.length]; - for (int i = 0; i < coordinates.length; i++) { - cords[i] = Integer.parseInt(coordinates[i]); - } - - //first connect of a client: - if(playercount == 0){ - //first player to connect - playercount++; - returncords[2] = 1; - - } else if(playercount == 1){ - //second player to connect - if(cords[2] == 1){ - returncords[2] = 1; - } else { - playercount++; - returncords[2] = 2; - } - - } else if(playercount == 2){ - - //check which client has connected - if (cords[2] == 1) { //player - px = cords[0]; - py = cords[1]; - - //set the cords to return: - returncords[0] = enemyx; - returncords[1] = enemyy; - - //set playerID: - returncords[2] = 1; - - } else if(cords[2] == 2) { //enemy - enemyx = cords[0]; - enemyy = cords[1]; - - //set the cords to return: - returncords[0] = px; - returncords[1] = py; - - //set playerID: - returncords[2] = 2; - - } - } - - localOut.println(Arrays.toString(returncords)); - localOut.flush(); - } - - log.info("Player X / Y : " + px + " / " + py + " Enemy X / Y : " + enemyx + " / " + enemyy); - - - //check if server was shut down: - if (!isServerRunning) { - executorService.shutdown(); - try { - if (!executorService.awaitTermination(5, TimeUnit.SECONDS)) { - executorService.shutdownNow(); - } - } catch (InterruptedException e) { - log.error("Error waiting for executor service termination: " + e.getMessage()); - } - } - - } catch (IOException e) { - throw new RuntimeException(e); - } - }, 0, 250, TimeUnit.MILLISECONDS); - } - } - - public void stopServer() { - isServerRunning = false; - try { - serverSocket.close(); // Close the server socket to break out of accept() in the main thread - } catch (IOException e) { - log.error("Error closing server socket: " + e.getMessage()); - } - } - -} -- GitLab