/** * */ package de.tomcom.cm2009.Model; import java.sql.PreparedStatement; import java.sql.ResultSet; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import de.tomcom.tcf.tier1.Database.Database; public class MitarbeiterManager { public static enum ReturnValue { USER_NOT_FOUND, PASSWORD_WRONG, AUTHENTICATED, EXCEPTION } protected static final Log log = LogFactory.getLog(MitarbeiterManager.class.getName()); private static MitarbeiterManager instance; public static final MitarbeiterManager getInstance() { if (MitarbeiterManager.instance == null) { MitarbeiterManager.instance = new MitarbeiterManager(); } return MitarbeiterManager.instance; } public ReturnValue authenticate(String login, String password) { PreparedStatement statement; ResultSet rs; Database DB = Database.getInstance(); try { statement = DB.getCon().prepareStatement("SELECT password FROM mitarbeiter WHERE login = ?"); statement.setString(1, login); rs = statement.executeQuery(); if (rs.next()) { String storedPassword = rs.getString("password"); if (storedPassword.equals(password)) { return ReturnValue.AUTHENTICATED; } else { return ReturnValue.PASSWORD_WRONG; } } else { return ReturnValue.USER_NOT_FOUND; } } catch (Exception e) { MitarbeiterManager.log.error("Exception: Mitarbeiter.authenticate(): ", e); } return ReturnValue.EXCEPTION; } }