Subversion Repositories bacoAlunos

Rev

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

package pt.estgp.es.exemplos.hibernate.services;

import org.apache.log4j.Logger;
import pt.estgp.es.exemplos.hibernate.HibernateUtils;
import pt.estgp.es.exemplos.hibernate.Pagina;
import pt.estgp.es.exemplos.hibernate.Seccao;
import pt.estgp.es.exemplos.hibernate.SeccaoImpl;
import pt.estgp.es.exemplos.hibernate.security.logic.HasRole;
import pt.estgp.es.exemplos.hibernate.security.logic.IsAuthenticated;
import pt.estgp.es.exemplos.hibernate.security.logic.Transaction;

public class ServicoPaginas
{

    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);

    @Transaction
    @IsAuthenticated
    @HasRole(role = "admin")
    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)
    {
        Pagina p = (Pagina) HibernateUtils.getCurrentSession().load(Pagina.class, new 1.5.0/docs/api/java/lang/Long.html">Long(idPagina));
        Seccao seccao = new SeccaoImpl();
        seccao.setTitulo(titulo);
        p.getSeccoes().add(seccao);
        seccao.setPagina(p);

        HibernateUtils.getCurrentSession().save(seccao);
    }
    public long deleteSeccaoService(1.5.0/docs/api/java/lang/String.html">String idSeccao)
    {
        Seccao seccao = (Seccao) HibernateUtils.getCurrentSession().load(Seccao.class, new 1.5.0/docs/api/java/lang/Long.html">Long(idSeccao));
        long id = seccao.getPagina().getId();
        seccao.getPagina().getSeccoes().remove(seccao);
        seccao.setPagina(null);
        HibernateUtils.getCurrentSession().delete(seccao);

        return id;
    }
}