-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathRegistrationHandler.java
39 lines (36 loc) · 1.35 KB
/
RegistrationHandler.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
package com.doing.more.java.example.handlers;
import com.doing.more.java.example.StoreModel;
import com.doing.more.java.example.User;
import com.doing.more.java.example.appcontrol.Handler;
import json.JSONOutputStream;
import java.util.HashMap;
import java.util.UUID;
public class RegistrationHandler implements Handler {
@Override
public void handleIt(HashMap<String, Object> dataMap) {
String userName = (String)dataMap.get("uname");
String password = (String)dataMap.get("pword");
StoreModel theModel = (StoreModel)dataMap.get("model");
User foundUser = theModel.getUser(userName, password);
HashMap<String,Object>responseMap = new HashMap<>();
String sessionID = "";
if(foundUser == null){
UUID sessionUUID = UUID.randomUUID();
sessionID = sessionUUID.toString();
User aUser = new User();
aUser.setSession(sessionID);
aUser.setUname(userName);
aUser.setPword(password);
theModel.addUser(aUser);
responseMap.put("id",sessionID);
}
responseMap.put("id",sessionID);
JSONOutputStream outToClient = (JSONOutputStream)dataMap.get("toClient");
try {
outToClient.writeObject(responseMap);
}
catch (Exception e) {
e.printStackTrace();
}
}
}