Java Code Examples for org.jboss.netty.handler.codec.http.HttpResponse
The following examples show how to use
org.jboss.netty.handler.codec.http.HttpResponse. These examples are extracted from open source projects.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source Project: feeyo-hlsserver Source File: HlsStreamsHandler.java License: Apache License 2.0 | 6 votes |
@Override public void execute(ChannelHandlerContext ctx, MessageEvent e) throws Exception { VelocityBuilder velocityBuilder = new VelocityBuilder(); Map<String,Object> model = new HashMap<String, Object>(); model.put("streams", HlsLiveStreamMagr.INSTANCE().getAllLiveStream()); String htmlText = velocityBuilder.generate("streams.vm", "UTF8", model); HttpResponse response = new DefaultHttpResponse(HttpVersion.HTTP_1_1, HttpResponseStatus.OK); response.headers().add(HttpHeaders.Names.CONTENT_LENGTH, htmlText.length()); response.headers().set(HttpHeaders.Names.CONTENT_TYPE, "text/html; charset=UTF-8"); ChannelBuffer buffer = ChannelBuffers.copiedBuffer(htmlText, Charset.defaultCharset());// CharsetUtil.UTF_8); response.setContent(buffer); ChannelFuture channelFuture = ctx.getChannel().write(response); if (channelFuture.isSuccess()) { channelFuture.getChannel().close(); } }
Example 2
Source Project: feeyo-hlsserver Source File: WelcomeHandler.java License: Apache License 2.0 | 6 votes |
@Override public void execute(ChannelHandlerContext ctx, MessageEvent e) { VelocityBuilder velocityBuilder = new VelocityBuilder(); String htmlText = velocityBuilder.generate("index.vm", "UTF8", null); HttpResponse response = new DefaultHttpResponse(HttpVersion.HTTP_1_1, HttpResponseStatus.OK); response.headers().add(HttpHeaders.Names.CONTENT_LENGTH, htmlText.length()); response.headers().set(HttpHeaders.Names.CONTENT_TYPE, "text/html; charset=UTF-8"); ChannelBuffer buffer = ChannelBuffers.copiedBuffer(htmlText, CharsetUtil.UTF_8); response.setContent(buffer); ChannelFuture channelFuture = ctx.getChannel().write(response); if (channelFuture.isSuccess()) { channelFuture.getChannel().close(); } }
Example 3
Source Project: feeyo-hlsserver Source File: HttpServerRequestHandler.java License: Apache License 2.0 | 6 votes |
private void sendResponse(ChannelHandlerContext ctx, HttpResponse httpResponse){ boolean close = false; ChannelFuture channelFuture = null; try { channelFuture = ctx.getChannel().write(httpResponse); } catch (Exception e) { LOGGER.error("write response fail.", e); close = true; } finally { // close connection if (close || httpResponse == null || !Values.KEEP_ALIVE.equals(httpResponse.headers().get(HttpHeaders.Names.CONNECTION))) { if (channelFuture.isSuccess()) { channelFuture.getChannel().close(); } } } }
Example 4
Source Project: Elasticsearch Source File: CorsHandler.java License: Apache License 2.0 | 6 votes |
public static void setCorsResponseHeaders(HttpRequest request, HttpResponse resp, CorsConfig config) { if (!config.isCorsSupportEnabled()) { return; } String originHeader = request.headers().get(ORIGIN); if (!Strings.isNullOrEmpty(originHeader)) { final String originHeaderVal; if (config.isAnyOriginSupported()) { originHeaderVal = ANY_ORIGIN; } else if (config.isOriginAllowed(originHeader) || isSameOrigin(originHeader, request.headers().get(HOST))) { originHeaderVal = originHeader; } else { originHeaderVal = null; } if (originHeaderVal != null) { resp.headers().add(ACCESS_CONTROL_ALLOW_ORIGIN, originHeaderVal); } } if (config.isCredentialsAllowed()) { resp.headers().add(ACCESS_CONTROL_ALLOW_CREDENTIALS, "true"); } }
Example 5
Source Project: Elasticsearch Source File: CorsHandler.java License: Apache License 2.0 | 6 votes |
private boolean setOrigin(final HttpResponse response) { final String origin = request.headers().get(ORIGIN); if (!Strings.isNullOrEmpty(origin)) { if ("null".equals(origin) && config.isNullOriginAllowed()) { setAnyOrigin(response); return true; } if (config.isAnyOriginSupported()) { if (config.isCredentialsAllowed()) { echoRequestOrigin(response); setVaryHeader(response); } else { setAnyOrigin(response); } return true; } if (config.isOriginAllowed(origin)) { setOrigin(response, origin); setVaryHeader(response); return true; } } return false; }
Example 6
Source Project: netty-file-parent Source File: FileServerHandler.java License: Apache License 2.0 | 6 votes |
private void writeResponse(Channel channel) { ChannelBuffer buf = ChannelBuffers.copiedBuffer( this.responseContent.toString(), CharsetUtil.UTF_8); this.responseContent.setLength(0); boolean close = ("close".equalsIgnoreCase(this.request .getHeader("Connection"))) || ((this.request.getProtocolVersion() .equals(HttpVersion.HTTP_1_0)) && (!"keep-alive" .equalsIgnoreCase(this.request.getHeader("Connection")))); HttpResponse response = new DefaultHttpResponse(HttpVersion.HTTP_1_1, HttpResponseStatus.OK); response.setContent(buf); response.setHeader("Content-Type", "text/plain; charset=UTF-8"); if (!close) { response.setHeader("Content-Length", String.valueOf(buf.readableBytes())); } ChannelFuture future = channel.write(response); if (close) future.addListener(ChannelFutureListener.CLOSE); }
Example 7
Source Project: hadoop Source File: TestDelegationTokenRemoteFetcher.java License: Apache License 2.0 | 6 votes |
@Override public void handle(Channel channel, Token<DelegationTokenIdentifier> token, String serviceUrl) throws IOException { Assert.assertEquals(testToken, token); Credentials creds = new Credentials(); creds.addToken(new Text(serviceUrl), token); DataOutputBuffer out = new DataOutputBuffer(); creds.write(out); int fileLength = out.getData().length; ChannelBuffer cbuffer = ChannelBuffers.buffer(fileLength); cbuffer.writeBytes(out.getData()); HttpResponse response = new DefaultHttpResponse(HTTP_1_1, OK); response.setHeader(HttpHeaders.Names.CONTENT_LENGTH, String.valueOf(fileLength)); response.setContent(cbuffer); channel.write(response).addListener(ChannelFutureListener.CLOSE); }
Example 8
Source Project: big-c Source File: TestDelegationTokenRemoteFetcher.java License: Apache License 2.0 | 6 votes |
@Override public void handle(Channel channel, Token<DelegationTokenIdentifier> token, String serviceUrl) throws IOException { Assert.assertEquals(testToken, token); Credentials creds = new Credentials(); creds.addToken(new Text(serviceUrl), token); DataOutputBuffer out = new DataOutputBuffer(); creds.write(out); int fileLength = out.getData().length; ChannelBuffer cbuffer = ChannelBuffers.buffer(fileLength); cbuffer.writeBytes(out.getData()); HttpResponse response = new DefaultHttpResponse(HTTP_1_1, OK); response.setHeader(HttpHeaders.Names.CONTENT_LENGTH, String.valueOf(fileLength)); response.setContent(cbuffer); channel.write(response).addListener(ChannelFutureListener.CLOSE); }
Example 9
Source Project: Android-Airplay-Server Source File: RaopRtspChallengeResponseHandler.java License: MIT License | 6 votes |
@Override public void writeRequested(final ChannelHandlerContext ctx, final MessageEvent evt) throws Exception { final HttpResponse resp = (HttpResponse)evt.getMessage(); synchronized(this) { if (m_challenge != null) { try { /* Get appropriate response to challenge and * add to the response base-64 encoded. XXX */ final String sig = Base64.encodePadded(getSignature()); resp.setHeader(HeaderSignature, sig); } finally { /* Forget last challenge */ m_challenge = null; m_localAddress = null; } } } super.writeRequested(ctx, evt); }
Example 10
Source Project: netty-servlet Source File: HttpServerHandler.java License: Apache License 2.0 | 6 votes |
@Override public void messageReceived(ChannelHandlerContext ctx, MessageEvent event) throws Exception { if (event.getMessage() instanceof HttpRequest) { try { HttpServletRequest httpServletRequest = new NettyHttpServletRequestAdaptor((HttpRequest) event.getMessage(), ctx.getChannel()); HttpResponse response = new DefaultHttpResponse(HTTP_1_1, OK); response.setContent(new DynamicChannelBuffer(200)); HttpServletResponse httpServletResponse = new NettyHttpServletResponseAdaptor(response, ctx.getChannel()); dispatcher.dispatch(httpServletRequest,httpServletResponse); response.headers().set(HttpHeaders.Names.CONTENT_LENGTH,response.getContent().writerIndex()); ChannelFuture future = ctx.getChannel().write(response); future.addListener(ChannelFutureListener.CLOSE); } catch (Exception e) { e.printStackTrace(); } } }
Example 11
Source Project: elasticsearch-helper Source File: HttpInvoker.java License: Apache License 2.0 | 6 votes |
@SuppressWarnings("unchecked") @Override public void messageReceived(ChannelHandlerContext ctx, MessageEvent e) throws Exception { HttpInvocationContext<Request, Response> httpInvocationContext = contexts.get(ctx.getChannel()); if (httpInvocationContext == null) { throw new IllegalStateException("no context for channel?"); } try { if (e.getMessage() instanceof HttpResponse) { HttpResponse httpResponse = (HttpResponse) e.getMessage(); HttpAction<Request, Response> action = httpInvocationContext.getHttpAction(); ActionListener<Response> listener = httpInvocationContext.getListener(); httpInvocationContext.httpResponse = httpResponse; if (httpResponse.getContent().readable() && listener != null && action != null) { listener.onResponse(action.createResponse(httpInvocationContext)); } } } finally { ctx.getChannel().close(); contexts.remove(ctx.getChannel()); } }
Example 12
Source Project: elasticsearch-helper Source File: HttpElasticsearchClient.java License: Apache License 2.0 | 6 votes |
@SuppressWarnings("unchecked") @Override public void messageReceived(ChannelHandlerContext ctx, MessageEvent e) throws Exception { HttpInvocationContext<Request, Response> httpInvocationContext = contextMap.get(ctx.getChannel()); if (httpInvocationContext == null) { throw new IllegalStateException("no context for channel?"); } try { if (e.getMessage() instanceof HttpResponse) { HttpResponse httpResponse = (HttpResponse) e.getMessage(); HttpAction<Request, Response> action = httpInvocationContext.getHttpAction(); ActionListener<Response> listener = httpInvocationContext.getListener(); httpInvocationContext.httpResponse = httpResponse; if (httpResponse.getContent().readable() && listener != null && action != null) { listener.onResponse(action.createResponse(httpInvocationContext)); } } } finally { ctx.getChannel().close(); contextMap.remove(ctx.getChannel()); } }
Example 13
Source Project: elasticsearch-helper Source File: HttpRefreshIndexAction.java License: Apache License 2.0 | 6 votes |
@Override protected RefreshResponse createResponse(HttpInvocationContext<RefreshRequest,RefreshResponse> httpInvocationContext) { if (httpInvocationContext == null) { throw new IllegalStateException("no http context"); } HttpResponse httpResponse = httpInvocationContext.getHttpResponse(); try { BytesReference ref = new ChannelBufferBytesReference(httpResponse.getContent()); Map<String,Object> map = JsonXContent.jsonXContent.createParser(ref).map(); logger.info("{}", map); // RefreshResponse(int totalShards, int successfulShards, int failedShards, List<ShardOperationFailedException> shardFailures) { return new RefreshResponse(); } catch (IOException e) { // } return null; }
Example 14
Source Project: elasticsearch-helper Source File: HttpCreateIndexAction.java License: Apache License 2.0 | 6 votes |
@Override protected CreateIndexResponse createResponse(HttpInvocationContext<CreateIndexRequest,CreateIndexResponse> httpInvocationContext) { if (httpInvocationContext == null) { throw new IllegalStateException("no http context"); } HttpResponse httpResponse = httpInvocationContext.getHttpResponse(); try { BytesReference ref = new ChannelBufferBytesReference(httpResponse.getContent()); Map<String,Object> map = JsonXContent.jsonXContent.createParser(ref).map(); boolean acknowledged = map.containsKey("acknowledged") ? (Boolean)map.get("acknowledged") : false; return new CreateIndexResponse(acknowledged); } catch (IOException e) { // } return null; }
Example 15
Source Project: elasticsearch-helper Source File: HttpSearchAction.java License: Apache License 2.0 | 6 votes |
@Override @SuppressWarnings("unchecked") protected SearchResponse createResponse(HttpInvocationContext<SearchRequest,SearchResponse> httpInvocationContext) throws IOException { if (httpInvocationContext == null) { throw new IllegalStateException("no http context"); } HttpResponse httpResponse = httpInvocationContext.getHttpResponse(); logger.info("{}", httpResponse.getContent().toString(CharsetUtil.UTF_8)); BytesReference ref = new ChannelBufferBytesReference(httpResponse.getContent()); Map<String,Object> map = JsonXContent.jsonXContent.createParser(ref).map(); logger.info("{}", map); InternalSearchResponse internalSearchResponse = parseInternalSearchResponse(map); String scrollId = (String)map.get(SCROLL_ID); int totalShards = 0; int successfulShards = 0; if (map.containsKey(SHARDS)) { Map<String,?> shards = (Map<String,?>)map.get(SHARDS); totalShards = shards.containsKey(TOTAL) ? (Integer)shards.get(TOTAL) : -1; successfulShards = shards.containsKey(SUCCESSFUL) ? (Integer)shards.get(SUCCESSFUL) : -1; } int tookInMillis = map.containsKey(TOOK) ? (Integer)map.get(TOOK) : -1; ShardSearchFailure[] shardFailures = parseShardFailures(map); return new SearchResponse(internalSearchResponse, scrollId, totalShards, successfulShards, tookInMillis, shardFailures); }
Example 16
Source Project: elasticsearch-helper Source File: HttpBulkAction.java License: Apache License 2.0 | 6 votes |
@Override @SuppressWarnings("unchecked") protected BulkResponse createResponse(HttpInvocationContext<BulkRequest,BulkResponse> httpInvocationContext) { if (httpInvocationContext == null) { throw new IllegalStateException("no http context"); } HttpResponse httpResponse = httpInvocationContext.getHttpResponse(); try { BytesReference ref = new ChannelBufferBytesReference(httpResponse.getContent()); Map<String,Object> map = JsonXContent.jsonXContent.createParser(ref).map(); long tookInMillis = map.containsKey("took") ? (Integer)map.get("took") : -1L; BulkItemResponse[] responses = parseItems((List<Map<String,?>>)map.get("items")); return new BulkResponse(responses, tookInMillis); } catch (IOException e) { // } return null; }
Example 17
Source Project: zuul-netty Source File: HttpResponseFrameworkHandler.java License: Apache License 2.0 | 6 votes |
@Override public void writeRequested(ChannelHandlerContext ctx, MessageEvent e) throws Exception { if (e.getMessage() instanceof HttpResponse) { HttpResponse response = (HttpResponse) e.getMessage(); HttpRequest request = (HttpRequest) ctx.getAttachment(); LOG.debug("handler: {} is calling response-handler: {}", tag, responseHandler.getClass().getSimpleName()); responseHandler.responseReceived(new HttpRequestFrameworkAdapter(request), new HttpResponseFrameworkAdapter(response)); ctx.setAttachment(null); } else if (e.getMessage() instanceof HttpChunk) { LOG.debug("encountered a chunk, not passed to handler"); } super.writeRequested(ctx, e); }
Example 18
Source Project: tez Source File: ShuffleHandler.java License: Apache License 2.0 | 6 votes |
protected void populateHeaders(List<String> mapIds, String jobId, String dagId, String user, Range reduceRange, HttpResponse response, boolean keepAliveParam, Map<String, MapOutputInfo> mapOutputInfoMap) throws IOException { long contentLength = 0; // Content-Length only needs calculated for keep-alive keep alive if (connectionKeepAliveEnabled || keepAliveParam) { contentLength = getContentLength(mapIds, jobId, dagId, user, reduceRange, mapOutputInfoMap); } // Now set the response headers. setResponseHeaders(response, keepAliveParam, contentLength); }
Example 19
Source Project: Elasticsearch Source File: CorsHandler.java License: Apache License 2.0 | 5 votes |
private void handlePreflight(final ChannelHandlerContext ctx, final HttpRequest request) { final HttpResponse response = new DefaultHttpResponse(request.getProtocolVersion(), OK); if (setOrigin(response)) { setAllowMethods(response); setAllowHeaders(response); setAllowCredentials(response); setMaxAge(response); setPreflightHeaders(response); ctx.getChannel().write(response).addListener(ChannelFutureListener.CLOSE); } else { forbidden(ctx, request); } }
Example 20
Source Project: Elasticsearch Source File: CorsHandler.java License: Apache License 2.0 | 5 votes |
private void setAllowMethods(final HttpResponse response) { Set<String> strMethods = new HashSet<>(); for (HttpMethod method : config.allowedRequestMethods()) { strMethods.add(method.getName().trim()); } response.headers().set(ACCESS_CONTROL_ALLOW_METHODS, strMethods); }
Example 21
Source Project: netty-file-parent Source File: FileClientHandler.java License: Apache License 2.0 | 5 votes |
public void messageReceived(ChannelHandlerContext ctx, MessageEvent e) throws Exception { if (!this.readingChunks) { HttpResponse response = (HttpResponse) e.getMessage(); LOGGER.info("STATUS: " + response.getStatus()); if ((response.getStatus().getCode() == 200) && (response.isChunked())) { this.readingChunks = true; } else { ChannelBuffer content = response.getContent(); if (content.readable()) this.responseContent.append(content .toString(CharsetUtil.UTF_8)); } } else { HttpChunk chunk = (HttpChunk) e.getMessage(); if (chunk.isLast()) { this.readingChunks = false; this.responseContent.append(chunk.getContent().toString( CharsetUtil.UTF_8)); String json = this.responseContent.toString(); this.result = ((Result) JSONUtil.parseObject(json,Result.class)); } else { this.responseContent.append(chunk.getContent().toString( CharsetUtil.UTF_8)); } } }
Example 22
Source Project: hadoop Source File: ShuffleHandler.java License: Apache License 2.0 | 5 votes |
protected void populateHeaders(List<String> mapIds, String outputBaseStr, String user, int reduce, HttpRequest request, HttpResponse response, boolean keepAliveParam, Map<String, MapOutputInfo> mapOutputInfoMap) throws IOException { long contentLength = 0; for (String mapId : mapIds) { String base = outputBaseStr + mapId; MapOutputInfo outputInfo = getMapOutputInfo(base, mapId, reduce, user); if (mapOutputInfoMap.size() < mapOutputMetaInfoCacheSize) { mapOutputInfoMap.put(mapId, outputInfo); } // Index file Path indexFileName = lDirAlloc.getLocalPathToRead(base + "/file.out.index", conf); IndexRecord info = indexCache.getIndexInformation(mapId, reduce, indexFileName, user); ShuffleHeader header = new ShuffleHeader(mapId, info.partLength, info.rawLength, reduce); DataOutputBuffer dob = new DataOutputBuffer(); header.write(dob); contentLength += info.partLength; contentLength += dob.getLength(); } // Now set the response headers. setResponseHeaders(response, keepAliveParam, contentLength); }
Example 23
Source Project: hadoop Source File: ShuffleHandler.java License: Apache License 2.0 | 5 votes |
protected void setResponseHeaders(HttpResponse response, boolean keepAliveParam, long contentLength) { if (!connectionKeepAliveEnabled && !keepAliveParam) { LOG.info("Setting connection close header..."); response.setHeader(HttpHeaders.CONNECTION, CONNECTION_CLOSE); } else { response.setHeader(HttpHeaders.CONTENT_LENGTH, String.valueOf(contentLength)); response.setHeader(HttpHeaders.CONNECTION, HttpHeaders.KEEP_ALIVE); response.setHeader(HttpHeaders.KEEP_ALIVE, "timeout=" + connectionKeepAliveTimeOut); LOG.info("Content Length in shuffle : " + contentLength); } }
Example 24
Source Project: hadoop Source File: ShuffleHandler.java License: Apache License 2.0 | 5 votes |
protected void sendError(ChannelHandlerContext ctx, String message, HttpResponseStatus status) { HttpResponse response = new DefaultHttpResponse(HTTP_1_1, status); response.setHeader(CONTENT_TYPE, "text/plain; charset=UTF-8"); // Put shuffle version into http header response.setHeader(ShuffleHeader.HTTP_HEADER_NAME, ShuffleHeader.DEFAULT_HTTP_HEADER_NAME); response.setHeader(ShuffleHeader.HTTP_HEADER_VERSION, ShuffleHeader.DEFAULT_HTTP_HEADER_VERSION); response.setContent( ChannelBuffers.copiedBuffer(message, CharsetUtil.UTF_8)); // Close the connection as soon as the error message is sent. ctx.getChannel().write(response).addListener(ChannelFutureListener.CLOSE); }
Example 25
Source Project: hadoop Source File: TestDelegationTokenRemoteFetcher.java License: Apache License 2.0 | 5 votes |
@Override public void handle(Channel channel, Token<DelegationTokenIdentifier> token, String serviceUrl) throws IOException { Assert.assertEquals(testToken, token); byte[] bytes = EXP_DATE.getBytes(); ChannelBuffer cbuffer = ChannelBuffers.buffer(bytes.length); cbuffer.writeBytes(bytes); HttpResponse response = new DefaultHttpResponse(HTTP_1_1, OK); response.setHeader(HttpHeaders.Names.CONTENT_LENGTH, String.valueOf(bytes.length)); response.setContent(cbuffer); channel.write(response).addListener(ChannelFutureListener.CLOSE); }
Example 26
Source Project: hadoop Source File: TestDelegationTokenRemoteFetcher.java License: Apache License 2.0 | 5 votes |
@Override public void handle(Channel channel, Token<DelegationTokenIdentifier> token, String serviceUrl) throws IOException { Assert.assertEquals(testToken, token); HttpResponse response = new DefaultHttpResponse(HTTP_1_1, HttpResponseStatus.METHOD_NOT_ALLOWED); channel.write(response).addListener(ChannelFutureListener.CLOSE); }
Example 27
Source Project: hadoop Source File: TestDelegationTokenRemoteFetcher.java License: Apache License 2.0 | 5 votes |
@Override public void handle(Channel channel, Token<DelegationTokenIdentifier> token, String serviceUrl) throws IOException { Assert.assertEquals(testToken, token); HttpResponse response = new DefaultHttpResponse(HTTP_1_1, OK); channel.write(response).addListener(ChannelFutureListener.CLOSE); }
Example 28
Source Project: big-c Source File: ShuffleHandler.java License: Apache License 2.0 | 5 votes |
protected void populateHeaders(List<String> mapIds, String outputBaseStr, String user, int reduce, HttpRequest request, HttpResponse response, boolean keepAliveParam, Map<String, MapOutputInfo> mapOutputInfoMap) throws IOException { long contentLength = 0; for (String mapId : mapIds) { String base = outputBaseStr + mapId; MapOutputInfo outputInfo = getMapOutputInfo(base, mapId, reduce, user); if (mapOutputInfoMap.size() < mapOutputMetaInfoCacheSize) { mapOutputInfoMap.put(mapId, outputInfo); } // Index file Path indexFileName = lDirAlloc.getLocalPathToRead(base + "/file.out.index", conf); IndexRecord info = indexCache.getIndexInformation(mapId, reduce, indexFileName, user); ShuffleHeader header = new ShuffleHeader(mapId, info.partLength, info.rawLength, reduce); DataOutputBuffer dob = new DataOutputBuffer(); header.write(dob); contentLength += info.partLength; contentLength += dob.getLength(); } // Now set the response headers. setResponseHeaders(response, keepAliveParam, contentLength); }
Example 29
Source Project: big-c Source File: ShuffleHandler.java License: Apache License 2.0 | 5 votes |
protected void setResponseHeaders(HttpResponse response, boolean keepAliveParam, long contentLength) { if (!connectionKeepAliveEnabled && !keepAliveParam) { LOG.info("Setting connection close header..."); response.setHeader(HttpHeaders.CONNECTION, CONNECTION_CLOSE); } else { response.setHeader(HttpHeaders.CONTENT_LENGTH, String.valueOf(contentLength)); response.setHeader(HttpHeaders.CONNECTION, HttpHeaders.KEEP_ALIVE); response.setHeader(HttpHeaders.KEEP_ALIVE, "timeout=" + connectionKeepAliveTimeOut); LOG.info("Content Length in shuffle : " + contentLength); } }
Example 30
Source Project: big-c Source File: ShuffleHandler.java License: Apache License 2.0 | 5 votes |
protected void sendError(ChannelHandlerContext ctx, String message, HttpResponseStatus status) { HttpResponse response = new DefaultHttpResponse(HTTP_1_1, status); response.setHeader(CONTENT_TYPE, "text/plain; charset=UTF-8"); // Put shuffle version into http header response.setHeader(ShuffleHeader.HTTP_HEADER_NAME, ShuffleHeader.DEFAULT_HTTP_HEADER_NAME); response.setHeader(ShuffleHeader.HTTP_HEADER_VERSION, ShuffleHeader.DEFAULT_HTTP_HEADER_VERSION); response.setContent( ChannelBuffers.copiedBuffer(message, CharsetUtil.UTF_8)); // Close the connection as soon as the error message is sent. ctx.getChannel().write(response).addListener(ChannelFutureListener.CLOSE); }