Files
wordle/WordleServer.java

75 lines
1.8 KiB
Java

import java.util.HashMap;
/**
* Server für das WORDLE Spiel.
*/
public class WordleServer extends Server {
public static final int DEFAULT_PORT = 1000;
public static void main( String[] args ) {
new WordleServer();
}
private DatabaseConnector db;
private HashMap<String,User>users;
private Query query;
public WordleServer() {
this(DEFAULT_PORT);
}
public WordleServer( int pPort ) {
super(pPort);
query = new Query();
db = new DatabaseConnector("", 0, "wordle.db", "", "");
users = new HashMap<>();
}
@Override
public void processNewConnection( String pClientIP, int pClientPort ) {
String connectionID= pClientIP +":"+ Integer.toString(pClientPort);
User u = new User(connectionID);
users.put(connectionID,u);
send(pClientIP,pClientPort,"+OK Verbindung zum Wordle Server erfolgreich aufgebaut");
u.setState(1);
}
@Override
public void processClosingConnection( String pClientIP, int pClientPort ) {
}
@Override
public void processMessage( String pClientIP, int pClientPort, String pMessage ) {
String conectionID = pClientIP + ":" + Integer.toString(pClientPort);
User u = users.get(conectionID);
if(pMessage.equals("QUIT")) {
send(pClientIP, pClientPort, "+OK Bye");
close();
} else {
send(pClientIP,pClientPort,"-ERR Command not valid in this state");
}
switch(u.getState()){
case 1:
//Anmeldephase
break;
case 2:
//Spielphase
break;
case 3:
//Zwischenphase(Angemeldet)
break;
}
}
}