@UnstableApi public class DefaultHttp2FrameWriter extends java.lang.Object implements Http2FrameWriter, Http2FrameSizePolicy, Http2FrameWriter.Configuration
Http2FrameWriter
。
Http2FrameWriter.Configuration
Constructor and Description |
---|
DefaultHttp2FrameWriter() |
DefaultHttp2FrameWriter(Http2HeadersEncoder.SensitivityDetector headersSensitivityDetector) |
DefaultHttp2FrameWriter(Http2HeadersEncoder.SensitivityDetector headersSensitivityDetector, boolean ignoreMaxHeaderListSize) |
DefaultHttp2FrameWriter(Http2HeadersEncoder headersEncoder) |
Modifier and Type | Method and Description |
---|---|
void |
close()
关闭此作者并释放所有分配的资源。
|
Http2FrameWriter.Configuration |
configuration()
获取此 Http2FrameWriter 的配置相关元素
|
Http2FrameSizePolicy |
frameSizePolicy()
|
Http2HeadersEncoder.Configuration |
headersConfiguration()
|
int |
maxFrameSize()
获取允许的最大帧大小。
|
void |
maxFrameSize(int max)
设置允许的最大帧大小。
|
ChannelFuture |
writeData(ChannelHandlerContext ctx, int streamId, ByteBuf data, int padding, boolean endStream, ChannelPromise promise)
将
DATA 帧写入远程端点。
|
ChannelFuture |
writeFrame(ChannelHandlerContext ctx, byte frameType, int streamId, Http2Flags flags, ByteBuf payload, ChannelPromise promise)
任何HTTP / 2帧的通用写入方法。
|
ChannelFuture |
writeGoAway(ChannelHandlerContext ctx, int lastStreamId, long errorCode, ByteBuf debugData, ChannelPromise promise)
将GO_AWAY帧写入远程端点。
|
ChannelFuture |
writeHeaders(ChannelHandlerContext ctx, int streamId, Http2Headers headers, int padding, boolean endStream, ChannelPromise promise)
将HEADERS帧写入远程端点。
|
ChannelFuture |
writeHeaders(ChannelHandlerContext ctx, int streamId, Http2Headers headers, int streamDependency, short weight, boolean exclusive, int padding, boolean endStream, ChannelPromise promise)
将指定优先级的HEADERS帧写入远程端点。
|
ChannelFuture |
writePing(ChannelHandlerContext ctx, boolean ack, long data, ChannelPromise promise)
将PING帧写入远程端点。
|
ChannelFuture |
writePriority(ChannelHandlerContext ctx, int streamId, int streamDependency, short weight, boolean exclusive, ChannelPromise promise)
将PRIORITY帧写入远程端点。
|
ChannelFuture |
writePushPromise(ChannelHandlerContext ctx, int streamId, int promisedStreamId, Http2Headers headers, int padding, ChannelPromise promise)
将PUSH_PROMISE帧写入远程端点。
|
ChannelFuture |
writeRstStream(ChannelHandlerContext ctx, int streamId, long errorCode, ChannelPromise promise)
将RST_STREAM帧写入远程端点。
|
ChannelFuture |
writeSettings(ChannelHandlerContext ctx, Http2Settings settings, ChannelPromise promise)
将一个SETTINGS帧写入远程端点。
|
ChannelFuture |
writeSettingsAck(ChannelHandlerContext ctx, ChannelPromise promise)
将SETTINGS确认写入远程端点。
|
ChannelFuture |
writeWindowUpdate(ChannelHandlerContext ctx, int streamId, int windowSizeIncrement, ChannelPromise promise)
将WINDOW_UPDATE帧写入远程端点。
|
public DefaultHttp2FrameWriter()
public DefaultHttp2FrameWriter(Http2HeadersEncoder.SensitivityDetector headersSensitivityDetector)
public DefaultHttp2FrameWriter(Http2HeadersEncoder.SensitivityDetector headersSensitivityDetector, boolean ignoreMaxHeaderListSize)
public DefaultHttp2FrameWriter(Http2HeadersEncoder headersEncoder)
public Http2FrameWriter.Configuration configuration()
Http2FrameWriter
Http2FrameWriter
的配置相关元素
configuration
在界面
Http2FrameWriter
public Http2HeadersEncoder.Configuration headersConfiguration()
Http2FrameWriter.Configuration
headersConfiguration
在界面
Http2FrameWriter.Configuration
public Http2FrameSizePolicy frameSizePolicy()
Http2FrameWriter.Configuration
复制的描述
frameSizePolicy
在界面
Http2FrameWriter.Configuration
public void maxFrameSize(int max) throws Http2Exception
Http2FrameSizePolicy
复制的描述
该值用于表示SETTINGS_MAX_FRAME_SIZE 。 这种方法只能由Netty(不是用户)作为接收SETTINGS
帧的结果来SETTINGS
。
maxFrameSize
在界面
Http2FrameSizePolicy
Http2Exception
public int maxFrameSize()
Http2FrameSizePolicy
复制的描述
该值用于表示SETTINGS_MAX_FRAME_SIZE 。 RFC定义的初始值是无限的,但通常允许执行下限。 Http2CodecUtil.DEFAULT_MAX_FRAME_SIZE
可以用作更保守的默认值。
maxFrameSize
在界面
Http2FrameSizePolicy
public void close()
Http2FrameWriter
close
在界面
Http2FrameWriter
close
在界面
java.io.Closeable
close
,界面
java.lang.AutoCloseable
public ChannelFuture writeData(ChannelHandlerContext ctx, int streamId, ByteBuf data, int padding, boolean endStream, ChannelPromise promise)
Http2DataWriter
复制的描述
DATA
帧写入远程端点。
这将导致一个或多个帧被写入上下文。
writeData
在界面
Http2DataWriter
ctx
- 用于书写的上下文。
streamId
- 要发送帧的流。
data
- 帧的有效载荷。
这将通过这种方法发布。
padding
- 应添加的其他字节以掩盖真正的内容大小。
必须介于0和256(含)之间。
一个1字节的填充被编码为值为0的填充长度字段。一个256字节的填充被编码为填充长度字段,值255和填充字节255被附加到帧的末尾。
endStream
- 指示这是否是流的最后一个帧。
promise
- 写作的承诺。
public ChannelFuture writeHeaders(ChannelHandlerContext ctx, int streamId, Http2Headers headers, int padding, boolean endStream, ChannelPromise promise)
Http2FrameWriter
writeHeaders
在界面
Http2FrameWriter
ctx
- 用于书写的上下文。
streamId
- 要发送帧的流。
headers
- 要发送的标题。
padding
- 应添加的其他字节来掩盖真正的内容大小。
必须介于0和256(含)之间。
endStream
- 指示这是否是流的最后一个帧。
promise
- 写作的承诺。
The header block MUST be processed to ensure a consistent connection state, unless the connection is closed.
如果这个调用修改了HPACK头部状态,你必须抛出连接错误。
如果这一呼吁没有修改HPACK头状态,你可以自由地抛出一个流错误。
public ChannelFuture writeHeaders(ChannelHandlerContext ctx, int streamId, Http2Headers headers, int streamDependency, short weight, boolean exclusive, int padding, boolean endStream, ChannelPromise promise)
Http2FrameWriter
复制的描述
writeHeaders
在界面
Http2FrameWriter
ctx
- 用于书写的上下文。
streamId
- 发送帧的流。
headers
- 要发送的标题。
streamDependency
- 此流应该依赖的流,或者如果它取决于连接,则为0。
weight
- 此流的权重。
exclusive
- 此流是否应该是其父项的排他依赖项。
padding
- 应该添加的其他字节来掩盖真正的内容大小。
必须介于0和256(含)之间。
endStream
- 指示这是否是为流发送的最后一帧。
promise
- 写作的承诺。
The header block MUST be processed to ensure a consistent connection state, unless the connection is closed.
如果这个调用修改了HPACK头部状态,你必须抛出连接错误。
如果这一呼吁没有修改HPACK头状态,你可以自由地抛出一个流错误。
public ChannelFuture writePriority(ChannelHandlerContext ctx, int streamId, int streamDependency, short weight, boolean exclusive, ChannelPromise promise)
Http2FrameWriter
复制的描述
writePriority
在界面
Http2FrameWriter
ctx
- 用于书写的上下文。
streamId
- 要发送帧的流。
streamDependency
- 该流应该依赖的流,如果应该依赖于连接,则为0。
weight
- 此流的权重。
exclusive
- 此流是否应该是其父项的排他依赖项。
promise
- 写作的承诺。
public ChannelFuture writeRstStream(ChannelHandlerContext ctx, int streamId, long errorCode, ChannelPromise promise)
Http2FrameWriter
writeRstStream
,界面
Http2FrameWriter
ctx
- 用于写作的上下文。
streamId
- 要发送帧的流。
errorCode
- 指示故障性质的错误代码。
promise
- 写作的承诺。
public ChannelFuture writeSettings(ChannelHandlerContext ctx, Http2Settings settings, ChannelPromise promise)
Http2FrameWriter
writeSettings
在界面
Http2FrameWriter
ctx
- 用于书写的上下文。
settings
- 要发送的设置。
promise
- 写作的承诺。
public ChannelFuture writeSettingsAck(ChannelHandlerContext ctx, ChannelPromise promise)
Http2FrameWriter
writeSettingsAck
,界面
Http2FrameWriter
ctx
- 用于书写的上下文。
promise
- 写作的承诺。
public ChannelFuture writePing(ChannelHandlerContext ctx, boolean ack, long data, ChannelPromise promise)
Http2FrameWriter
writePing
,界面
Http2FrameWriter
ctx
- 用于书写的上下文。
ack
- 指示这是否是先前从远程端点接收到的PING帧的确认。
data
- 帧的有效载荷。
promise
- 写作的承诺。
public ChannelFuture writePushPromise(ChannelHandlerContext ctx, int streamId, int promisedStreamId, Http2Headers headers, int padding, ChannelPromise promise)
Http2FrameWriter
复制的描述
writePushPromise
,界面
Http2FrameWriter
ctx
- 用于书写的上下文。
streamId
- 要发送帧的流。
promisedStreamId
- 承诺流的ID。
headers
- 要发送的标题。
padding
- 应添加的其他字节以掩盖真实的内容大小。
必须介于0和256(含)之间。
promise
- 写作的承诺。
The header block MUST be processed to ensure a consistent connection state, unless the connection is closed.
如果这个调用修改了HPACK头部状态,你必须抛出连接错误。
如果这一呼吁没有修改HPACK头状态,你可以自由地抛出一个流错误。
public ChannelFuture writeGoAway(ChannelHandlerContext ctx, int lastStreamId, long errorCode, ByteBuf debugData, ChannelPromise promise)
Http2FrameWriter
writeGoAway
,界面
Http2FrameWriter
ctx
- 用于书写的上下文。
lastStreamId
- 此端点的最后一个已知流。
errorCode
- 错误代码,如果连接异常终止。
debugData
- 应用程序定义的调试数据。
这将通过这种方法发布。
promise
- 写作的承诺。
public ChannelFuture writeWindowUpdate(ChannelHandlerContext ctx, int streamId, int windowSizeIncrement, ChannelPromise promise)
Http2FrameWriter
writeWindowUpdate
在界面
Http2FrameWriter
ctx
- 用于书写的上下文。
streamId
- 要发送帧的流。
windowSizeIncrement
- 本地入站流量控制窗口增加的字节数。
promise
- 写作的承诺。
public ChannelFuture writeFrame(ChannelHandlerContext ctx, byte frameType, int streamId, Http2Flags flags, ByteBuf payload, ChannelPromise promise)
Http2FrameWriter
writeFrame
在界面
Http2FrameWriter
ctx
- 用于书写的上下文。
frameType
- 帧类型标识符。
streamId
- 要发送帧的流。
flags
- 为此帧写入的标志。
payload
- 为此帧写入的有效载荷。
这将通过这种方法发布。
promise
- 写作的承诺。
Copyright © 2008–2018 The Netty Project. All rights reserved.