package businessLogic; import java.rmi.RemoteException; import java.rmi.server.UnicastRemoteObject; import java.util.Vector; import common.LoginInterface; import dataAccess.DB4oManager; import domain.Account; public class LoginManager extends UnicastRemoteObject implements LoginInterface { /** * */ private static final long serialVersionUID = 1L; DB4oManager dbMngr; public LoginManager() throws RemoteException { super(); try { dbMngr = DB4oManager.getInstance(); } catch (Exception e) { e.printStackTrace(); } } @Override public Account checkCredentials(String usr, String pwd) { Account ac = new Account(SecurityManager.getInstance().calculateHash( usr)); try { Vector account = dbMngr.getAccount(ac); if (account.isEmpty()) return null; if (SecurityManager.getInstance().isExpectedPassword( pwd.toCharArray(), account.get(0).getSalt(), account.get(0).getPassword())) { return account.get(0); } return null; } catch (Exception e) { e.printStackTrace(); } return null; } }