forked from IF-LK-2020/wordle
(Properly) added push and pull Stats
This commit is contained in:
@@ -5,79 +5,79 @@ import java.util.HashMap;
|
||||
*/
|
||||
public class WordleServer extends Server {
|
||||
|
||||
public static final int DEFAULT_PORT = 1000;
|
||||
public static final int DEFAULT_PORT = 1000;
|
||||
|
||||
public static void main( String[] args ) {
|
||||
new WordleServer();
|
||||
}
|
||||
public static void main(String[] args) {
|
||||
new WordleServer();
|
||||
}
|
||||
|
||||
private DatabaseConnector db;
|
||||
|
||||
private DatabaseConnector db;
|
||||
private HashMap<String, User> users;
|
||||
private Query query;
|
||||
|
||||
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<>();
|
||||
}
|
||||
|
||||
public WordleServer() {
|
||||
this(DEFAULT_PORT);
|
||||
}
|
||||
@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);
|
||||
|
||||
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 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");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@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
|
||||
String m = pMessage.substring(0,3);
|
||||
if(m.equalsIgnoreCase("USER")){
|
||||
m = pMessage.substring(6,pMessage.length()-1);
|
||||
u.setUsername(m);
|
||||
} else if(m.equalsIgnoreCase("PASS")){
|
||||
m = pMessage.substring(6,pMessage.length()-1);
|
||||
u.setPassword(m);
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
//Spielphase
|
||||
break;
|
||||
case 3:
|
||||
//Zwischenphase(Angemeldet)
|
||||
break;
|
||||
|
||||
}
|
||||
}
|
||||
switch (u.getState()) {
|
||||
case 1:
|
||||
// Anmeldephase
|
||||
String m = pMessage.substring(0, 3);
|
||||
if (m.equalsIgnoreCase("USER")) {
|
||||
m = pMessage.substring(6, pMessage.length() - 1);
|
||||
u.setUsername(m);
|
||||
send(pClientIP, pClientPort, "+OK Bye");
|
||||
} else if (m.equalsIgnoreCase("PASS")) {
|
||||
m = pMessage.substring(6, pMessage.length() - 1);
|
||||
u.setPassword(m);
|
||||
if (u.getPassword() != null && u.getUsername() != null) {
|
||||
query.checkLogin(u.getUsername(), u.getPassword());
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
// Spielphase
|
||||
break;
|
||||
case 3:
|
||||
// Zwischenphase(Angemeldet)
|
||||
break;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user