public class UserDB
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
private java.util.HashMap<java.lang.String,User> |
loggedInUserMap |
private static java.util.logging.Logger |
LOGGER |
private int |
maxUsers |
private java.util.HashMap<java.lang.String,User> |
pendingRegistrations |
private java.util.HashMap<java.lang.String,User> |
userMap |
private java.lang.String |
usersFile |
Constructor and Description |
---|
UserDB(java.lang.String filename,
int maxUsersVal) |
Modifier and Type | Method and Description |
---|---|
java.lang.String |
changeProperties(java.lang.String username,
java.lang.String oldPW,
java.lang.String newPW,
java.lang.String email,
java.lang.Boolean isAdmin) |
void |
cleanup() |
private java.lang.String |
confirmIfCorrectCode(java.lang.String username,
java.lang.String tryConfirmationCode) |
java.lang.String |
confirmRegistration(java.lang.String username,
java.lang.String confirmationCode) |
User |
findUserByName(java.lang.String name) |
java.util.Collection<User> |
getAllUsers() |
int |
getDeadCount() |
int |
getEnrolledCount() |
int |
getLoggedInCount() |
java.lang.String |
getLoggedInNamesAsString(java.lang.String useSeparator) |
java.util.Collection<User> |
getLoggedInUsers() |
int |
getPlayingCount() |
int |
getUserCount() |
boolean |
isUserOnline(User u) |
private void |
readUsersFromFile() |
java.lang.String |
registerUser(java.lang.String username,
java.lang.String password,
java.lang.String email,
IColossusMail mailObject) |
java.lang.String |
sendConfirmationMail(java.lang.String username,
java.lang.String email,
java.lang.String confCode,
IColossusMail mailObject) |
private void |
storeUser(User u) |
void |
storeUsersToFile() |
void |
updateLoggedinStatus(User u,
WebServerClient wsc) |
java.lang.String |
verifyLogin(java.lang.String username,
java.lang.String password)
Given a username and password, verifies that the user
is allowed to login with that password.
|
private static final java.util.logging.Logger LOGGER
private final int maxUsers
private final java.lang.String usersFile
private final java.util.HashMap<java.lang.String,User> userMap
private final java.util.HashMap<java.lang.String,User> loggedInUserMap
private final java.util.HashMap<java.lang.String,User> pendingRegistrations
public int getUserCount()
public void updateLoggedinStatus(User u, WebServerClient wsc)
public boolean isUserOnline(User u)
public java.util.Collection<User> getLoggedInUsers()
public User findUserByName(java.lang.String name)
public java.lang.String getLoggedInNamesAsString(java.lang.String useSeparator)
public int getDeadCount()
public int getEnrolledCount()
public int getPlayingCount()
public int getLoggedInCount()
public java.util.Collection<User> getAllUsers()
public java.lang.String verifyLogin(java.lang.String username, java.lang.String password)
username
- password
- public java.lang.String registerUser(java.lang.String username, java.lang.String password, java.lang.String email, IColossusMail mailObject)
public java.lang.String sendConfirmationMail(java.lang.String username, java.lang.String email, java.lang.String confCode, IColossusMail mailObject)
public java.lang.String confirmRegistration(java.lang.String username, java.lang.String confirmationCode)
private java.lang.String confirmIfCorrectCode(java.lang.String username, java.lang.String tryConfirmationCode)
public java.lang.String changeProperties(java.lang.String username, java.lang.String oldPW, java.lang.String newPW, java.lang.String email, java.lang.Boolean isAdmin)
private void readUsersFromFile()
public void storeUsersToFile()
private void storeUser(User u)
public void cleanup()