Package net.sf.colossus.webcommon
Class UserDB
- java.lang.Object
-
- net.sf.colossus.webcommon.UserDB
-
public class UserDB extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description private long
highestExistingId
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 Summary
Constructors Constructor Description UserDB(java.lang.String filename, int maxUsersVal)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method 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.
-
-
-
Field Detail
-
LOGGER
private static final java.util.logging.Logger LOGGER
-
maxUsers
private final int maxUsers
-
usersFile
private final java.lang.String usersFile
-
userMap
private final java.util.HashMap<java.lang.String,User> userMap
-
loggedInUserMap
private final java.util.HashMap<java.lang.String,User> loggedInUserMap
-
pendingRegistrations
private final java.util.HashMap<java.lang.String,User> pendingRegistrations
-
highestExistingId
private long highestExistingId
-
-
Method Detail
-
getUserCount
public int getUserCount()
-
updateLoggedinStatus
public void updateLoggedinStatus(User u, WebServerClient wsc)
-
isUserOnline
public boolean isUserOnline(User u)
-
getLoggedInUsers
public java.util.Collection<User> getLoggedInUsers()
-
findUserByName
public User findUserByName(java.lang.String name)
-
getLoggedInNamesAsString
public java.lang.String getLoggedInNamesAsString(java.lang.String useSeparator)
-
getDeadCount
public int getDeadCount()
-
getEnrolledCount
public int getEnrolledCount()
-
getPlayingCount
public int getPlayingCount()
-
getLoggedInCount
public int getLoggedInCount()
-
getAllUsers
public java.util.Collection<User> getAllUsers()
-
verifyLogin
public 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.- Parameters:
username
-password
-- Returns:
- reasonLoginFailed (String), null if login ok
-
registerUser
public java.lang.String registerUser(java.lang.String username, java.lang.String password, java.lang.String email, IColossusMail mailObject)
-
sendConfirmationMail
public java.lang.String sendConfirmationMail(java.lang.String username, java.lang.String email, java.lang.String confCode, IColossusMail mailObject)
-
confirmRegistration
public java.lang.String confirmRegistration(java.lang.String username, java.lang.String confirmationCode)
-
confirmIfCorrectCode
private java.lang.String confirmIfCorrectCode(java.lang.String username, java.lang.String tryConfirmationCode)
-
changeProperties
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)
-
readUsersFromFile
private void readUsersFromFile()
-
storeUsersToFile
public void storeUsersToFile()
-
storeUser
private void storeUser(User u)
-
cleanup
public void cleanup()
-
-