From 47c8e7bfa72df937e5d3f9002427cdfef7f64fc9 Mon Sep 17 00:00:00 2001 From: Elrabu <busch.elias@web.de> Date: Sat, 25 Nov 2023 15:49:34 +0100 Subject: [PATCH] Update: Test server can now store integer variables. --- .../Model/Multiplayer/TestServer/Client.java | 11 ++++++++--- .../TestServer/ConnectionHandling.java | 11 +++++++---- .../Model/Multiplayer/TestServer/Server.java | 16 ++++++++-------- 3 files changed, 23 insertions(+), 15 deletions(-) diff --git a/src/main/java/de/hdm_stuttgart/battlearena/Model/Multiplayer/TestServer/Client.java b/src/main/java/de/hdm_stuttgart/battlearena/Model/Multiplayer/TestServer/Client.java index a13d436d..47289dc0 100644 --- a/src/main/java/de/hdm_stuttgart/battlearena/Model/Multiplayer/TestServer/Client.java +++ b/src/main/java/de/hdm_stuttgart/battlearena/Model/Multiplayer/TestServer/Client.java @@ -20,9 +20,14 @@ public class Client { in = new BufferedReader(new InputStreamReader(clientSocket.getInputStream())); } - public String sendMessage(String msg) throws IOException { - out.println(msg); - return in.readLine(); + public int sendMessage(int number) throws IOException { + out.println(number); + return number; + } + + public int receiveInt() throws IOException { + String response = in.readLine(); + return Integer.parseInt(response); } public void stopConnection() throws IOException { diff --git a/src/main/java/de/hdm_stuttgart/battlearena/Model/Multiplayer/TestServer/ConnectionHandling.java b/src/main/java/de/hdm_stuttgart/battlearena/Model/Multiplayer/TestServer/ConnectionHandling.java index 88030299..0975a597 100644 --- a/src/main/java/de/hdm_stuttgart/battlearena/Model/Multiplayer/TestServer/ConnectionHandling.java +++ b/src/main/java/de/hdm_stuttgart/battlearena/Model/Multiplayer/TestServer/ConnectionHandling.java @@ -1,14 +1,17 @@ package de.hdm_stuttgart.battlearena.Model.Multiplayer.TestServer; import java.io.IOException; +import java.util.concurrent.TimeUnit; public class ConnectionHandling { - public static void main(String[] args) throws IOException { + public static void main(String[] args) throws IOException, InterruptedException { Client client = new Client(); client.startConnection("localhost", 4444); - String resp1 = client.sendMessage("hello"); - System.out.println(resp1); - + for (int i = 0; i < 10; i++){ + int resp1 = client.sendMessage(1); + System.out.println(resp1); + TimeUnit.SECONDS.sleep(1); + } } } diff --git a/src/main/java/de/hdm_stuttgart/battlearena/Model/Multiplayer/TestServer/Server.java b/src/main/java/de/hdm_stuttgart/battlearena/Model/Multiplayer/TestServer/Server.java index 6d82c603..3e57d9e2 100644 --- a/src/main/java/de/hdm_stuttgart/battlearena/Model/Multiplayer/TestServer/Server.java +++ b/src/main/java/de/hdm_stuttgart/battlearena/Model/Multiplayer/TestServer/Server.java @@ -10,6 +10,8 @@ import java.io.*; public class Server { private ServerSocket serverSocket; + private static BufferedReader px; + public static void main(String[] args) throws IOException { Server server = new Server(); server.start(4444); @@ -41,27 +43,26 @@ public class Server { out = new PrintWriter(clientSocket.getOutputStream(), true); in = new BufferedReader(new InputStreamReader(clientSocket.getInputStream())); - String inputLine; + BufferedReader inputLine = in; + px = in; - while (clientSocket.isConnected() && (inputLine = in.readLine()) != null) { + while (true) { System.out.println("Received message from client: " + inputLine); - if (".".equals(inputLine)) { + if (inputLine.equals(0)) { out.println("bye"); out.flush(); System.out.println("Sent response to client: bye"); break; } - out.println(inputLine); + out.println(px); out.flush(); - System.out.println("Sent response to client: " + inputLine); + System.out.println("Sent response to client: " + px); } } catch (SocketException e) { - // Connection reset by client; no need to print a stack trace System.out.println("Client connection reset."); } catch (IOException e) { - // Other IOExceptions - log or handle as needed e.printStackTrace(); } finally { try { @@ -69,7 +70,6 @@ public class Server { out.close(); clientSocket.close(); } catch (IOException e) { - // Log the exception or handle as appropriate for your application e.printStackTrace(); } } -- GitLab