Chat applikasjon
Public Member Functions | List of all members
dao.UserDAO Class Reference

Public Member Functions

List< UsergetUsers ()
 
User getUserByUsername (String username)
 
User addUser (User user) throws NoSuchAlgorithmException, InvalidKeySpecException
 
byte[] generateSalt ()
 
String hashPassword (String password, byte[] salt) throws NoSuchAlgorithmException, InvalidKeySpecException
 
boolean editUser (int userId, String username, String password) throws NoSuchAlgorithmException, InvalidKeySpecException
 

Detailed Description

Data access object for User

Member Function Documentation

◆ addUser()

User dao.UserDAO.addUser ( User  user) throws NoSuchAlgorithmException, InvalidKeySpecException
inline

Adds a new user to database with default ID

Parameters
userUser object
Returns
new User or already registered user

◆ editUser()

boolean dao.UserDAO.editUser ( int  userId,
String  username,
String  password 
) throws NoSuchAlgorithmException, InvalidKeySpecException
inline

Edits the users username or password

Parameters
userIduserId as int
usernameUsername as String
passwordpassword as String, if null it should not be updated
Returns
true if success on new username, false if not

◆ generateSalt()

byte[] dao.UserDAO.generateSalt ( )
inline

Generates a salt, for hashing

Returns
a random salt

◆ getUserByUsername()

User dao.UserDAO.getUserByUsername ( String  username)
inline

Returns a User object for given username

Parameters
usernameUsername as String
Returns
requested user object if found, null if not found

◆ getUsers()

List< User > dao.UserDAO.getUsers ( )
inline

Returns a List of all registered users

Returns
List of Users

◆ hashPassword()

String dao.UserDAO.hashPassword ( String  password,
byte[]  salt 
) throws NoSuchAlgorithmException, InvalidKeySpecException
inline

Method to hash a password with salt

Parameters
passwordpassword to be hashed
saltsalt to use when hashing
Returns
hashedPassword, null if unsuccessful

The documentation for this class was generated from the following file: