Subversion Repositories bacoAlunos

Rev

Rev 2049 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
2009 es 1
package pt.estgp.es.exemplos.hibernate.services;
2
 
3
import org.apache.log4j.Logger;
2069 es 4
import pt.estgp.es.exemplos.hibernate.*;
5
import pt.estgp.es.exemplos.hibernate.security.SecurityContextProvider;
2009 es 6
import pt.estgp.es.exemplos.hibernate.security.logic.HasRole;
7
import pt.estgp.es.exemplos.hibernate.security.logic.IsAuthenticated;
2069 es 8
import pt.estgp.es.exemplos.hibernate.security.logic.PrintParameterExample;
2009 es 9
import pt.estgp.es.exemplos.hibernate.security.logic.Transaction;
2018 es 10
import pt.estgp.es.exemplos.hibernate.web.PaginasServlet;
2009 es 11
 
2018 es 12
import javax.servlet.ServletException;
13
 
2009 es 14
public class ServicoPaginas
15
{
16
 
17
    private static final 1.5.0/docs/api/java/util/logging/Logger.html">Logger logger = 1.5.0/docs/api/java/util/logging/Logger.html">Logger.getLogger(ServicoPaginas.class);
18
 
2069 es 19
    @Transaction @IsAuthenticated @HasRole(role = "admin") @PrintParameterExample(paramName = "idPagina")
2009 es 20
    public void criaSeccaoService(1.5.0/docs/api/java/lang/String.html">String idPagina, 1.5.0/docs/api/java/lang/String.html">String titulo)
21
    {
2018 es 22
        try {
23
            new PaginasServlet().init();
24
        } catch (ServletException e) {
25
            e.printStackTrace();
26
        }
2049 es 27
        Pagina p = (Pagina) HibernateUtils.getCurrentSession().load(Pagina.class,new 1.5.0/docs/api/java/lang/Long.html">Long(idPagina));
2009 es 28
        Seccao seccao = new SeccaoImpl();
29
        seccao.setTitulo(titulo);
30
        p.getSeccoes().add(seccao);
31
        seccao.setPagina(p);
32
 
2049 es 33
 
2009 es 34
        HibernateUtils.getCurrentSession().save(seccao);
35
    }
2018 es 36
 
2049 es 37
    @Transaction @IsAuthenticated @HasRole(role = "admin")
2009 es 38
    public long deleteSeccaoService(1.5.0/docs/api/java/lang/String.html">String idSeccao)
39
    {
2049 es 40
        Seccao seccao = (Seccao) HibernateUtils.getCurrentSession().load(Seccao.class,new 1.5.0/docs/api/java/lang/Long.html">Long(idSeccao));
41
 
42
 
2009 es 43
        long id = seccao.getPagina().getId();
44
        seccao.getPagina().getSeccoes().remove(seccao);
45
        seccao.setPagina(null);
46
        HibernateUtils.getCurrentSession().delete(seccao);
47
 
48
        return id;
2049 es 49
 
2009 es 50
    }
2049 es 51
 
2069 es 52
    @Transaction @IsAuthenticated
53
    public Pagina criaPaginaService(1.5.0/docs/api/java/lang/String.html">String titulo)
54
    {
55
        1.5.0/docs/api/java/lang/String.html">String cookie = SecurityContextProvider.getInstance().getSecuritySessionContext().getRequester();
56
        UserSession session = (UserSession) HibernateUtils.getCurrentSession().load(UserSession.class,cookie);
57
 
58
        Pagina p = new PaginaImpl();
59
 
60
        p.setDono(session.getUser());
61
        p.setNome(titulo);
62
 
63
        HibernateUtils.getCurrentSession().save(p);
64
        return p;
65
    }
66
 
2009 es 67
}