@Override public void initChannel(SocketChannel ch) throws Exception { final Http2Connection connection = new DefaultHttp2Connection(false); connectionHandler = new HttpToHttp2ConnectionHandlerBuilder() .frameListener(new DelegatingDecompressorFrameListener( connection, new InboundHttp2ToHttpAdapterBuilder(connection) .maxContentLength(transportConfig.getPayload()) .propagateSettings(true) .build())) .connection(connection) .build(); responseHandler = new Http2ClientChannelHandler(); settingsHandler = new Http2SettingsHandler(ch.newPromise()); String protocol = transportConfig.getProviderInfo().getProtocolType(); if (RpcConstants.PROTOCOL_TYPE_H2.equals(protocol)) { configureSsl(ch); } else if (RpcConstants.PROTOCOL_TYPE_H2C.equals(protocol)) { if (!useH2cPriorKnowledge) { configureClearTextWithHttpUpgrade(ch); } else { configureClearTextWithPriorKnowledge(ch); } } }
@Override public void initChannel(SocketChannel ch) throws Exception { final Http2Connection connection = new DefaultHttp2Connection(false); connectionHandler = new HttpToHttp2ConnectionHandlerBuilder() .frameListener(new DelegatingDecompressorFrameListener( connection, new InboundHttp2ToHttpAdapterBuilder(connection) .maxContentLength(transportConfig.getPayload()) .propagateSettings(true) .build())) .connection(connection) .build(); responseHandler = new Http2ClientChannelHandler(); settingsHandler = new Http2SettingsHandler(ch.newPromise()); String protocol = transportConfig.getProviderInfo().getProtocolType(); if (RpcConstants.PROTOCOL_TYPE_H2.equals(protocol)) { configureSsl(ch); } else if (RpcConstants.PROTOCOL_TYPE_H2C.equals(protocol)) { if (!useH2cPriorKnowledge) { configureClearTextWithHttpUpgrade(ch); } else { configureClearTextWithPriorKnowledge(ch); } } }
ch.config().setSendBufferSize(NettyChannelContext.BUFFER_SIZE); ch.config().setReceiveBufferSize(NettyChannelContext.BUFFER_SIZE); ChannelPromise settingsPromise = ch.newPromise(); ch.attr(NettyChannelContext.SETTINGS_PROMISE_KEY).set(settingsPromise);
@Override public void initChannel(SocketChannel ch) throws Exception { final Http2Connection connection = new DefaultHttp2Connection(false); connectionHandler = new HttpToHttp2ConnectionHandlerBuilder() .frameListener(new DelegatingDecompressorFrameListener( connection, new InboundHttp2ToHttpAdapterBuilder(connection) .maxContentLength(transportConfig.getPayload()) .propagateSettings(true) .build())) .connection(connection) .build(); responseHandler = new Http2ClientChannelHandler(); settingsHandler = new Http2SettingsHandler(ch.newPromise()); String protocol = transportConfig.getProviderInfo().getProtocolType(); if (RpcConstants.PROTOCOL_TYPE_H2.equals(protocol)) { configureSsl(ch); } else if (RpcConstants.PROTOCOL_TYPE_H2C.equals(protocol)) { if (!useH2cPriorKnowledge) { configureClearTextWithHttpUpgrade(ch); } else { configureClearTextWithPriorKnowledge(ch); } } }
@Override public void initChannel(SocketChannel ch) throws Exception { final Http2Connection connection = new DefaultHttp2Connection(false); final Http2FrameWriter frameWriter = frameWriter(); connectionHandler = new HttpToHttp2ConnectionHandler(connection, frameReader(), frameWriter, new DelegatingDecompressorFrameListener(connection, new InboundHttp2ToHttpAdapter.Builder(connection) .maxContentLength(maxContentLength) .propagateSettings(true) .build())); responseHandler = new HttpResponseHandler(); settingsHandler = new Http2SettingsHandler(ch.newPromise()); if (sslCtx != null) { configureSsl(ch); } else { configureClearText(ch); } }
@Override public void initChannel(SocketChannel ch) throws Exception { final Http2Connection connection = new DefaultHttp2Connection(false); connectionHandler = new HttpToHttp2ConnectionHandlerBuilder() .frameListener(new DelegatingDecompressorFrameListener( connection, new InboundHttp2ToHttpAdapterBuilder(connection) .maxContentLength(maxContentLength) .propagateSettings(true) .build())) .frameLogger(logger) .connection(connection) .build(); responseHandler = new Http2ResponseHandler(); settingsHandler = new Http2SettingsHandler(ch.newPromise()); if (sslCtx != null) { configureSsl(ch); } else { configureClearText(ch); } }