if (!response.getRequest().getRequest().getConnection().isOpen()) { LOG.debug("Consumer connection was closed. It will be removed."); return false;
request.getRequest().getConnection() .addCloseListener((closeable, iCloseType) -> { broker.removeSuspendedResponse(graphAffinity, response); request.getRequest().getConnection() .addCloseListener((closeable, iCloseType) -> { broker.deletePriorityTask(task.taskId); request.getRequest().getConnection().addCloseListener((c, i) -> { broker.removeSinglePointChannel(graphAffinity, wr); });
public GrizzlyResponse(final HttpResponsePacket httpResponsePacket, final HttpResponseStatus status, final HttpResponseHeaders headers, final List<HttpResponseBodyPart> bodyParts) { super(status, headers, bodyParts); this.httpResponsePacket = httpResponsePacket; if (isNonEmpty(bodyParts)) { if (bodyParts.size() == 1) { responseBody = ((GrizzlyResponseBodyPart) bodyParts.get(0)).getBodyBuffer(); } else { final Buffer firstBuffer = ((GrizzlyResponseBodyPart) bodyParts.get(0)).getBodyBuffer(); final MemoryManager mm = httpResponsePacket.getRequest().getConnection().getMemoryManager(); Buffer constructedBodyBuffer = firstBuffer; for (int i = 1, len = bodyParts.size(); i < len; i++) { constructedBodyBuffer = Buffers.appendBuffers(mm, constructedBodyBuffer, ((GrizzlyResponseBodyPart) bodyParts.get(i)).getBodyBuffer()); } responseBody = constructedBodyBuffer; } } else { responseBody = Buffers.EMPTY_BUFFER; } }
/** * Attempts to optimize the buffer size based on the presence of the content length header, the connection buffer size and the * maximum buffer size possible. Defaults to an ~32KB buffer when transfer encoding is used. * * @param headers the current headers received * @throws IllegalAccessException */ private void calculateBufferSize(HttpResponseHeaders headers) { int maxBufferSize = MAX_RECEIVE_BUFFER_SIZE; String contentLength = headers.getHeaders().getFirstValue(CONTENT_LENGTH); if (!isEmpty(contentLength) && isEmpty(headers.getHeaders().getFirstValue(TRANSFER_ENCODING))) { int contentLengthInt = valueOf(contentLength); try { if (responseField != null && headers instanceof GrizzlyResponseHeaders) { maxBufferSize = (((HttpResponsePacket) responseField.get(headers)).getRequest().getConnection().getReadBufferSize()); } } catch (IllegalAccessException e) { LOGGER.debug("Unable to access connection buffer size."); } bufferSize = min(maxBufferSize, contentLengthInt); } else { // Assume maximum 32Kb chunk size + 10 bytes for chunk size and new lines etc. (need to confirm is this is needed, but use // for now) bufferSize = KB.toBytes(32) + 10; } LOGGER .debug("Max buffer size = {} bytes, Connection buffer size = {} bytes, Content-length = {} bytes, Calculated buffer size = {} bytes", MAX_RECEIVE_BUFFER_SIZE, maxBufferSize, contentLength, bufferSize); }
public GrizzlyResponse(final HttpResponsePacket httpResponsePacket, final HttpResponseStatus status, final HttpResponseHeaders headers, final List<HttpResponseBodyPart> bodyParts) { super(status, headers, bodyParts); this.httpResponsePacket = httpResponsePacket; if (isNonEmpty(bodyParts)) { if (bodyParts.size() == 1) { responseBody = ((GrizzlyResponseBodyPart) bodyParts.get(0)).getBodyBuffer(); } else { final Buffer firstBuffer = ((GrizzlyResponseBodyPart) bodyParts.get(0)).getBodyBuffer(); final MemoryManager mm = httpResponsePacket.getRequest().getConnection().getMemoryManager(); Buffer constructedBodyBuffer = firstBuffer; for (int i = 1, len = bodyParts.size(); i < len; i++) { constructedBodyBuffer = Buffers.appendBuffers(mm, constructedBodyBuffer, ((GrizzlyResponseBodyPart) bodyParts.get(i)).getBodyBuffer()); } responseBody = constructedBodyBuffer; } } else { responseBody = Buffers.EMPTY_BUFFER; } }
public GrizzlyResponse(final HttpResponsePacket httpResponsePacket, final HttpResponseStatus status, final HttpResponseHeaders headers, final List<HttpResponseBodyPart> bodyParts) { super(status, headers, bodyParts); this.httpResponsePacket = httpResponsePacket; if (isNonEmpty(bodyParts)) { if (bodyParts.size() == 1) { responseBody = ((GrizzlyResponseBodyPart) bodyParts.get(0)).getBodyBuffer(); } else { final Buffer firstBuffer = ((GrizzlyResponseBodyPart) bodyParts.get(0)).getBodyBuffer(); final MemoryManager mm = httpResponsePacket.getRequest().getConnection().getMemoryManager(); Buffer constructedBodyBuffer = firstBuffer; for (int i = 1, len = bodyParts.size(); i < len; i++) { constructedBodyBuffer = Buffers.appendBuffers(mm, constructedBodyBuffer, ((GrizzlyResponseBodyPart) bodyParts.get(i)).getBodyBuffer()); } responseBody = constructedBodyBuffer; } } else { responseBody = Buffers.EMPTY_BUFFER; } }
public GrizzlyResponse(final HttpResponsePacket httpResponsePacket, final HttpResponseStatus status, final HttpResponseHeaders headers, final List<HttpResponseBodyPart> bodyParts) { super(status, headers, bodyParts); this.httpResponsePacket = httpResponsePacket; if (isNonEmpty(bodyParts)) { if (bodyParts.size() == 1) { responseBody = ((GrizzlyResponseBodyPart) bodyParts.get(0)).getBodyBuffer(); } else { final Buffer firstBuffer = ((GrizzlyResponseBodyPart) bodyParts.get(0)).getBodyBuffer(); final MemoryManager mm = httpResponsePacket.getRequest().getConnection().getMemoryManager(); Buffer constructedBodyBuffer = firstBuffer; for (int i = 1, len = bodyParts.size(); i < len; i++) { constructedBodyBuffer = Buffers.appendBuffers(mm, constructedBodyBuffer, ((GrizzlyResponseBodyPart) bodyParts.get(i)).getBodyBuffer()); } responseBody = constructedBodyBuffer; } } else { responseBody = Buffers.EMPTY_BUFFER; } }
@Override public void onClosed(Closeable closeable, CloseType type) throws IOException { if (responseStatus != null && // responseStatus==null if request wasn't even sent isGracefullyFinishResponseOnClose()) { // Connection was closed. // This event is fired only for responses, which don't have // associated transfer-encoding or content-length. // We have to complete such a request-response processing gracefully. final Connection c = responseStatus.getResponse() .getRequest().getConnection(); final FilterChain fc = (FilterChain) c.getProcessor(); fc.fireEventUpstream(c, new GracefulCloseEvent(HttpTransactionContext.this), null); } else if (CloseType.REMOTELY.equals(type)) { abort(REMOTELY_CLOSED_EXCEPTION); } } };
final Connection connection = request.getConnection(); request.setServerPort(((InetSocketAddress) connection.getLocalAddress()).getPort()); final InetAddress localAddress = ((InetSocketAddress) connection.getLocalAddress()).getAddress();
final Connection connection = request.getConnection(); request.setServerPort(((InetSocketAddress) connection.getLocalAddress()).getPort()); final InetAddress localAddress = ((InetSocketAddress) connection.getLocalAddress()).getAddress();
final Connection connection = request.getConnection(); request.setServerPort(((InetSocketAddress) connection.getLocalAddress()).getPort()); final InetAddress localAddress = ((InetSocketAddress) connection.getLocalAddress()).getAddress();
final Connection connection = request.getConnection(); request.setServerPort(((InetSocketAddress) connection.getLocalAddress()).getPort()); final InetAddress localAddress = ((InetSocketAddress) connection.getLocalAddress()).getAddress();
final Connection connection = request.getConnection(); request.setServerPort(((InetSocketAddress) connection.getLocalAddress()).getPort()); final InetAddress localAddress = ((InetSocketAddress) connection.getLocalAddress()).getAddress();
final Connection connection = request.getConnection(); request.setServerPort(((InetSocketAddress) connection.getLocalAddress()).getPort()); final InetAddress localAddress = ((InetSocketAddress) connection.getLocalAddress()).getAddress();
holder.application = app; protocolHandler.handshake(ctx, app, requestContent); request.getConnection().addCloseListener(new GenericCloseListener() { @Override public void onClosed(final Closeable closeable,
holder.application = app; protocolHandler.handshake(ctx, app, requestContent); request.getConnection().addCloseListener(new GenericCloseListener() { @Override public void onClosed(final Closeable closeable,
holder.application = app; protocolHandler.handshake(ctx, app, requestContent); request.getConnection().addCloseListener(new GenericCloseListener() { @Override public void onClosed(final Closeable closeable,
holder.application = app; protocolHandler.handshake(ctx, app, requestContent); request.getConnection().addCloseListener(new GenericCloseListener() { @Override public void onClosed(final Closeable closeable,
holder.application = app; protocolHandler.handshake(ctx, app, requestContent); request.getConnection().addCloseListener(new GenericCloseListener() { @Override public void onClosed(final Closeable closeable,
holder.application = app; protocolHandler.handshake(ctx, app, requestContent); request.getConnection().addCloseListener(new GenericCloseListener() { @Override public void onClosed(final Closeable closeable,