T
- 此构建器创建的处理程序的类型。
B
- 这个构建器的具体类型。
@UnstableApi
public abstract class AbstractHttp2ConnectionHandlerBuilder<T extends Http2ConnectionHandler,B extends AbstractHttp2ConnectionHandlerBuilder<T,B>>
extends java.lang.Object
Http2ConnectionHandler
实例所需的常用功能。
Http2ConnectionHandler
的三种方法 Http2ConnectionHandler
build()
构建新的Http2ConnectionHandler
。
设置以下属性是禁止的,因为它们用于构建Http2ConnectionHandler
的其他方法。
与此选项冲突:
Http2ConnectionHandler
connection(Http2Connection)
以告诉构建者您想从您指定的Http2Connection
构建处理程序。
设置以下属性是禁止的,因此会触发IllegalStateException
因为它们与此选项冲突。
Http2ConnectionDecoder
和Http2ConnectionEncoder
codec(Http2ConnectionDecoder, Http2ConnectionEncoder)
以告诉构建者您要从您指定的Http2ConnectionDecoder
和Http2ConnectionEncoder
构建处理程序。
设置以下属性是禁止的,因此会触发IllegalStateException
因为它们与此选项冲突:
server(boolean)
connection(Http2Connection)
frameLogger(Http2FrameLogger)
#headerSensitivityDetector(SensitivityDetector)
encoderEnforceMaxConcurrentStreams(boolean)
encoderIgnoreMaxHeaderListSize(boolean)
initialHuffmanDecodeCapacity(int)
build()
方法和所有的财产访问方法是protected
。
选择暴露给您的构建器实现的用户的方法,并使其成为public
。
Constructor and Description |
---|
AbstractHttp2ConnectionHandlerBuilder() |
Modifier and Type | Method and Description |
---|---|
protected T |
build()
创建一个新的 Http2ConnectionHandler 。
|
protected abstract T |
build(Http2ConnectionDecoder decoder, Http2ConnectionEncoder encoder, Http2Settings initialSettings)
实施此方法以创建新的 Http2ConnectionHandler 或其子类型实例。
|
protected B |
codec(Http2ConnectionDecoder decoder, Http2ConnectionEncoder encoder)
|
protected Http2Connection |
connection()
返回使用的 Http2Connection 。
|
protected B |
connection(Http2Connection connection)
设置要使用的 Http2Connection 。
|
protected Http2ConnectionDecoder |
decoder()
返回使用的 Http2ConnectionDecoder 。
|
protected Http2ConnectionEncoder |
encoder()
返回使用的 Http2ConnectionEncoder 。
|
protected boolean |
encoderEnforceMaxConcurrentStreams()
如果编码器应该排队帧,如果否则会超过并发流的最大数量时返回。
|
protected B |
encoderEnforceMaxConcurrentStreams(boolean encoderEnforceMaxConcurrentStreams)
如果编码器应该排队帧,如果否则会超过并发流的最大数量。
|
protected B |
encoderIgnoreMaxHeaderListSize(boolean ignoreMaxHeaderListSize)
设置编码标题时是否应忽略
SETTINGS_MAX_HEADER_LIST_SIZE 。
|
protected Http2FrameListener |
frameListener()
返回入站帧的侦听器。
|
protected B |
frameListener(Http2FrameListener frameListener)
设置入站帧的侦听器。
|
protected Http2FrameLogger |
frameLogger()
返回用于编码器和解码器的记录器。
|
protected B |
frameLogger(Http2FrameLogger frameLogger)
设置用于编码器和解码器的记录器。
|
protected long |
gracefulShutdownTimeoutMillis()
以毫秒为单位返回 Http2Connection 的正常关闭超时。
|
protected B |
gracefulShutdownTimeoutMillis(long gracefulShutdownTimeoutMillis)
以毫秒为单位设置 Http2Connection 的正常关闭超时。
|
protected Http2HeadersEncoder.SensitivityDetector |
headerSensitivityDetector()
|
protected B |
headerSensitivityDetector(Http2HeadersEncoder.SensitivityDetector headerSensitivityDetector)
|
protected B |
initialHuffmanDecodeCapacity(int initialHuffmanDecodeCapacity)
设置在HPACK huffman解码期间使用的中间缓冲区的初始大小。
|
protected Http2Settings |
initialSettings()
设置 Http2Settings 用于初始连接设置交换。
|
protected B |
initialSettings(Http2Settings settings)
设置 Http2Settings 用于初始连接设置交换。
|
protected boolean |
isServer()
如果 build() 将在服务器模式( true )或客户端模式( false )下创建Http2Connection ,则返回。
|
protected boolean |
isValidateHeaders()
根据
RFC 7540, 8.1.2.6应该验证HTTP标头返回。
|
protected int |
maxReservedStreams()
获取在任何给定时间可以处于保留状态的最大数量的流。
|
protected B |
maxReservedStreams(int maxReservedStreams)
设置在任何给定时间可以处于保留状态的最大数量的流。
|
protected B |
self()
退货
this 。
|
protected B |
server(boolean isServer)
如果设置 build() 将创建一个Http2Connection 服务器模式( true )或客户端模式( false )。
|
protected B |
validateHeaders(boolean validateHeaders)
根据
RFC 7540, 8.1.2.6设置HTTP头是否应该被验证。
|
protected Http2Settings initialSettings()
Http2Settings
用于初始连接设置交换。
protected B initialSettings(Http2Settings settings)
Http2Settings
设置为用于初始连接设置交换。
protected Http2FrameListener frameListener()
Http2FrameListener
如果设置,或null
如果未设置。
protected B frameListener(Http2FrameListener frameListener)
null
时才会被设置。
protected long gracefulShutdownTimeoutMillis()
Http2Connection
的正常关闭超时。
如果超时是无限的,则返回-1。
protected B gracefulShutdownTimeoutMillis(long gracefulShutdownTimeoutMillis)
Http2Connection
的正常关闭超时。
protected boolean isServer()
build()
将在服务器模式( true
)或客户端模式( false
)下创建Http2Connection
,则返回。
protected B server(boolean isServer)
build()
将创建一个Http2Connection
服务器模式( true
)或客户端模式( false
)。
protected int maxReservedStreams()
默认情况下,该值将在本地端点的服务器上被忽略。 这是因为RFC没有提供明确的通信限制,即有多少状态可以处于保留状态,而是依赖于对等方在发送RST_STREAM帧时被拒绝。
protected B maxReservedStreams(int maxReservedStreams)
protected Http2Connection connection()
Http2Connection
。
Http2Connection
如果设置,或null
如果未设置。
protected B connection(Http2Connection connection)
Http2Connection
。
protected Http2ConnectionDecoder decoder()
Http2ConnectionDecoder
。
Http2ConnectionDecoder
如果设置,或null
如果未设置。
protected Http2ConnectionEncoder encoder()
Http2ConnectionEncoder
。
Http2ConnectionEncoder
如果设置,或null
如果未设置。
protected B codec(Http2ConnectionDecoder decoder, Http2ConnectionEncoder encoder)
protected boolean isValidateHeaders()
protected B validateHeaders(boolean validateHeaders)
protected Http2FrameLogger frameLogger()
Http2FrameLogger
如果设置,或null
如果未设置。
protected B frameLogger(Http2FrameLogger frameLogger)
protected boolean encoderEnforceMaxConcurrentStreams()
protected B encoderEnforceMaxConcurrentStreams(boolean encoderEnforceMaxConcurrentStreams)
protected Http2HeadersEncoder.SensitivityDetector headerSensitivityDetector()
protected B headerSensitivityDetector(Http2HeadersEncoder.SensitivityDetector headerSensitivityDetector)
protected B encoderIgnoreMaxHeaderListSize(boolean ignoreMaxHeaderListSize)
ignoreMaxHeaderListSize
-
true
忽略
SETTINGS_MAX_HEADER_LIST_SIZE 。
protected B initialHuffmanDecodeCapacity(int initialHuffmanDecodeCapacity)
initialHuffmanDecodeCapacity
- 在HPACK huffman解码期间使用的中间缓冲区的初始大小。
protected T build()
Http2ConnectionHandler
。
protected abstract T build(Http2ConnectionDecoder decoder, Http2ConnectionEncoder encoder, Http2Settings initialSettings) throws java.lang.Exception
Http2ConnectionHandler
或其子类型实例。
此方法的返回将受到以下限制:
frameListener(Http2FrameListener)
gracefulShutdownTimeoutMillis(long)
将始终设置 java.lang.Exception
protected final B self()
this
。
Copyright © 2008–2018 The Netty Project. All rights reserved.