@Override public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { final Handler handler = handlers.getBest(baseRequest.getRequestURI()); if (handler != null) { handler.handle(target, baseRequest, request, response); } }
@Override public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { final Connector connector = baseRequest.getHttpChannel().getConnector(); for (Entry entry : entries) { // reference equality works fine — none of the connectors implement #equals(Object) if (entry.connector == connector) { entry.handler.handle(target, baseRequest, request, response); return; } } } }
@Override public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { Handler handler = HttpServer.this.handlers.poll(); if (handler == null) { response.sendError(500, "No handler enqueued"); response.getOutputStream().flush(); response.getOutputStream().close(); } else { handler.handle(target, baseRequest, request, response); } } }
@Override public void handle(String s, Request request, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) throws IOException, ServletException { Map<String, String[]> params = httpServletRequest.getParameterMap(); if(params.containsKey("callback")) { OutputStream out = httpServletResponse.getOutputStream(); GenericResponseWrapper wrapper = new GenericResponseWrapper(httpServletResponse); try { handler.handle(s, request, httpServletRequest, wrapper); if (httpServletResponse.getStatus() >= 400) { out.write((params.get("callback")[0] + "({error: 'error'});").getBytes()); } else { out.write((params.get("callback")[0] + "(").getBytes()); out.write(wrapper.getData()); out.write(");".getBytes()); } wrapper.setContentType("text/javascript;charset=UTF-8"); out.close(); } catch (Exception e) { out.write((params.get("callback")[0] + "({error: 'error'});").getBytes()); wrapper.setContentType("text/javascript;charset=UTF-8"); out.close(); throw e; } } else { handler.handle(s, request, httpServletRequest, httpServletResponse); } }
@Test public void shouldNotHandleForRails4DevelopmentMode() throws IOException, ServletException { when(systemEnvironment.useCompressedJs()).thenReturn(false); String target = "/go/assets/junk"; Request request = mock(Request.class); HttpServletResponse response = mock(HttpServletResponse.class); Request baseRequest = mock(Request.class); ResourceHandler resourceHandler = mock(ResourceHandler.class); ReflectionUtil.setField(((HandlerWrapper) handler.getHandler()).getHandler(), "resourceHandler", resourceHandler); handler.getHandler().handle(target, baseRequest, request, response); verify(resourceHandler, never()).handle(any(String.class), any(Request.class), any(HttpServletRequest.class), any(HttpServletResponse.class)); }
@Test public void shouldPassOverHandlingToResourceHandler() throws Exception { when(systemEnvironment.useCompressedJs()).thenReturn(true); String target = "/go/assets/junk"; Request request = mock(Request.class); HttpServletResponse response = mock(HttpServletResponse.class); Request baseRequest = mock(Request.class); AssetsContextHandler.AssetsHandler resourceHandler = mock(AssetsContextHandler.AssetsHandler.class); handler.setHandler(resourceHandler); handler.getHandler().handle(target, baseRequest, request, response); verify(resourceHandler).handle(target, baseRequest, request, response); }
private MockResponse request(String target, String acceptHeaderValue) throws Exception { Request baseRequest = mock(Request.class); HttpFields httpFields = new HttpFields(); if (acceptHeaderValue != null) { httpFields.add("Accept", acceptHeaderValue); } when(baseRequest.getHttpFields()).thenReturn(httpFields); HttpServletRequest servletRequest = mock(HttpServletRequest.class); HttpServletResponse servletResponse = mock(HttpServletResponse.class); PrintWriter printWriter = mock(PrintWriter.class); when(servletResponse.getWriter()).thenReturn(printWriter); handler.getHandler().handle(target, baseRequest, servletRequest, servletResponse); return new MockResponse(servletResponse, printWriter); }
@Override public void handle( String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response ) throws IOException, ServletException { HttpChannel httpChannel = baseRequest.getHttpChannel(); if ( httpChannel != null ) // if the channel is not null, all good, you handle yourself. { super.handle( target, baseRequest, request, response ); } else // if we do not have a real channel, then we just log ourselves { try { if ( _handler != null ) { _handler.handle( target, baseRequest, request, response ); } } finally { RequestLog requestLog = getRequestLog(); if ( requestLog != null && baseRequest.getDispatcherType() == DispatcherType.REQUEST ) { requestLog.log( baseRequest, (Response) response ); } } } } }
handler.handle(pathInContext, baseRequest, request, response); if (authenticator!=null) authenticator.secureResponse(request, response, isAuthMandatory, userAuth); handler.handle(pathInContext, baseRequest, request, response); if (_identityService!=null) previousIdentity = _identityService.associate(null); handler.handle(pathInContext, baseRequest, request, response); if (authenticator!=null) authenticator.secureResponse(request, response, isAuthMandatory, null); handler.handle(pathInContext, baseRequest, request, response);
public final void nextHandle(String target, final Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { // this method has been manually inlined in several locations, but // is called protected by an if(never()), so your IDE can find those // locations if this code is changed. if (_nextScope!=null && _nextScope==_handler) _nextScope.doHandle(target,baseRequest,request, response); else if (_handler!=null) _handler.handle(target,baseRequest, request, response); }
public final void nextHandle(String target, final Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { // this method has been manually inlined in several locations, but // is called protected by an if(never()), so your IDE can find those // locations if this code is changed. if (_nextScope!=null && _nextScope==_handler) _nextScope.doHandle(target,baseRequest,request, response); else if (_handler!=null) _handler.handle(target,baseRequest, request, response); }
public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { if (_handler!=null && isStarted()) { _handler.handle(target,baseRequest, request, response); } }
public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { if (_handler != null && isStarted()) { _handler.handle(target,baseRequest,request,response); } }
@Override public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { final Handler handler = handlers.getBest(baseRequest.getRequestURI()); if (handler != null) { handler.handle(target, baseRequest, request, response); } } }
@Override public void doHandle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { // start manual inline of nextHandle(target,baseRequest,request,response); if (never()) nextHandle(target,baseRequest,request,response); else if (_nextScope != null && _nextScope == _handler) _nextScope.doHandle(target,baseRequest,request,response); else if (_handler != null) _handler.handle(target,baseRequest,request,response); // end manual inline }
@Override public void doHandle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { // start manual inline of nextHandle(target,baseRequest,request,response); if (never()) nextHandle(target,baseRequest,request,response); else if (_nextScope != null && _nextScope == _handler) _nextScope.doHandle(target,baseRequest,request,response); else if (_handler != null) _handler.handle(target,baseRequest,request,response); // end manual inline }
@Override public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { if (baseRequest.getDispatcherType()==DispatcherType.REQUEST) baseRequest.getHttpChannel().addRequestLog(_requestLog); if (_handler!=null) _handler.handle(target,baseRequest, request, response); }
@Override public void doHandle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { // start manual inline of nextHandle(target,baseRequest,request,response); if (never()) nextHandle(target,baseRequest,request,response); else if (_nextScope != null && _nextScope == _handler) _nextScope.doHandle(target,baseRequest,request,response); else if (_handler != null) _handler.handle(target,baseRequest,request,response); // end manual inline }
@Override public void doHandle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { // start manual inline of nextHandle(target,baseRequest,request,response); if (never()) nextHandle(target,baseRequest,request,response); else if (_nextScope != null && _nextScope == _handler) _nextScope.doHandle(target,baseRequest,request,response); else if (_handler != null) _handler.handle(target,baseRequest,request,response); // end manual inline }
public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { if (!request.isSecure()) { baseRequest.getResponse().sendRedirect("https://" + baseRequest.getServerName() + ":" + httpsPort + baseRequest.getPathInfo()); baseRequest.setHandled(true); } else { getHandler().handle(target, baseRequest, request, response); } } }