61 lines
1.6 KiB
Java
61 lines
1.6 KiB
Java
package at.reisinger.server;
|
|
|
|
import at.reisinger.server.objects.Request;
|
|
import at.reisinger.server.objects.Response;
|
|
|
|
import java.io.IOException;
|
|
import java.net.ServerSocket;
|
|
import java.net.Socket;
|
|
|
|
/**
|
|
* Grundlegende Server logic
|
|
* Vereint alle anderen Klassen
|
|
*/
|
|
public class Main {
|
|
static final int port = 10001;
|
|
private Socket socket;
|
|
|
|
/**
|
|
* Initial Start
|
|
* @param args Nicht Verwendet
|
|
*/
|
|
public static void main(String[] args) {
|
|
new DBConnection().init();
|
|
System.out.println("\n\nStarte Server auf Port " + port + "\n\n");
|
|
new Main(port);
|
|
}
|
|
|
|
/**
|
|
* Öffnet den Server Socket und akzepiert diesen
|
|
* @param port Port auf dem der Server läuft
|
|
*/
|
|
public Main(int port){
|
|
ServerSocket serverSocket;
|
|
try {
|
|
serverSocket = new ServerSocket(port);
|
|
//noinspection InfiniteLoopStatement
|
|
while (true){
|
|
this.socket = serverSocket.accept();
|
|
requestResponding();
|
|
}
|
|
} catch (IOException e) {
|
|
e.printStackTrace();
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Jeder Request durchläuft diese Funktion, reagiert auf requests
|
|
*/
|
|
public void requestResponding(){
|
|
try{
|
|
System.out.println("Socket wurde gestartet!");
|
|
Request rq = new Request(this.socket);
|
|
new Response(rq.getUrl(), rq.getCmd(), rq.getOut(), rq.getAuthString(), rq.getPayload());
|
|
this.socket.close();
|
|
System.out.println("Socket wurde geschlossen!");
|
|
}catch (IOException e){
|
|
e.printStackTrace();
|
|
}
|
|
}
|
|
}
|