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