private void onData(ByteBuffer buffer, boolean fragment, int padding) { DataFrame frame = new DataFrame(getStreamId(), buffer, !fragment && isEndStream(), padding); notifyData(frame); }
private void onData(ByteBuffer buffer, boolean fragment, int padding) { DataFrame frame = new DataFrame(getStreamId(), buffer, !fragment && isEndStream(), padding); notifyData(frame); }
private void sendDataFrame(ByteBuffer content, boolean lastContent, boolean endStream, Callback callback) { if (LOG.isDebugEnabled()) { LOG.debug("HTTP2 Response #{}/{}: {} content bytes{}", stream.getId(), Integer.toHexString(stream.getSession().hashCode()), content.remaining(), lastContent ? " (last chunk)" : ""); } DataFrame frame = new DataFrame(stream.getId(), content, endStream); stream.data(frame, callback); }
@Override protected void sendContent(HttpExchange exchange, HttpContent content, Callback callback) { if (content.isConsumed()) { callback.succeeded(); } else { Stream stream = getHttpChannel().getStream(); Supplier<HttpFields> trailers = exchange.getRequest().getTrailers(); DataFrame frame = new DataFrame(stream.getId(), content.getByteBuffer(), trailers == null && content.isLast()); stream.data(frame, callback); } }
if (advanced || lastContent) DataFrame dataFrame = new DataFrame(stream.getId(), content.getByteBuffer(), lastContent); stream.data(dataFrame, callback); return;
notifyContent(exchange, new DataFrame(stream.getId(), BufferUtil.EMPTY_BUFFER, true), Callback.NOOP);