List of usage examples for io.netty.handler.codec.http HttpResponseStatus CONTINUE
HttpResponseStatus CONTINUE
To view the source code for io.netty.handler.codec.http HttpResponseStatus CONTINUE.
Click Source Link
From source file:org.restnext.server.ServerHandler.java
License:Apache License
@Override protected void channelRead0(ChannelHandlerContext ctx, FullHttpRequest req) { if (req.decoderResult().isFailure()) { throw new ServerException(req.decoderResult().cause(), BAD_REQUEST); }//from w w w . ja v a 2 s . c o m // Handle 100 - Continue request. if (HttpUtil.is100ContinueExpected(req)) { ctx.write(new DefaultFullHttpResponse(req.protocolVersion(), HttpResponseStatus.CONTINUE)); } // Create Request from FullHttpRequest final Request request = new RequestImpl(ctx, req); final String uri = request.getUri().toString(); final URI baseUri = request.getBaseUri(); final URI fullRequestUri = baseUri.resolve(uri); final List<MediaType> medias = request.getMediaType(); final Request.Method method = request.getMethod(); // Check security constraint for the request, // otherwise return 401 - Unauthorized response. if (!Security.checkAuthorization(request)) { throw new ServerException(String.format("Access denied for the uri %s", fullRequestUri), UNAUTHORIZED); } // Get registered route mapping for the request uri, otherwise return 404 - Not Found response. Route.Mapping routeMapping = Optional.ofNullable(Route.INSTANCE.getRouteMapping(uri)) .filter(Route.Mapping::isEnable).filter(mapping -> mapping.getRouteProvider() != null) .orElseThrow(() -> new ServerException(String .format("Route mapping not found for the method %s and uri %s", method, fullRequestUri), NOT_FOUND)); // Parse the uri parameters and add it to request parameters map. UrlMatch urlMatch = routeMapping.getUrlMatcher().match(uri); for (Map.Entry<String, String> entry : urlMatch.parameterSet()) { request.getParams().add(entry.getKey(), entry.getValue()); } // Check if the registered route mapping methods contains the request method, // otherwise return 405 - Method Not Allowed response. Optional.ofNullable(routeMapping.getMethods()) .filter(methods -> methods.contains(method) || methods.isEmpty()) .orElseThrow(() -> new ServerException( String.format("Method %s not allowed for the request uri %s", method, fullRequestUri), METHOD_NOT_ALLOWED)); // Check if the registered route mapping medias contains the request media, // otherwise return 415 Unsupported Media Type response. Optional.ofNullable(routeMapping.getMedias()).filter(routeMedias -> anyMatchMediaType(routeMedias, medias)) .orElseThrow(() -> new ServerException(String .format("Unsupported %s media type(s) for the request uri %s", medias, fullRequestUri), UNSUPPORTED_MEDIA_TYPE)); // Write the response for the request. write(ctx, Optional.ofNullable(routeMapping.writeResponse(request)).orElse(Response.noContent().build()), request.isKeepAlive()); }
From source file:org.restnext.server.ServerHandler.java
License:Apache License
private HttpResponseStatus fromStatus(Response.Status status) { switch (status) { case OK:/*from ww w . j av a2s .c o m*/ return HttpResponseStatus.OK; case CREATED: return HttpResponseStatus.CREATED; case ACCEPTED: return HttpResponseStatus.ACCEPTED; case NO_CONTENT: return HttpResponseStatus.NO_CONTENT; case RESET_CONTENT: return HttpResponseStatus.RESET_CONTENT; case PARTIAL_CONTENT: return HttpResponseStatus.PARTIAL_CONTENT; case MOVED_PERMANENTLY: return HttpResponseStatus.MOVED_PERMANENTLY; case FOUND: return HttpResponseStatus.FOUND; case SEE_OTHER: return HttpResponseStatus.SEE_OTHER; case NOT_MODIFIED: return HttpResponseStatus.NOT_MODIFIED; case USE_PROXY: return HttpResponseStatus.USE_PROXY; case TEMPORARY_REDIRECT: return HttpResponseStatus.TEMPORARY_REDIRECT; case BAD_REQUEST: return HttpResponseStatus.BAD_REQUEST; case UNAUTHORIZED: return HttpResponseStatus.UNAUTHORIZED; case PAYMENT_REQUIRED: return HttpResponseStatus.PAYMENT_REQUIRED; case FORBIDDEN: return HttpResponseStatus.FORBIDDEN; case NOT_FOUND: return HttpResponseStatus.NOT_FOUND; case METHOD_NOT_ALLOWED: return HttpResponseStatus.METHOD_NOT_ALLOWED; case NOT_ACCEPTABLE: return HttpResponseStatus.NOT_ACCEPTABLE; case PROXY_AUTHENTICATION_REQUIRED: return HttpResponseStatus.PROXY_AUTHENTICATION_REQUIRED; case REQUEST_TIMEOUT: return HttpResponseStatus.REQUEST_TIMEOUT; case CONFLICT: return HttpResponseStatus.CONFLICT; case GONE: return HttpResponseStatus.GONE; case LENGTH_REQUIRED: return HttpResponseStatus.LENGTH_REQUIRED; case PRECONDITION_FAILED: return HttpResponseStatus.PRECONDITION_FAILED; case REQUEST_ENTITY_TOO_LARGE: return HttpResponseStatus.REQUEST_ENTITY_TOO_LARGE; case REQUEST_URI_TOO_LONG: return HttpResponseStatus.REQUEST_URI_TOO_LONG; case UNSUPPORTED_MEDIA_TYPE: return HttpResponseStatus.UNSUPPORTED_MEDIA_TYPE; case REQUESTED_RANGE_NOT_SATISFIABLE: return HttpResponseStatus.REQUESTED_RANGE_NOT_SATISFIABLE; case EXPECTATION_FAILED: return HttpResponseStatus.EXPECTATION_FAILED; case INTERNAL_SERVER_ERROR: return HttpResponseStatus.INTERNAL_SERVER_ERROR; case NOT_IMPLEMENTED: return HttpResponseStatus.NOT_IMPLEMENTED; case BAD_GATEWAY: return HttpResponseStatus.BAD_GATEWAY; case SERVICE_UNAVAILABLE: return HttpResponseStatus.SERVICE_UNAVAILABLE; case GATEWAY_TIMEOUT: return HttpResponseStatus.GATEWAY_TIMEOUT; case HTTP_VERSION_NOT_SUPPORTED: return HttpResponseStatus.HTTP_VERSION_NOT_SUPPORTED; case CONTINUE: return HttpResponseStatus.CONTINUE; default: throw new RuntimeException(String.format("Status: %s not supported", status)); } }
From source file:org.springframework.boot.context.embedded.netty.ServletContentHandler.java
License:Apache License
@Override public void channelRead(ChannelHandlerContext ctx, Object msg) throws Exception { if (msg instanceof HttpRequest) { HttpRequest request = (HttpRequest) msg; HttpResponse response = new DefaultHttpResponse(HttpVersion.HTTP_1_1, HttpResponseStatus.OK, false); HttpHeaders.setKeepAlive(response, HttpHeaders.isKeepAlive(request)); NettyHttpServletResponse servletResponse = new NettyHttpServletResponse(ctx, servletContext, response); NettyHttpServletRequest servletRequest = new NettyHttpServletRequest(ctx, servletContext, request, servletResponse, inputStream); if (HttpHeaders.is100ContinueExpected(request)) { ctx.write(new DefaultFullHttpResponse(HttpVersion.HTTP_1_1, HttpResponseStatus.CONTINUE), ctx.voidPromise());//from w w w . j a v a 2s . c o m } ctx.fireChannelRead(servletRequest); } if (msg instanceof HttpContent) { inputStream.addContent((HttpContent) msg); } }
From source file:org.traccar.protocol.Mta6ProtocolDecoder.java
License:Apache License
private void sendContinue(Channel channel) { FullHttpResponse response = new DefaultFullHttpResponse(HttpVersion.HTTP_1_1, HttpResponseStatus.CONTINUE); channel.writeAndFlush(new NetworkMessage(response, channel.remoteAddress())); }
From source file:org.wingsource.wingweb.http.cxf.jaxrs.NettyHttpServletHandler.java
License:Apache License
@Override public void channelRead(ChannelHandlerContext ctx, Object msg) throws Exception { HttpRequest request = (HttpRequest) msg; if (HttpHeaders.is100ContinueExpected(request)) { ctx.write(new DefaultHttpResponse(HttpVersion.HTTP_1_1, HttpResponseStatus.CONTINUE)); }//from w ww . j a va 2 s.c o m // find the nettyHttpContextHandler by lookup the request url NettyHttpContextHandler nettyHttpContextHandler = pipelineFactory.getNettyHttpHandler(request.uri()); if (request.uri().equals("/snoop")) { new HttpSnoopServerHandler().channelRead(ctx, msg); } else if (nettyHttpContextHandler != null) { handleHttpServletRequest(ctx, request, nettyHttpContextHandler); } else { throw new RuntimeException( new Fault(new Message("NO_NETTY_SERVLET_HANDLER_FOUND", LOG, request.getUri()))); } }