java/HrisniciSpameri/src/java/cz/frantovo/hrisniciSpameri/DenniSouhrn.java
author František Kučera <franta-hg@frantovo.cz>
Fri Feb 13 00:26:59 2009 +0100 (2009-02-13)
changeset 20 90dc76051e56
parent 6 38625daa449b
child 21 2bc6c427894d
permissions -rw-r--r--
Výměnna proměnných mezi JSP a beanou
JavaScript pro zobrazování a skrývání seznamu cílů
Formulář pro výběr data a cíle
franta-hg@3
     1
package cz.frantovo.hrisniciSpameri;
franta-hg@3
     2
franta-hg@6
     3
import cz.frantovo.hrisniciSpameri.dao.CilDAO;
franta-hg@4
     4
import cz.frantovo.hrisniciSpameri.dto.Cil;
franta-hg@5
     5
import cz.frantovo.hrisniciSpameri.dto.SitovaAdresa;
franta-hg@4
     6
import cz.frantovo.hrisniciSpameri.dto.Souhrn;
franta-hg@3
     7
import java.io.Serializable;
franta-hg@4
     8
import java.sql.Date;
franta-hg@4
     9
import java.text.DateFormat;
franta-hg@4
    10
import java.text.ParseException;
franta-hg@4
    11
import java.text.SimpleDateFormat;
franta-hg@4
    12
import java.util.ArrayList;
franta-hg@4
    13
import java.util.Collection;
franta-hg@4
    14
import java.util.logging.Level;
franta-hg@4
    15
import java.util.logging.Logger;
franta-hg@3
    16
franta-hg@3
    17
/**
franta-hg@4
    18
 * Beana zprostředkovávající denní souhrn hříšníků.
franta-hg@3
    19
 * @author fiki
franta-hg@3
    20
 */
franta-hg@3
    21
public class DenniSouhrn implements Serializable {
franta-hg@3
    22
franta-hg@3
    23
    private static final long serialVersionUID = 7932392366943861342L;
franta-hg@4
    24
    private static final Logger log = Logger.getLogger(DenniSouhrn.class.getName());
franta-hg@4
    25
    private static final long DEN = 1000 * 60 * 60 * 24;
franta-hg@20
    26
    private static String formatDataVzor = "yyyy-MM-dd";
franta-hg@4
    27
    public static DateFormat formatData = new SimpleDateFormat(formatDataVzor);
franta-hg@4
    28
    private Date den;
franta-hg@20
    29
    private int cil;
franta-hg@20
    30
franta-hg@20
    31
    public String getDenString() {
franta-hg@20
    32
        return formatData.format(getDen());
franta-hg@20
    33
    }
franta-hg@4
    34
franta-hg@4
    35
    public Date getDen() {
franta-hg@20
    36
        if (den == null) {
franta-hg@20
    37
            nastavVychoziDen();
franta-hg@20
    38
        }
franta-hg@4
    39
        return den;
franta-hg@4
    40
    }
franta-hg@4
    41
franta-hg@4
    42
    public void setDen(Date den) {
franta-hg@4
    43
        if (den == null) {
franta-hg@4
    44
            nastavVychoziDen();
franta-hg@4
    45
        } else {
franta-hg@4
    46
            this.den = den;
franta-hg@4
    47
        }
franta-hg@20
    48
        log.log(Level.FINE, "Den nastaven na: " + formatData.format(den));
franta-hg@4
    49
    }
franta-hg@4
    50
franta-hg@20
    51
    public void setDenString(String den) {
franta-hg@20
    52
        if (den == null) {
franta-hg@4
    53
            nastavVychoziDen();
franta-hg@4
    54
        }
franta-hg@4
    55
franta-hg@4
    56
        try {
franta-hg@4
    57
            this.den = new Date(formatData.parse(den).getTime());
franta-hg@4
    58
        } catch (ParseException e) {
franta-hg@20
    59
            log.log(Level.FINE, "Chybně zadané datum: " + den, e);
franta-hg@4
    60
            nastavVychoziDen();
franta-hg@4
    61
        }
franta-hg@4
    62
    }
franta-hg@4
    63
franta-hg@20
    64
    public void setCilString(String cil) {
franta-hg@20
    65
        try {
franta-hg@20
    66
            this.cil = Integer.parseInt(cil);
franta-hg@20
    67
        } catch (Exception e) {
franta-hg@20
    68
            this.cil = 0;
franta-hg@20
    69
        }
franta-hg@20
    70
    }
franta-hg@20
    71
franta-hg@20
    72
    public void setCil(int cil) {
franta-hg@20
    73
        this.cil = cil;
franta-hg@20
    74
    }
franta-hg@20
    75
franta-hg@20
    76
    public String getCilString() {
franta-hg@20
    77
        return String.valueOf(cil);
franta-hg@20
    78
    }
franta-hg@20
    79
franta-hg@20
    80
    public int getCil() {
franta-hg@20
    81
        return cil;
franta-hg@20
    82
    }
franta-hg@20
    83
franta-hg@4
    84
    /**
franta-hg@4
    85
     * Ve výchozím stavu zobrazujeme souhrn za předešlý den.
franta-hg@4
    86
     * @return včerejšek
franta-hg@4
    87
     */
franta-hg@4
    88
    private static Date getVychoziDen() {
franta-hg@4
    89
        return new Date(System.currentTimeMillis() - DEN);
franta-hg@4
    90
    }
franta-hg@4
    91
franta-hg@4
    92
    private void nastavVychoziDen() {
franta-hg@20
    93
        log.log(Level.FINE, "Nastavuji den na výchozí hodnotu.");
franta-hg@4
    94
        setDen(getVychoziDen());
franta-hg@4
    95
    }
franta-hg@4
    96
franta-hg@4
    97
    public Collection<Souhrn> getSouhrn() {
franta-hg@4
    98
        Collection<Souhrn> souhrn = new ArrayList<Souhrn>();
franta-hg@4
    99
franta-hg@20
   100
        Cil c = new Cil(1, "Frantovo.cz", "http://frantovo.cz/blog/", null, null);
franta-hg@4
   101
franta-hg@4
   102
        for (int i = 1; i < 11; i++) {
franta-hg@20
   103
            Souhrn s = new Souhrn(getVychoziDen(), new SitovaAdresa("10.0.0.8", i + ".frantovo.cz"), 100 + i, c);
franta-hg@5
   104
            souhrn.add(s);
franta-hg@4
   105
        }
franta-hg@4
   106
franta-hg@4
   107
        return souhrn;
franta-hg@4
   108
    }
franta-hg@6
   109
franta-hg@6
   110
    /**
franta-hg@6
   111
     * @return Seznam všech cílů. Ale bez těchto hodnot: databáze a selekt.
franta-hg@6
   112
     */
franta-hg@6
   113
    public Collection<Cil> getSeznamCilu() {
franta-hg@6
   114
        Collection<Cil> cile = new CilDAO().getCile();
franta-hg@6
   115
franta-hg@6
   116
        /** ne všechno musíme posílat do JSP vrstvy */
franta-hg@6
   117
        for (Cil c : cile) {
franta-hg@6
   118
            c.setDatabaze(null);
franta-hg@6
   119
            c.setSelekt(null);
franta-hg@6
   120
        }
franta-hg@6
   121
franta-hg@6
   122
        return cile;
franta-hg@6
   123
    }
franta-hg@3
   124
}