From 2199f38b37aa6f5ff5e689bd86547b7062dda587 Mon Sep 17 00:00:00 2001
From: philipp023_ <Philipp.Lachowski@tu-dortmund.de>
Date: Sat, 10 Dec 2022 18:19:40 +0100
Subject: [PATCH] Bufferedreader und writer geht jetzt, ich klaue mir eben
 deine Date und Time sachen

---
 .../src/heimaufgaben/Client.java                | 17 +++++++++++++----
 .../src/heimaufgaben/Server.java                |  9 ++++++---
 2 files changed, 19 insertions(+), 7 deletions(-)

diff --git a/AufgabenStuff/ClientAnwendung/src/heimaufgaben/Client.java b/AufgabenStuff/ClientAnwendung/src/heimaufgaben/Client.java
index da4c0fe..fb6aeb0 100644
--- a/AufgabenStuff/ClientAnwendung/src/heimaufgaben/Client.java
+++ b/AufgabenStuff/ClientAnwendung/src/heimaufgaben/Client.java
@@ -65,12 +65,21 @@ public class Client {
         // Eingaben werden aufgenommen und bearbeitet bis "close":
         System.out.println("Verbindung hergestellt. erwarte Auftrag:");
         while (clientSocket.isConnected()) {
-            String eingabe = info.readLine();
-            zumServer.write(eingabe); // Alles wird an den Server geschickt
-            String ausgabe = vomServer.readLine();  // Ausgabe vom Server wird verglichen
+            String eingabe = "";
+            String ausgabe = "";
+            try {
+                eingabe = info.readLine();
+                zumServer.write(eingabe + "\n"); // Alles wird an den Server geschickt
+                zumServer.flush();
+                ausgabe = vomServer.readLine();  // Ausgabe vom Server wird verglichen
+            } catch (IOException e) {
+                System.err.println("Probleme bei der Nachrichtenübermittlung an Server");
+            }
             if (ausgabe.equals("EXIT")) {
-                clientSocket.close();
+                System.out.println(ausgabe);
                 info.close();
+                clientSocket.close();
+                break;
             } else if (ausgabe.equals("PONG")) {
                 System.out.println(ausgabe);
             } else if (ausgabe.substring(0, 4).equals("ECHO")) {
diff --git a/AufgabenStuff/ServerAnwendung/src/heimaufgaben/Server.java b/AufgabenStuff/ServerAnwendung/src/heimaufgaben/Server.java
index aca3571..d2a7149 100644
--- a/AufgabenStuff/ServerAnwendung/src/heimaufgaben/Server.java
+++ b/AufgabenStuff/ServerAnwendung/src/heimaufgaben/Server.java
@@ -69,14 +69,17 @@ public class Server{
                 System.err.println("Probleme beim Lesen der Client-Eingabe");
                 abbruch = true;
             }
-            try{
+            try{    // Jede mögliche Eingabe wird überprüft
                 if(eingabe.equalsIgnoreCase("exit")){
                     abbruch = true;
-                    runs = false;
-                    zumClient.write("EXIT");
+                    runs = false;   // Server runned nicht mehr, zurück zum Konstruktor
+                    zumClient.write("EXIT\n");
+                    zumClient.flush();
+                    System.out.println("Der Server wird neugestartet");
                 }
                 if(eingabe.equalsIgnoreCase("ping")) {
                     zumClient.write("PONG");
+                    zumClient.flush();
                 }
             } catch (IOException | NullPointerException e) {
                 System.err.println("Fehler beim schreiben zum Client");
-- 
GitLab