Subversion Repositories Integrator Subversion

Rev

Blame | Last modification | View Log | Download | RSS feed

package br.edu.cesmac.sic.controller.beans;

import java.io.Serializable;

import javax.annotation.PostConstruct;
import javax.inject.Inject;
import javax.inject.Named;

import org.springframework.context.annotation.Scope;

import br.edu.cesmac.core.generic.GenericService;
import br.edu.cesmac.sac.shared.views.ProfessorView;
import br.edu.cesmac.sic.controller.beans.consultademanda.ProfessorConsultaPorDemanda;
import br.edu.cesmac.sic.core.domain.model.dto.ParametrosConsultaProfessorDTO;
import br.edu.cesmac.sic.core.domain.service.ProfessorService;
import br.edu.cesmac.web.generic.AbstractBean;

@Named
@Scope("view")
public class ProfessorBean extends AbstractBean<ProfessorView> implements Serializable {

        private static final long serialVersionUID = 1L;
       
        private boolean acaoEditar = false;
       
        private ProfessorConsultaPorDemanda lazy;

        private ProfessorService professorService;
       
        @Inject
        public ProfessorBean(ProfessorConsultaPorDemanda lazy, ProfessorService professorService) {
                this.lazy = lazy;
                this.professorService = professorService;
        }

        @Override
        public ProfessorView getId() {
                return getEntidade();
        }

        @Override
        public GenericService<ProfessorView> getService() {
                return professorService;
        }
       
        @Override
        public void limparEntidade() {
                setEntidade(new ProfessorView());
        }
       
        @Override
        public ProfessorView getEntidade() {
                return entidade;
        }

        public ProfessorConsultaPorDemanda getLazy() {
                return lazy;
        }
       
        public void prepararConsultaDemanda() {
                lazy.setarParametrosConsulta(getParametrosConsulta());
        }
       
        public boolean isAcaoEditar() {
                return acaoEditar;
        }

        public void setAcaoEditar(boolean acaoEditar) {
                this.acaoEditar = acaoEditar;
        }

        @PostConstruct
        public void preCarregamento() {
                parametrosConsulta = new ParametrosConsultaProfessorDTO();
                parametrosConsulta.setEntidade(new ProfessorView());
                prepararConsultaDemanda();
        }
       
        public void limparParametrosConsulta() {
                preCarregamento();
        }
       
}