Hashování hesla, generování náhodného tokenu, částečný převod chyb na uživatelsky přijatelné hlášky.
1 package cz.frantovo.nekurak.web;
3 import cz.frantovo.nekurak.vyjimky.NekurakVyjimka;
4 import java.util.Collections;
5 import java.util.HashMap;
7 import java.util.logging.Level;
8 import java.util.logging.Logger;
14 public class RegistraceUzivatele {
16 private HledacSluzby hledac = new HledacSluzby();
17 private static final Logger log = Logger.getLogger(RegistraceUzivatele.class.getSimpleName());
18 private Map<String, UzivatelPredRegistraci> uzivatele = Collections.synchronizedMap(new HashMap<String, UzivatelPredRegistraci>());
21 public void setUzivatel(UzivatelPredRegistraci uzivatel) {
22 uzivatele.put(uzivatel.getToken(), uzivatel);
25 public void setToken(String token) {
30 * @return true, pokud registrace proběhla, jinak vyhazuje výjimku.
31 * @throws NekurakVyjimka špatný token nebo chyba při zakládání uživatele
33 public String getDokonciRegistraci() {
35 UzivatelPredRegistraci u = uzivatele.get(token);
38 /** Chybný token – uživatel se snaží dokončit neexistující registraci */
39 return "registrace.vyjimka.token";
42 hledac.getUzivatelEJB().zalozUzivatele(u.getUzivatel());
43 } catch (Exception e) {
44 log.log(Level.WARNING, "Chyba při registraci uživatele.", e);
45 return "registrace.vyjimka";