author | František Kučera <franta-hg@frantovo.cz> |
Mon Apr 05 15:21:14 2010 +0200 (2010-04-05) | |
changeset 86 | eb6fce71e85c |
parent 55 | 079a3221355d |
child 145 | 0efefbf5f8b6 |
permissions | -rw-r--r-- |
franta-hg@51 | 1 |
package cz.frantovo.nekurak.web; |
franta-hg@51 | 2 |
|
franta-hg@51 | 3 |
import java.util.Collections; |
franta-hg@51 | 4 |
import java.util.HashMap; |
franta-hg@51 | 5 |
import java.util.Map; |
franta-hg@52 | 6 |
import java.util.logging.Level; |
franta-hg@52 | 7 |
import java.util.logging.Logger; |
franta-hg@51 | 8 |
|
franta-hg@51 | 9 |
/** |
franta-hg@51 | 10 |
* |
franta-hg@51 | 11 |
* @author fiki |
franta-hg@51 | 12 |
*/ |
franta-hg@51 | 13 |
public class RegistraceUzivatele { |
franta-hg@51 | 14 |
|
franta-hg@51 | 15 |
private HledacSluzby hledac = new HledacSluzby(); |
franta-hg@52 | 16 |
private static final Logger log = Logger.getLogger(RegistraceUzivatele.class.getSimpleName()); |
franta-hg@51 | 17 |
private Map<String, UzivatelPredRegistraci> uzivatele = Collections.synchronizedMap(new HashMap<String, UzivatelPredRegistraci>()); |
franta-hg@51 | 18 |
private String token; |
franta-hg@51 | 19 |
|
franta-hg@53 | 20 |
/** |
franta-hg@53 | 21 |
* Přidáme uživatelský účet do mapy místo abychom použili prostou proměnnou. |
franta-hg@53 | 22 |
* Uživatel si totiž může otevřít víc registračních formulářů, |
franta-hg@53 | 23 |
* postupně je vyplnit a pak potvrdit jeden z nich. |
franta-hg@53 | 24 |
* Takto nedojde k přepsání údajů z předchozích vyplněných formulářů. |
franta-hg@53 | 25 |
*/ |
franta-hg@51 | 26 |
public void setUzivatel(UzivatelPredRegistraci uzivatel) { |
franta-hg@51 | 27 |
uzivatele.put(uzivatel.getToken(), uzivatel); |
franta-hg@51 | 28 |
} |
franta-hg@51 | 29 |
|
franta-hg@51 | 30 |
public void setToken(String token) { |
franta-hg@51 | 31 |
this.token = token; |
franta-hg@51 | 32 |
} |
franta-hg@51 | 33 |
|
franta-hg@52 | 34 |
/** |
franta-hg@86 | 35 |
* @return null, pokud je vše v pořádku. |
franta-hg@86 | 36 |
* Jinak vrací chybovou hlášku (resp. klíč k lokalizaci) |
franta-hg@52 | 37 |
*/ |
franta-hg@52 | 38 |
public String getDokonciRegistraci() { |
franta-hg@51 | 39 |
|
franta-hg@51 | 40 |
UzivatelPredRegistraci u = uzivatele.get(token); |
franta-hg@51 | 41 |
|
franta-hg@51 | 42 |
if (u == null) { |
franta-hg@51 | 43 |
/** Chybný token – uživatel se snaží dokončit neexistující registraci */ |
franta-hg@52 | 44 |
return "registrace.vyjimka.token"; |
franta-hg@51 | 45 |
} else { |
franta-hg@52 | 46 |
try { |
franta-hg@55 | 47 |
hledac.getUzivatelEJB().registrujUzivatele(u.getUzivatel()); |
franta-hg@52 | 48 |
} catch (Exception e) { |
franta-hg@52 | 49 |
log.log(Level.WARNING, "Chyba při registraci uživatele.", e); |
franta-hg@52 | 50 |
return "registrace.vyjimka"; |
franta-hg@52 | 51 |
} |
franta-hg@52 | 52 |
return null; |
franta-hg@51 | 53 |
} |
franta-hg@51 | 54 |
} |
franta-hg@51 | 55 |
} |