41 lines
1.4 KiB
Java
41 lines
1.4 KiB
Java
package de.joethei.hs.java2.praktikum.praktikum4;
|
|
|
|
import java.io.*;
|
|
import java.net.Socket;
|
|
import java.util.Arrays;
|
|
import java.util.List;
|
|
|
|
public class ClientRunnable implements Runnable{
|
|
|
|
private Socket socket;
|
|
private BufferedReader bufferedReader;
|
|
|
|
public ClientRunnable(Socket socket) {
|
|
this.socket = socket;
|
|
try {
|
|
bufferedReader = new BufferedReader(new InputStreamReader(socket.getInputStream()));
|
|
} catch (IOException e) {
|
|
KlausurenServer.getLogger().fatal("Fehler beim erstellen des Sockets", e.getCause());
|
|
}
|
|
}
|
|
|
|
@Override
|
|
public void run() {
|
|
try {
|
|
String input = bufferedReader.readLine();
|
|
BufferedWriter bufferedWriter = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream()));
|
|
input = input.replace(",", " ");
|
|
List<String> arguments = Arrays.asList(input.split(" "));
|
|
|
|
KlausurenServer.getCommands().get(arguments.get(0).toLowerCase()).handle(bufferedWriter, arguments);
|
|
|
|
bufferedWriter.flush();
|
|
bufferedWriter.close();
|
|
socket.close();
|
|
Thread.currentThread().interrupt();
|
|
|
|
} catch (IOException e) {
|
|
KlausurenServer.getLogger().error("Fehler beim einlesen der Eingabe", e.getCause());
|
|
}
|
|
}
|
|
} |