java/nekurak.net-web/src/java/cz/frantovo/nekurak/web/UzivatelPredRegistraci.java
author František Kučera <franta-hg@frantovo.cz>
Fri Mar 05 10:28:34 2010 +0100 (2010-03-05)
changeset 55 079a3221355d
parent 52 4c0408690ebf
child 145 0efefbf5f8b6
permissions -rw-r--r--
Oddělení požadavku na registraci od samotného uživatele.
Robustnější návrh.
franta-hg@51
     1
package cz.frantovo.nekurak.web;
franta-hg@51
     2
franta-hg@55
     3
import cz.frantovo.nekurak.dto.PozadavekNaRegistraciUzivatele;
franta-hg@52
     4
import cz.frantovo.nekurak.util.Hash;
franta-hg@52
     5
import java.util.logging.Level;
franta-hg@52
     6
import java.util.logging.Logger;
franta-hg@51
     7
franta-hg@51
     8
/**
franta-hg@51
     9
 * Pomocná třída obalujícího uživatele a token (kvůli CSRF)
franta-hg@51
    10
 * @author fiki
franta-hg@51
    11
 */
franta-hg@51
    12
public class UzivatelPredRegistraci {
franta-hg@51
    13
franta-hg@52
    14
    private static final Logger log = Logger.getLogger(UzivatelPredRegistraci.class.getSimpleName());
franta-hg@55
    15
    private PozadavekNaRegistraciUzivatele uzivatel;
franta-hg@51
    16
    private final String token = generujToken();
franta-hg@51
    17
franta-hg@55
    18
    public PozadavekNaRegistraciUzivatele getUzivatel() {
franta-hg@51
    19
	return uzivatel;
franta-hg@51
    20
    }
franta-hg@51
    21
franta-hg@55
    22
    public void setUzivatel(PozadavekNaRegistraciUzivatele uzivatel) {
franta-hg@51
    23
	this.uzivatel = uzivatel;
franta-hg@51
    24
    }
franta-hg@51
    25
franta-hg@51
    26
    public String getToken() {
franta-hg@51
    27
	return token;
franta-hg@51
    28
    }
franta-hg@51
    29
franta-hg@52
    30
    /**
franta-hg@52
    31
     * @return náhodný token
franta-hg@52
    32
     */
franta-hg@51
    33
    private static String generujToken() {
franta-hg@52
    34
	try {
franta-hg@52
    35
	    return Hash.hashuj(String.valueOf(Math.random()));
franta-hg@52
    36
	} catch (Exception e) {
franta-hg@52
    37
	    log.log(Level.SEVERE, "Chyba při generování háhodného tokenu", e);
franta-hg@52
    38
	    /** Nemělo by nikdy nastat :-) */
franta-hg@52
    39
	    return "nbusr123";
franta-hg@52
    40
	}
franta-hg@51
    41
    }
franta-hg@51
    42
}