1.1 --- a/java/nekurak.net-ejb/src/java/cz/frantovo/nekurak/ejb/PodnikEJB.java Sat Jun 19 11:19:27 2010 +0200
1.2 +++ b/java/nekurak.net-ejb/src/java/cz/frantovo/nekurak/ejb/PodnikEJB.java Sun Jun 20 14:46:47 2010 +0200
1.3 @@ -25,96 +25,95 @@
1.4 @Stateless
1.5 public class PodnikEJB implements PodnikRemote {
1.6
1.7 - private static final Logger log = Logger.getLogger(PodnikEJB.class.getSimpleName());
1.8 - @EJB
1.9 - private PodnikDAO podnikDAO;
1.10 - @Resource
1.11 - private SessionContext ctx;
1.12 - private Komentare komentare = new Komentare();
1.13 + private static final Logger log = Logger.getLogger(PodnikEJB.class.getSimpleName());
1.14 + @EJB
1.15 + private PodnikDAO podnikDAO;
1.16 + @Resource
1.17 + private SessionContext ctx;
1.18
1.19 - public Collection<Podnik> getPodniky() {
1.20 - Collection<Podnik> vysledek = podnikDAO.getPodniky();
1.21 - return vysledek;
1.22 - }
1.23 -
1.24 - public Podnik getPodnik(int id) {
1.25 - return podnikDAO.getPodnik(id);
1.26 - }
1.27 -
1.28 - @RolesAllowed("opravneny")
1.29 - public void zalozPodnik(Podnik p) {
1.30 - p.setSpravce(ctx.getCallerPrincipal().getName());
1.31 - podnikDAO.zaloz(p);
1.32 - }
1.33 -
1.34 - @RolesAllowed("opravneny")
1.35 - public void upravPodnik(Podnik p) {
1.36 - podnikDAO.uloz(p);
1.37 - }
1.38 -
1.39 - public int dopocitejSouradnice() {
1.40 - /**
1.41 - * TODO: refaktorovat, změnit datové typy, souřadnice…
1.42 - */
1.43 - Geo g = new Geo();
1.44 - int pocetAktualizovanych = 0;
1.45 -
1.46 - for (Podnik p : podnikDAO.getPodnikyBezSouradnic()) {
1.47 - Souradnice s = g.getSouradnice(p.getUlice() + " " + p.getCisloPopisne() + ", " + p.getMesto());
1.48 - if (s != null) {
1.49 - pocetAktualizovanych++;
1.50 - p.setSirka(s.getSirka());
1.51 - p.setDelka(s.getDelka());
1.52 - podnikDAO.uloz(p);
1.53 - }
1.54 + public Collection<Podnik> getPodniky() {
1.55 + Collection<Podnik> vysledek = podnikDAO.getPodniky();
1.56 + return vysledek;
1.57 }
1.58
1.59 - return pocetAktualizovanych;
1.60 - }
1.61 -
1.62 - public void hlasuj(int podnik, boolean hlas, String ipAdresa) {
1.63 -
1.64 - podnikDAO.hlasuj(podnik, hlas, ipAdresa);
1.65 - }
1.66 -
1.67 - public VysledekHlasovani getVysledekHlasovani(int podnik) {
1.68 - return podnikDAO.getVysledekHlasovani(podnik);
1.69 - }
1.70 -
1.71 - private void kontrolaKomentare(Komentar k) throws TexyVyjimka, KomentarovaVyjimka {
1.72 - k.setUzivatel(ctx.getCallerPrincipal().getName());
1.73 - k.setDatum(null);
1.74 -
1.75 - if (k.getKomentar() == null || k.getKomentar().length() < 1) {
1.76 - throw new KomentarovaVyjimka("Nechceme prázdné komentáře.", null);
1.77 + public Podnik getPodnik(int id) {
1.78 + return podnikDAO.getPodnik(id);
1.79 }
1.80
1.81 - /** Převedeme na XML */
1.82 - switch (k.getTyp()) {
1.83 - case PROSTY_TEXT:
1.84 - k.setKomentar(Komentare.upravProstyText(k.getKomentar()));
1.85 - break;
1.86 - case TEXY:
1.87 - Texy t = new Texy();
1.88 - k.setKomentar(t.preved(k.getKomentar()));
1.89 - break;
1.90 - case XHTML:
1.91 - k.setKomentar(Komentare.upravXHTML(k.getKomentar()));
1.92 - break;
1.93 + @RolesAllowed("opravneny")
1.94 + public void zalozPodnik(Podnik p) {
1.95 + p.setSpravce(ctx.getCallerPrincipal().getName());
1.96 + podnikDAO.zaloz(p);
1.97 }
1.98 - /** Přidáme kořenový element */
1.99 - k.setKomentar(Komentare.obal(k.getKomentar()));
1.100
1.101 - /** Zkontrolujeme XML */
1.102 - Komentare.zkontroluj(k.getKomentar());
1.103 - }
1.104 + @RolesAllowed("opravneny")
1.105 + public void upravPodnik(Podnik p) {
1.106 + podnikDAO.uloz(p);
1.107 + }
1.108
1.109 - @RolesAllowed("opravneny")
1.110 - public Komentar komentuj(Komentar k, boolean uloz) throws KomentarovaVyjimka, TexyVyjimka {
1.111 - kontrolaKomentare(k);
1.112 - if (uloz) {
1.113 - podnikDAO.zaloz(k);
1.114 + public int dopocitejSouradnice() {
1.115 + /**
1.116 + * TODO: refaktorovat, změnit datové typy, souřadnice…
1.117 + */
1.118 + Geo g = new Geo();
1.119 + int pocetAktualizovanych = 0;
1.120 +
1.121 + for (Podnik p : podnikDAO.getPodnikyBezSouradnic()) {
1.122 + Souradnice s = g.getSouradnice(p.getUlice() + " " + p.getCisloPopisne() + ", " + p.getMesto());
1.123 + if (s != null) {
1.124 + pocetAktualizovanych++;
1.125 + p.setSirka(s.getSirka());
1.126 + p.setDelka(s.getDelka());
1.127 + podnikDAO.uloz(p);
1.128 + }
1.129 + }
1.130 +
1.131 + return pocetAktualizovanych;
1.132 }
1.133 - return k;
1.134 - }
1.135 +
1.136 + public void hlasuj(int podnik, boolean hlas, String ipAdresa) {
1.137 +
1.138 + podnikDAO.hlasuj(podnik, hlas, ipAdresa);
1.139 + }
1.140 +
1.141 + public VysledekHlasovani getVysledekHlasovani(int podnik) {
1.142 + return podnikDAO.getVysledekHlasovani(podnik);
1.143 + }
1.144 +
1.145 + private void kontrolaKomentare(Komentar k) throws TexyVyjimka, KomentarovaVyjimka {
1.146 + k.setUzivatel(ctx.getCallerPrincipal().getName());
1.147 + k.setDatum(null);
1.148 +
1.149 + if (k.getKomentar() == null || k.getKomentar().length() < 1) {
1.150 + throw new KomentarovaVyjimka("Nechceme prázdné komentáře.", null);
1.151 + }
1.152 +
1.153 + /** Převedeme na XML */
1.154 + switch (k.getTyp()) {
1.155 + case PROSTY_TEXT:
1.156 + k.setKomentar(Komentare.upravProstyText(k.getKomentar()));
1.157 + break;
1.158 + case TEXY:
1.159 + Texy t = new Texy();
1.160 + k.setKomentar(t.preved(k.getKomentar()));
1.161 + break;
1.162 + case XHTML:
1.163 + k.setKomentar(Komentare.upravXHTML(k.getKomentar()));
1.164 + break;
1.165 + }
1.166 + /** Přidáme kořenový element */
1.167 + k.setKomentar(Komentare.obal(k.getKomentar()));
1.168 +
1.169 + /** Zkontrolujeme XML */
1.170 + Komentare.zkontroluj(k.getKomentar());
1.171 + }
1.172 +
1.173 + @RolesAllowed("opravneny")
1.174 + public Komentar komentuj(Komentar k, boolean uloz) throws KomentarovaVyjimka, TexyVyjimka {
1.175 + kontrolaKomentare(k);
1.176 + if (uloz) {
1.177 + podnikDAO.zaloz(k);
1.178 + }
1.179 + return k;
1.180 + }
1.181 }