package net.javaforge.netty.servlet.bridge.impl; import javax.servlet.RequestDispatcher; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletResponse; import java.io.IOException; /** * Simple RequestDispatcher Implementation * <p/> * Created by xshao on 12/22/14. */ public class RequestDispatcherImpl implements RequestDispatcher { /** * The servlet name for a named dispatcher. */ private String name = null; /** * The servlet path for this RequestDispatcher. */ private String servletPath = null; private HttpServlet httpServlet; public RequestDispatcherImpl(String servletName, String servletPath, HttpServlet servlet) { this.name = servletName; this.servletPath = servletPath; this.httpServlet = servlet; } @Override public void forward(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException { if (httpServlet != null) { //TODO Wrap httpServlet.service(servletRequest, servletResponse); } else { ((HttpServletResponse) servletResponse).sendError(HttpServletResponse.SC_NOT_FOUND); } } @Override public void include(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException { if (httpServlet != null) { //TODO Wrap httpServlet.service(servletRequest, servletResponse); } else { ((HttpServletResponse) servletResponse).sendError(HttpServletResponse.SC_NOT_FOUND); } } }