Skip to content
Snippets Groups Projects
Commit e6e65212 authored by Philipp Lachowski's avatar Philipp Lachowski
Browse files

Alles geht, Fehlermeldungen sind auch weitestgehend richtig

parent 526e6421
No related branches found
No related tags found
1 merge request!3Ich checke nicht, warum der In und Output nicht funktioniert.
......@@ -77,9 +77,9 @@ public class Client {
}
if (ausgabe.equals("EXIT")) {
System.out.println(ausgabe);
info.close();
info.close(); // Exit beendet alle Schnittstellen mit Server
clientSocket.close();
break;
break; // Abbruch des while loops
} else if (ausgabe.length()>3 && ausgabe.substring(0, 4).equals("ECHO")) {
System.out.println(ausgabe.substring(5));
} else if (ausgabe.length()>3 && ausgabe.substring(0, 4).equals("TIME")) {
......
......@@ -101,39 +101,47 @@ public class Server{
}
else if(eingabe.equalsIgnoreCase("history")) {
String ausg = "Gesamter Verlauf: ";
for(int i=0; i<verlauf.size()-1; i++) {
ausg = ausg.concat(verlauf.get(i)+", ");
for(int i=0; i<verlauf.size()-1; i++) { // Die gesamte Arraylist wird ausgegeben
ausg = ausg.concat(verlauf.get(i)+", "); // String wird zusammen concatted
}
ausg = ausg.concat(verlauf.get(verlauf.size()-1)+"\n");
ausg = ausg.concat(verlauf.get(verlauf.size()-1)+"\n"); // Nach letztem Element kommt kein Komma, sondern \n
zumClient.write(ausg);
zumClient.flush();
}
else if(eingabe.length()>=4 && eingabe.substring(0,4).equalsIgnoreCase("echo")) {
zumClient.write(eingabe.substring(5)+"\n");
zumClient.flush();
}
else if(eingabe.length()>=9 && eingabe.substring(0,7).equalsIgnoreCase("history")) {
int zahl = -1;
int zahl = 0;
boolean fehler = false; // Nach fehler = true soll er es nicht weiter versuchen und if abbrechen
try{
zahl = Integer.parseInt(eingabe.substring(8,eingabe.length()));
} catch (NumberFormatException e) {
System.out.println("Der Client muss Zahlen hinter history schreiben smh");
zumClient.write("ERROR 400 BAD REQUEST\n"); // Bei falschem Aufruf
fehler = true;
}
if (zahl>=verlauf.size()) {
if (zahl>=verlauf.size() && !fehler) {
String ausg = "Gesamter Verlauf: ";
for(int i=0; i<verlauf.size()-1; i++) {
for(int i=0; i<verlauf.size()-1; i++) { // Gesamter Verlauf, da es zu wenige Elemente in Verlauf gibt
ausg = ausg.concat(verlauf.get(i)+", ");
}
ausg = ausg.concat(verlauf.get(verlauf.size()-1)+"\n");
zumClient.write(ausg);
}
else {
if(zahl>0) {
if(zahl>=0 && !fehler) {
String ausg = "Verlauf der letzten "+zahl+" Anfragen: ";
for(int i=verlauf.size()-zahl; i<verlauf.size(); i++) {
for(int i=verlauf.size()-zahl; i<verlauf.size()-1; i++) { // Verlauf ab size-zahl-1 bis size-1
ausg = ausg.concat(verlauf.get(i)+", ");
}
ausg = ausg.concat(verlauf.get(verlauf.size()-1)+"\n"); // Nach letztem Element kein Komma, sondern \n
zumClient.write(ausg);
}
else {
zumClient.write("Super witzig");
if (!fehler) zumClient.write("Super witzig\n"); // Falls Zahl negativ ist
}
}
zumClient.flush();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment