• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Java Http2CodecUtil类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中io.netty.handler.codec.http2.Http2CodecUtil的典型用法代码示例。如果您正苦于以下问题:Java Http2CodecUtil类的具体用法?Java Http2CodecUtil怎么用?Java Http2CodecUtil使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



Http2CodecUtil类属于io.netty.handler.codec.http2包,在下文中一共展示了Http2CodecUtil类的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: channelRead

import io.netty.handler.codec.http2.Http2CodecUtil; //导入依赖的package包/类
@Override
public void channelRead(ChannelHandlerContext ctx, Object msg) throws Exception {
    if (needsToFilterUpgradeResponse && msg instanceof HttpResponse) {
        needsToFilterUpgradeResponse = false;
        final HttpResponse res = (HttpResponse) msg;
        if (res.status().code() == HttpResponseStatus.SWITCHING_PROTOCOLS.code()) {
            final HttpHeaders headers = res.headers();
            if (!headers.contains(HttpHeaderNames.UPGRADE)) {
                headers.set(HttpHeaderNames.UPGRADE,
                            Http2CodecUtil.HTTP_UPGRADE_PROTOCOL_NAME);
            }
        }

        if (!needsToFilterUpgradeRequest) {
            ctx.pipeline().remove(this);
        }
    }

    ctx.fireChannelRead(msg);
}
 
开发者ID:line,项目名称:armeria,代码行数:21,代码来源:HttpClientPipelineConfigurator.java


示例2: configureHttp1WithUpgrade

import io.netty.handler.codec.http2.Http2CodecUtil; //导入依赖的package包/类
private void configureHttp1WithUpgrade(ChannelHandlerContext ctx) {
    final ChannelPipeline p = ctx.pipeline();
    final HttpServerCodec http1codec = new HttpServerCodec(
            config.defaultMaxHttp1InitialLineLength(),
            config.defaultMaxHttp1HeaderSize(),
            config.defaultMaxHttp1ChunkSize());

    String baseName = name;
    baseName = addAfter(p, baseName, http1codec);
    baseName = addAfter(p, baseName, new HttpServerUpgradeHandler(
            http1codec,
            protocol -> {
                if (!AsciiString.contentEquals(Http2CodecUtil.HTTP_UPGRADE_PROTOCOL_NAME, protocol)) {
                    return null;
                }

                return new Http2ServerUpgradeCodec(
                        newHttp2ConnectionHandler(p));
            },
            UPGRADE_REQUEST_MAX_LENGTH));

    addAfter(p, baseName, new Http1RequestDecoder(config, ctx.channel(), SCHEME_HTTP));
}
 
开发者ID:line,项目名称:armeria,代码行数:24,代码来源:HttpServerPipelineConfigurator.java


示例3: manualSetUp

import io.netty.handler.codec.http2.Http2CodecUtil; //导入依赖的package包/类
@Override
protected void manualSetUp() throws Exception {
  assertNull("manualSetUp should not run more than once", handler());

  initChannel(new GrpcHttp2ServerHeadersDecoder(GrpcUtil.DEFAULT_MAX_HEADER_LIST_SIZE));

  // replace the keepAliveManager with spyKeepAliveManager
  spyKeepAliveManager =
      mock(KeepAliveManager.class, delegatesTo(handler().getKeepAliveManagerForTest()));
  handler().setKeepAliveManagerForTest(spyKeepAliveManager);

  // Simulate receipt of the connection preface
  handler().handleProtocolNegotiationCompleted(Attributes.EMPTY);
  channelRead(Http2CodecUtil.connectionPrefaceBuf());
  // Simulate receipt of initial remote settings.
  ByteBuf serializedSettings = serializeSettings(new Http2Settings());
  channelRead(serializedSettings);
}
 
开发者ID:grpc,项目名称:grpc-java,代码行数:19,代码来源:NettyServerHandlerTest.java


示例4: transportTracer_windowUpdate_local

import io.netty.handler.codec.http2.Http2CodecUtil; //导入依赖的package包/类
@Test
public void transportTracer_windowUpdate_local() throws Exception {
  manualSetUp();
  TransportStats before = transportTracer.getStats();
  assertEquals(Http2CodecUtil.DEFAULT_WINDOW_SIZE, before.remoteFlowControlWindow);
  assertEquals(flowControlWindow, before.localFlowControlWindow);

  // If the window size is below a certain threshold, netty will wait to apply the update.
  // Use a large increment to be sure that it exceeds the threshold.
  connection().local().flowController().incrementWindowSize(
      connection().connectionStream(), 8 * Http2CodecUtil.DEFAULT_WINDOW_SIZE);

  TransportStats after = transportTracer.getStats();
  assertEquals(Http2CodecUtil.DEFAULT_WINDOW_SIZE, after.remoteFlowControlWindow);
  assertEquals(flowControlWindow + 8 * Http2CodecUtil.DEFAULT_WINDOW_SIZE,
      connection().local().flowController().windowSize(connection().connectionStream()));
}
 
开发者ID:grpc,项目名称:grpc-java,代码行数:18,代码来源:NettyHandlerTestBase.java


示例5: newUpgradeCodec

import io.netty.handler.codec.http2.Http2CodecUtil; //导入依赖的package包/类
@Override
public UpgradeCodec newUpgradeCodec(CharSequence protocol) {
    if (AsciiString.contentEquals(Http2CodecUtil.HTTP_UPGRADE_PROTOCOL_NAME, protocol)) {
        return new Http2ServerUpgradeCodec(new Http2MultiplexCodec(true,
              new HelloWorldHttp2Handler()));
    } else {
        return null;
    }
}
 
开发者ID:cowthan,项目名称:JavaAyo,代码行数:10,代码来源:Http2ServerInitializer.java


示例6: newUpgradeCodec

import io.netty.handler.codec.http2.Http2CodecUtil; //导入依赖的package包/类
@Override
public UpgradeCodec newUpgradeCodec(CharSequence protocol) {
    if (AsciiString.contentEquals(Http2CodecUtil.HTTP_UPGRADE_PROTOCOL_NAME, protocol)) {
        return new Http2ServerUpgradeCodec(new HelloWorldHttp2HandlerBuilder().build());
    } else {
        return null;
    }
}
 
开发者ID:cowthan,项目名称:JavaAyo,代码行数:9,代码来源:Http2ServerInitializer.java


示例7: userEventTriggered

import io.netty.handler.codec.http2.Http2CodecUtil; //导入依赖的package包/类
@Override
public void userEventTriggered(ChannelHandlerContext ctx, Object evt) throws Exception {
    if (evt instanceof UpgradeEvent) {
        // Generate the initial Http2Settings frame,
        // so that the next handler knows the protocol upgrade occurred as well.
        ctx.fireChannelRead(DEFAULT_HTTP2_SETTINGS);

        // Continue handling the upgrade request after the upgrade is complete.
        final FullHttpRequest nettyReq = ((UpgradeEvent) evt).upgradeRequest();

        // Remove the headers related with the upgrade.
        nettyReq.headers().remove(HttpHeaderNames.CONNECTION);
        nettyReq.headers().remove(HttpHeaderNames.UPGRADE);
        nettyReq.headers().remove(Http2CodecUtil.HTTP_UPGRADE_SETTINGS_HEADER);

        if (logger.isDebugEnabled()) {
            logger.debug("{} Handling the pre-upgrade request ({}): {} {} {} ({}B)",
                         ctx.channel(), ((UpgradeEvent) evt).protocol(),
                         nettyReq.method(), nettyReq.uri(), nettyReq.protocolVersion(),
                         nettyReq.content().readableBytes());
        }

        channelRead(ctx, nettyReq);
        channelReadComplete(ctx);
        return;
    }

    ctx.fireUserEventTriggered(evt);
}
 
开发者ID:line,项目名称:armeria,代码行数:30,代码来源:Http1RequestDecoder.java


示例8: writeHeaders

import io.netty.handler.codec.http2.Http2CodecUtil; //导入依赖的package包/类
private void writeHeaders(
    ChannelHandlerContext ctx, Http2Headers headers, boolean eos, ChannelPromise promise)
    throws Exception {
  encoder()
      .writeHeaders(
          ctx,
          currentStreamId,
          headers,
          0,
          Http2CodecUtil.DEFAULT_PRIORITY_WEIGHT,
          false,
          0,
          eos,
          promise);
}
 
开发者ID:xjdr,项目名称:xio,代码行数:16,代码来源:Http2Handler.java


示例9: h2cOrHttp1

import io.netty.handler.codec.http2.Http2CodecUtil; //导入依赖的package包/类
private void h2cOrHttp1(final ChannelHandlerContext ctx) {
  ChannelPipeline p = ctx.pipeline();
  HttpServerCodec http1codec = http1Codec();

  String baseName = name;
  baseName = addAfter(p, baseName, "codec", http1codec);
  baseName = addAfter(p, baseName, "h2upgrade",
      new HttpServerUpgradeHandler(http1codec, protocol -> {
        if (!AsciiString.contentEquals(Http2CodecUtil.HTTP_UPGRADE_PROTOCOL_NAME, protocol)) {
          return null;
        }
        return new Http2ServerUpgradeCodec(newHttp2ConnectionHandler(p));
      }, maxContentLength));
}
 
开发者ID:jooby-project,项目名称:jooby,代码行数:15,代码来源:NettyPipeline.java


示例10: transportReadyDelayedUntilConnectionPreface

import io.netty.handler.codec.http2.Http2CodecUtil; //导入依赖的package包/类
@Test
public void transportReadyDelayedUntilConnectionPreface() throws Exception {
  initChannel(new GrpcHttp2ServerHeadersDecoder(GrpcUtil.DEFAULT_MAX_HEADER_LIST_SIZE));

  handler().handleProtocolNegotiationCompleted(Attributes.EMPTY);
  verify(transportListener, never()).transportReady(any(Attributes.class));

  // Simulate receipt of the connection preface
  channelRead(Http2CodecUtil.connectionPrefaceBuf());
  channelRead(serializeSettings(new Http2Settings()));
  verify(transportListener).transportReady(any(Attributes.class));
}
 
开发者ID:grpc,项目名称:grpc-java,代码行数:13,代码来源:NettyServerHandlerTest.java


示例11: transportTracer_windowSizeDefault

import io.netty.handler.codec.http2.Http2CodecUtil; //导入依赖的package包/类
@Test
public void transportTracer_windowSizeDefault() throws Exception {
  manualSetUp();
  TransportStats transportStats = transportTracer.getStats();
  assertEquals(Http2CodecUtil.DEFAULT_WINDOW_SIZE, transportStats.remoteFlowControlWindow);
  assertEquals(flowControlWindow, transportStats.localFlowControlWindow);
}
 
开发者ID:grpc,项目名称:grpc-java,代码行数:8,代码来源:NettyHandlerTestBase.java


示例12: transportTracer_windowSize

import io.netty.handler.codec.http2.Http2CodecUtil; //导入依赖的package包/类
@Test
public void transportTracer_windowSize() throws Exception {
  flowControlWindow = 1024 * 1024;
  manualSetUp();
  TransportStats transportStats = transportTracer.getStats();
  assertEquals(Http2CodecUtil.DEFAULT_WINDOW_SIZE, transportStats.remoteFlowControlWindow);
  assertEquals(flowControlWindow, transportStats.localFlowControlWindow);
}
 
开发者ID:grpc,项目名称:grpc-java,代码行数:9,代码来源:NettyHandlerTestBase.java


示例13: transportTracer_windowUpdate_remote

import io.netty.handler.codec.http2.Http2CodecUtil; //导入依赖的package包/类
@Test
public void transportTracer_windowUpdate_remote() throws Exception {
  manualSetUp();
  TransportStats before = transportTracer.getStats();
  assertEquals(Http2CodecUtil.DEFAULT_WINDOW_SIZE, before.remoteFlowControlWindow);
  assertEquals(Http2CodecUtil.DEFAULT_WINDOW_SIZE, before.localFlowControlWindow);

  ByteBuf serializedSettings = windowUpdate(0, 1000);
  channelRead(serializedSettings);
  TransportStats after = transportTracer.getStats();
  assertEquals(Http2CodecUtil.DEFAULT_WINDOW_SIZE + 1000,
      after.remoteFlowControlWindow);
  assertEquals(flowControlWindow, after.localFlowControlWindow);
}
 
开发者ID:grpc,项目名称:grpc-java,代码行数:15,代码来源:NettyHandlerTestBase.java



注:本文中的io.netty.handler.codec.http2.Http2CodecUtil类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java NotTerm类代码示例发布时间:2022-05-22
下一篇:
Java LdapPasswordPolicyConfiguration类代码示例发布时间:2022-05-22
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap