protected boolean isEndOfRequestResponse(Object msg) { if (msg instanceof Http2HeadersFrame) { return ((Http2HeadersFrame) msg).isEndStream(); } if (msg instanceof Http2DataFrame) { return ((Http2DataFrame) msg).isEndStream(); } return false; }
protected boolean isEndOfRequestResponse(Object msg) { if (msg instanceof Http2HeadersFrame) { return ((Http2HeadersFrame) msg).isEndStream(); } if (msg instanceof Http2DataFrame) { return ((Http2DataFrame) msg).isEndStream(); } return false; }
/** * Process incoming data. */ private void onDataRead(ChannelHandlerContext ctx, Http2DataFrame data) throws Exception { isList.add(new ByteBufInputStream(data.content())); if (data.isEndStream()) { isList.add(NettyInputStream.END_OF_INPUT); } }
@Override public void channelRead(ChannelHandlerContext ctx, Object msg) throws Exception { if (msg instanceof Http2StreamFrame) { // Handle HTTP/2 clear text upgrade request if (msg instanceof Http2HeadersFrame) { Http2HeadersFrame frame = (Http2HeadersFrame) msg; connection.onHeadersRead(ctx, 1, frame.headers(), frame.padding(), frame.isEndStream()); } else if (msg instanceof Http2DataFrame) { Http2DataFrame frame = (Http2DataFrame) msg; connection.onDataRead(ctx, 1, frame.content(), frame.padding(), frame.isEndStream()); } } else { super.channelRead(ctx, msg); } }
if (dataFrame.isEndStream()) { out.add(new DefaultLastHttpContent(dataFrame.content().retain(), validateHeaders)); } else {
Http2DataFrame dataFrame = (Http2DataFrame) msg; encoder().writeData(ctx, dataFrame.stream().id(), dataFrame.content(), dataFrame.padding(), dataFrame.isEndStream(), promise); } else if (msg instanceof Http2HeadersFrame) { writeHeadersFrame(ctx, (Http2HeadersFrame) msg, promise);
Http2DataFrame dataFrame = (Http2DataFrame) msg; encoder().writeData(ctx, dataFrame.stream().id(), dataFrame.content(), dataFrame.padding(), dataFrame.isEndStream(), promise); } else if (msg instanceof Http2HeadersFrame) { writeHeadersFrame(ctx, (Http2HeadersFrame) msg, promise);
Http2DataFrame dataFrame = (Http2DataFrame) msg; encoder().writeData(ctx, dataFrame.stream().id(), dataFrame.content(), dataFrame.padding(), dataFrame.isEndStream(), promise); } else if (msg instanceof Http2HeadersFrame) { writeHeadersFrame(ctx, (Http2HeadersFrame) msg, promise);
@Override public void channelRead(ChannelHandlerContext ctx, Object msg) throws Exception { if (msg instanceof Http2StreamFrame) { // Handle HTTP/2 clear text upgrade request if (msg instanceof Http2HeadersFrame) { Http2HeadersFrame frame = (Http2HeadersFrame) msg; connection.onHeadersRead(ctx, 1, frame.headers(), frame.padding(), frame.isEndStream()); } else if (msg instanceof Http2DataFrame) { Http2DataFrame frame = (Http2DataFrame) msg; connection.onDataRead(ctx, 1, frame.content(), frame.padding(), frame.isEndStream()); } } else { super.channelRead(ctx, msg); } }
protected boolean isEndOfRequestResponse(Object msg) { if (msg instanceof Http2HeadersFrame) { return ((Http2HeadersFrame) msg).isEndStream(); } if (msg instanceof Http2DataFrame) { return ((Http2DataFrame) msg).isEndStream(); } return false; }
@Override public void write(ChannelHandlerContext ctx, Object msg, ChannelPromise promise) { if (msg instanceof Http2Headers) { msg = new DefaultHttp2HeadersFrame((Http2Headers) msg); } boolean endOfHttp2Stream = false; if (msg instanceof Http2DataFrame) { endOfHttp2Stream = ((Http2DataFrame) msg).isEndStream(); } if (!endOfHttp2Stream && msg instanceof ByteBuf && ctx.channel() instanceof Http2StreamChannel) { msg = new DefaultHttp2DataFrame((ByteBuf) msg); } ctx.write(msg, promise); }
private void onDataRead(Http2DataFrame dataFrame, ChannelHandlerContext ctx) throws Http2Exception { ByteBuf data = dataFrame.content(); data.retain(); if (!dataFrame.isEndStream()) { ctx.fireChannelRead(new DefaultHttpContent(data)); } else { ctx.fireChannelRead(new DefaultLastHttpContent(data)); } }
private void onDataRead(Http2DataFrame dataFrame, ChannelHandlerContext ctx) throws Http2Exception { ByteBuf data = dataFrame.content(); data.retain(); if (!dataFrame.isEndStream()) { ctx.fireChannelRead(new DefaultHttpContent(data)); } else { ctx.fireChannelRead(new DefaultLastHttpContent(data)); } }
@Override public void write(ChannelHandlerContext ctx, Object msg, ChannelPromise promise) { if (msg instanceof Http2Headers) { msg = new DefaultHttp2HeadersFrame((Http2Headers) msg); } boolean endOfHttp2Stream = false; if (msg instanceof Http2DataFrame) { endOfHttp2Stream = ((Http2DataFrame) msg).isEndStream(); } if (!endOfHttp2Stream && msg instanceof ByteBuf && ctx.channel() instanceof Http2StreamChannel) { msg = new DefaultHttp2DataFrame((ByteBuf) msg); } ctx.write(msg, promise); }
private void writeData( ChannelHandlerContext ctx, Http2DataFrame data, ChannelPromise promise, int currentStreamId) throws Exception { encoder().writeData(ctx, currentStreamId, data.content(), 0, data.isEndStream(), promise); }
private void writeData( ChannelHandlerContext ctx, Http2DataFrame data, ChannelPromise promise, int currentStreamId) throws Exception { encoder().writeData(ctx, currentStreamId, data.content(), 0, data.isEndStream(), promise); }
@Override public void write(ChannelHandlerContext ctx, Object msg, ChannelPromise promise) throws Exception { boolean lastContent = false; if (msg instanceof Http2HeadersFrame) { final Http2HeadersFrame responseHeaders = (Http2HeadersFrame) msg; final Http2Headers headers = responseHeaders.headers(); lastContent = responseHeaders.isEndStream(); accessLog.status(headers.status()) .chunked(true); } if (msg instanceof Http2DataFrame) { final Http2DataFrame data = (Http2DataFrame) msg; lastContent = data.isEndStream(); accessLog.increaseContentLength(data.content().readableBytes()); } if (lastContent) { ctx.write(msg, promise) .addListener(future -> { if (future.isSuccess()) { accessLog.log(); } }); return; } ctx.write(msg, promise); } }
@Override public void write(ChannelHandlerContext ctx, Object msg, ChannelPromise promise) throws Exception { boolean lastContent = false; if (msg instanceof Http2HeadersFrame) { final Http2HeadersFrame responseHeaders = (Http2HeadersFrame) msg; final Http2Headers headers = responseHeaders.headers(); lastContent = responseHeaders.isEndStream(); accessLog.status(headers.status()) .chunked(true); } if (msg instanceof Http2DataFrame) { final Http2DataFrame data = (Http2DataFrame) msg; lastContent = data.isEndStream(); accessLog.increaseContentLength(data.content().readableBytes()); } if (lastContent) { ctx.write(msg, promise) .addListener(future -> { if (future.isSuccess()) { accessLog.log(); } }); return; } ctx.write(msg, promise); } }
@Override protected void onInboundNext(ChannelHandlerContext ctx, Object msg) { if (msg instanceof Http2DataFrame) { Http2DataFrame data = (Http2DataFrame) msg; super.onInboundNext(ctx, data.content()); if (data.isEndStream()) { onInboundComplete(); } return; } else if(msg instanceof Http2HeadersFrame) { listener().onStateChange(this, HttpServerState.REQUEST_RECEIVED); if (((Http2HeadersFrame) msg).isEndStream()) { super.onInboundNext(ctx, msg); } return; } super.onInboundNext(ctx, msg); } }
@Override protected void onInboundNext(ChannelHandlerContext ctx, Object msg) { if (msg instanceof Http2DataFrame) { Http2DataFrame data = (Http2DataFrame) msg; super.onInboundNext(ctx, data.content()); if (data.isEndStream()) { onInboundComplete(); } return; } else if(msg instanceof Http2HeadersFrame) { listener().onStateChange(this, HttpServerState.REQUEST_RECEIVED); if (((Http2HeadersFrame) msg).isEndStream()) { super.onInboundNext(ctx, msg); } return; } super.onInboundNext(ctx, msg); } }