package sushi.user; import sushi.util.HashUtil; /** * This class manages the creation of new users. * @author micha */ public class UserProvider { /** * Checks, if the given name is already used for another user. * @param name * @return */ public static boolean isNameAlreadyInUse(String name){ if(SushiUser.findByName(name).isEmpty()){ return false; } else { return true; } } /** * Creates a new user with the given name, password and mail, if the user name is not already in use. * @param name * @param password * @param mail */ public static void createUser(String name, String password, String mail){ if(!isNameAlreadyInUse(name)){ SushiUser user = new SushiUser(name, password, mail); user.save(); } else { throw new RuntimeException("Name already in use."); } } public static SushiUser findUser(String name, String password){ if(!SushiUser.findByName(name).isEmpty()){ SushiUser user = SushiUser.findByName(name).get(0); if(user.getPasswordHash().equals(HashUtil.generateHash(password))){ return user; } } return null; } }