本文整理汇总了Java中io.netty.handler.codec.http2.DefaultHttp2FrameReader类的典型用法代码示例。如果您正苦于以下问题:Java DefaultHttp2FrameReader类的具体用法?Java DefaultHttp2FrameReader怎么用?Java DefaultHttp2FrameReader使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
DefaultHttp2FrameReader类属于io.netty.handler.codec.http2包,在下文中一共展示了DefaultHttp2FrameReader类的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: newHttp2ConnectionHandler
import io.netty.handler.codec.http2.DefaultHttp2FrameReader; //导入依赖的package包/类
private Http2ClientConnectionHandler newHttp2ConnectionHandler(Channel ch) {
final boolean validateHeaders = false;
final Http2Connection conn = new DefaultHttp2Connection(false);
conn.addListener(new Http2GoAwayListener(ch));
Http2FrameReader reader = new DefaultHttp2FrameReader(validateHeaders);
Http2FrameWriter writer = new DefaultHttp2FrameWriter();
Http2ConnectionEncoder encoder = new DefaultHttp2ConnectionEncoder(conn, writer);
Http2ConnectionDecoder decoder = new DefaultHttp2ConnectionDecoder(conn, encoder, reader);
final Http2Settings http2Settings = http2Settings();
final Http2ResponseDecoder listener = new Http2ResponseDecoder(conn, ch, encoder);
final Http2ClientConnectionHandler handler =
new Http2ClientConnectionHandler(decoder, encoder, http2Settings, listener);
// Setup post build options
handler.gracefulShutdownTimeoutMillis(clientFactory.idleTimeoutMillis());
return handler;
}
开发者ID:line,项目名称:armeria,代码行数:22,代码来源:HttpClientPipelineConfigurator.java
示例2: newHttp2ConnectionHandler
import io.netty.handler.codec.http2.DefaultHttp2FrameReader; //导入依赖的package包/类
private Http2ConnectionHandler newHttp2ConnectionHandler(ChannelPipeline pipeline) {
final Http2Connection conn = new DefaultHttp2Connection(true);
conn.addListener(new Http2GoAwayListener(pipeline.channel()));
Http2FrameReader reader = new DefaultHttp2FrameReader(true);
Http2FrameWriter writer = new DefaultHttp2FrameWriter();
Http2ConnectionEncoder encoder = new DefaultHttp2ConnectionEncoder(conn, writer);
Http2ConnectionDecoder decoder = new DefaultHttp2ConnectionDecoder(conn, encoder, reader);
final Http2ConnectionHandler handler =
new Http2ServerConnectionHandler(decoder, encoder, new Http2Settings());
// Setup post build options
final Http2RequestDecoder listener =
new Http2RequestDecoder(config, pipeline.channel(), handler.encoder());
handler.connection().addListener(listener);
handler.decoder().frameListener(listener);
handler.gracefulShutdownTimeoutMillis(config.idleTimeoutMillis());
return handler;
}
开发者ID:line,项目名称:armeria,代码行数:25,代码来源:HttpServerPipelineConfigurator.java
示例3: newHandler
import io.netty.handler.codec.http2.DefaultHttp2FrameReader; //导入依赖的package包/类
static NettyClientHandler newHandler(
ClientTransportLifecycleManager lifecycleManager,
@Nullable KeepAliveManager keepAliveManager,
int flowControlWindow,
int maxHeaderListSize,
Supplier<Stopwatch> stopwatchFactory,
Runnable tooManyPingsRunnable,
TransportTracer transportTracer) {
Preconditions.checkArgument(maxHeaderListSize > 0, "maxHeaderListSize must be positive");
Http2HeadersDecoder headersDecoder = new GrpcHttp2ClientHeadersDecoder(maxHeaderListSize);
Http2FrameReader frameReader = new DefaultHttp2FrameReader(headersDecoder);
Http2FrameWriter frameWriter = new DefaultHttp2FrameWriter();
Http2Connection connection = new DefaultHttp2Connection(false);
WeightedFairQueueByteDistributor dist = new WeightedFairQueueByteDistributor(connection);
dist.allocationQuantum(16 * 1024); // Make benchmarks fast again.
DefaultHttp2RemoteFlowController controller =
new DefaultHttp2RemoteFlowController(connection, dist);
connection.remote().flowController(controller);
return newHandler(
connection,
frameReader,
frameWriter,
lifecycleManager,
keepAliveManager,
flowControlWindow,
maxHeaderListSize,
stopwatchFactory,
tooManyPingsRunnable,
transportTracer);
}
开发者ID:grpc,项目名称:grpc-java,代码行数:32,代码来源:NettyClientHandler.java
示例4: initChannel
import io.netty.handler.codec.http2.DefaultHttp2FrameReader; //导入依赖的package包/类
/**
* Must be called by subclasses to initialize the handler and channel.
*/
protected final void initChannel(Http2HeadersDecoder headersDecoder) throws Exception {
content = Unpooled.copiedBuffer("hello world", UTF_8);
frameWriter = mock(Http2FrameWriter.class, delegatesTo(new DefaultHttp2FrameWriter()));
frameReader = new DefaultHttp2FrameReader(headersDecoder);
channel = new FakeClockSupportedChanel();
handler = newHandler();
channel.pipeline().addLast(handler);
ctx = channel.pipeline().context(handler);
writeQueue = initWriteQueue();
}
开发者ID:grpc,项目名称:grpc-java,代码行数:16,代码来源:NettyHandlerTestBase.java
示例5: frameReader
import io.netty.handler.codec.http2.DefaultHttp2FrameReader; //导入依赖的package包/类
private static Http2FrameReader frameReader() {
return new Http2InboundFrameLogger(new DefaultHttp2FrameReader(),
FRAME_LOGGER);
}
开发者ID:aliyun-beta,项目名称:aliyun-oss-hadoop-fs,代码行数:5,代码来源:TestDtpHttp2.java
示例6: frameReader
import io.netty.handler.codec.http2.DefaultHttp2FrameReader; //导入依赖的package包/类
private static Http2FrameReader frameReader() {
return new Http2InboundFrameLogger(new DefaultHttp2FrameReader(), logger);
}
开发者ID:duchien85,项目名称:netty-cookbook,代码行数:4,代码来源:Http2ClientInitializer.java
示例7: HelloWorldHttp2Handler
import io.netty.handler.codec.http2.DefaultHttp2FrameReader; //导入依赖的package包/类
public HelloWorldHttp2Handler() {
this(new DefaultHttp2Connection(true), new Http2InboundFrameLogger(
new DefaultHttp2FrameReader(), logger),
new Http2OutboundFrameLogger(new DefaultHttp2FrameWriter(), logger),
new SimpleHttp2FrameListener());
}
开发者ID:duchien85,项目名称:netty-cookbook,代码行数:7,代码来源:HelloWorldHttp2Handler.java
示例8: frameReader
import io.netty.handler.codec.http2.DefaultHttp2FrameReader; //导入依赖的package包/类
private Http2FrameReader frameReader() {
return new Http2InboundFrameLogger(new DefaultHttp2FrameReader(), logger);
}
开发者ID:syucream,项目名称:jmeter-http2-plugin,代码行数:4,代码来源:Http2ClientInitializer.java
示例9: maxFrameSize
import io.netty.handler.codec.http2.DefaultHttp2FrameReader; //导入依赖的package包/类
@Test
public void maxFrameSize() throws Exception {
try (ServerSocket ss = new ServerSocket(0)) {
final int port = ss.getLocalPort();
final ClientFactory clientFactory = new ClientFactoryBuilder()
.useHttp2Preface(true)
.http2MaxFrameSize(DEFAULT_MAX_FRAME_SIZE * 2) // == 16384 * 2
.build();
final HttpClient client = HttpClient.of(clientFactory, "http://127.0.0.1:" + port);
final CompletableFuture<AggregatedHttpMessage> future = client.get("/").aggregate();
try (Socket s = ss.accept()) {
final InputStream in = s.getInputStream();
final BufferedOutputStream bos = new BufferedOutputStream(s.getOutputStream());
readBytes(in, connectionPrefaceBuf().capacity()); // Read the connection preface and discard it.
// Read a SETTINGS frame and validate it.
assertSettingsFrameOfMaxFrameSize(in);
sendEmptySettingsAndAckFrame(bos);
readBytes(in, 9); // Read a SETTINGS_ACK frame and discard it.
readHeadersFrame(in); // Read a HEADERS frame and discard it.
sendHeaderFrame(bos);
////////////////////////////////////////
// Transmission of data gets started. //
////////////////////////////////////////
// Send a DATA frame that indicates sending data as much as 0x8000 for stream id 03.
bos.write(new byte[] { 0x00, (byte) 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03 });
bos.write(EMPTY_DATA);
bos.write(EMPTY_DATA);
bos.flush();
readBytes(in, 13); // Read a WINDOW_UPDATE frame for connection and discard it.
readBytes(in, 13); // Read a WINDOW_UPDATE frame for stream id 03 and discard it.
// Send a DATA frame that exceed MAX_FRAME_SIZE by 1.
bos.write(new byte[] { 0x00, (byte) 0x80, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03 });
bos.flush(); // Triggers the client to send a GOAWAY frame for the connection.
// The client send a GOAWAY frame and the server read it.
final ByteBuf buffer = readGoAwayFrame(in);
final DefaultHttp2FrameReader frameReader = new DefaultHttp2FrameReader();
final CountDownLatch latch = new CountDownLatch(1);
frameReader.readFrame(null, buffer, new Http2EventAdapter() {
@Override
public void onGoAwayRead(ChannelHandlerContext ctx, int lastStreamId, long errorCode,
ByteBuf debugData)
throws Http2Exception {
assertThat(lastStreamId).isZero(); // 0: connection error
assertThat(errorCode).isEqualTo(Http2Error.FRAME_SIZE_ERROR.code());
latch.countDown();
}
});
latch.await();
buffer.release();
}
}
}
开发者ID:line,项目名称:armeria,代码行数:68,代码来源:Http2ClientSettingsTest.java
示例10: newHandler
import io.netty.handler.codec.http2.DefaultHttp2FrameReader; //导入依赖的package包/类
static NettyServerHandler newHandler(
ServerTransportListener transportListener,
ChannelPromise channelUnused,
List<ServerStreamTracer.Factory> streamTracerFactories,
TransportTracer transportTracer,
int maxStreams,
int flowControlWindow,
int maxHeaderListSize,
int maxMessageSize,
long keepAliveTimeInNanos,
long keepAliveTimeoutInNanos,
long maxConnectionIdleInNanos,
long maxConnectionAgeInNanos,
long maxConnectionAgeGraceInNanos,
boolean permitKeepAliveWithoutCalls,
long permitKeepAliveTimeInNanos) {
Preconditions.checkArgument(maxHeaderListSize > 0, "maxHeaderListSize must be positive");
Http2FrameLogger frameLogger = new Http2FrameLogger(LogLevel.DEBUG, NettyServerHandler.class);
Http2HeadersDecoder headersDecoder = new GrpcHttp2ServerHeadersDecoder(maxHeaderListSize);
Http2FrameReader frameReader = new Http2InboundFrameLogger(
new DefaultHttp2FrameReader(headersDecoder), frameLogger);
Http2FrameWriter frameWriter =
new Http2OutboundFrameLogger(new DefaultHttp2FrameWriter(), frameLogger);
return newHandler(
channelUnused,
frameReader,
frameWriter,
transportListener,
streamTracerFactories,
transportTracer,
maxStreams,
flowControlWindow,
maxHeaderListSize,
maxMessageSize,
keepAliveTimeInNanos,
keepAliveTimeoutInNanos,
maxConnectionIdleInNanos,
maxConnectionAgeInNanos,
maxConnectionAgeGraceInNanos,
permitKeepAliveWithoutCalls,
permitKeepAliveTimeInNanos);
}
开发者ID:grpc,项目名称:grpc-java,代码行数:43,代码来源:NettyServerHandler.java
注:本文中的io.netty.handler.codec.http2.DefaultHttp2FrameReader类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论