package midas.pm;
import java.io.IOException;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import midas.equipment.ManagementManager;
import midas.application.SearchUserManager;
import midas.modules.util.IllegalCommandException;
import midas.modules.util.Manager;
import midas.modules.util.PageForward;
public class PMServlet extends HttpServlet {
/**
*
*/
private static final long serialVersionUID = 4749453770777604392L;
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
{
doPost(request, response);
}
public void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException
{
//-----------------------
// Session Check. update 2007.04.06
//-----------------------
if(request.getSession().getAttribute("LoginedUser")==null){
RequestDispatcher rd = getServletContext().getRequestDispatcher("/common/AfterSessionOut.jsp");
rd.forward(request,response);
return;
}
PageForward objForward = null;
Manager objManager = null;
try
{
String strClass = request.getParameter("wrk"); //비즈니스 클래스명을 넘겨줌
String strMethod = request.getParameter("cmd"); //클래스내의 메소드명을 넘겨줌
objManager = getManager(strClass); //CLASS의 오브젝트를 할당받는다.
objForward = objManager.execute(request, response, strMethod); //실행로직
}
catch(Exception e)
{
e.printStackTrace();
throw new ServletException(e.getMessage());
}
if(objForward.isRedirect())
{
response.sendRedirect(objForward.getPath());
}
else
{
RequestDispatcher rd = request.getRequestDispatcher(objForward.getPath());
rd.forward(request, response);
}
}
/**
* Get Action
* @param strCommand
* @return
* @throws IllegalCommandException
*/
public Manager getManager(String strCommand) throws IllegalCommandException
{
Manager objManager = null;
if (strCommand.equals("pm")) {
objManager = new PMManager();
}
else if (strCommand.equals("SearchUser")) {
objManager = new SearchUserManager();
}
else if (strCommand.equals("equipment")) {
objManager = new ManagementManager();
}
else if (strCommand.equals("inspection")) {
objManager = new InspectionEqManager();
}
else if (strCommand.equals("pmsheet")) {
objManager = new PMSheetManager();
}
else if (strCommand.equals("eqhispart")) {
objManager = new EqHisPartManager();
}
else {
throw new IllegalCommandException("잘못된 실행명령! 올바른 클래스를 실행하세요. ");
}
return objManager;
}
}