package commands;

import java.io.IOException;
import java.util.List;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import spring.Context;

import business.Professor;

import dao.ProfessorDAO;

public class PreencheListaProfessoresPorNomeRemoverProfessor extends
		AbstractCommand {
	private ProfessorDAO professorDao = new ProfessorDAO();

	public void processarComando(HttpServletRequest request,
			HttpServletResponse response, Context context) {
		// verifica se existe filtro
		String msg = null;
		String filtroProfessor = request.getParameter("filtroProfessor");
		List<Professor> professores = null;

		if (filtroProfessor == null || filtroProfessor.equals("")) {
			professores = professorDao.listarProfessores();
			if (professores.size() == 0) {
				msg = " Não Existe Professor Cadastrado ";
			}

		} else {
			professores = professorDao
					.listarProfessoresPorNome(filtroProfessor);
			if (professores.size() == 0) {
				msg = " Não Existe Professor com o Filtro Aplicado ";
			}
		}

		request.setAttribute("professores", professores);

		if (msg != null) {
			request.setAttribute("mensagem", msg);
		}

		RequestDispatcher rd = request
				.getRequestDispatcher("professorRemover.jsp");
		try {
			rd.forward(request, response);
		} catch (ServletException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}

}
