Class Http2ClientProtocolConfig.BuilderBase.Http2ClientProtocolConfigImpl
java.lang.Object
io.helidon.http.HttpConfig.BuilderBase.HttpConfigImpl
io.helidon.webclient.http2.Http2ClientProtocolConfig.BuilderBase.Http2ClientProtocolConfigImpl
- All Implemented Interfaces:
Prototype.Api, NamedService, HttpConfig, Http2ClientProtocolConfig, ProtocolConfig
- Enclosing class:
Http2ClientProtocolConfig.BuilderBase<BUILDER extends Http2ClientProtocolConfig.BuilderBase<BUILDER, PROTOTYPE>, PROTOTYPE extends Http2ClientProtocolConfig>
protected static class Http2ClientProtocolConfig.BuilderBase.Http2ClientProtocolConfigImpl
extends HttpConfig.BuilderBase.HttpConfigImpl
implements Http2ClientProtocolConfig
Generated implementation of the prototype, can be extended by descendant prototype implementations.
-
Nested Class Summary
Nested classes/interfaces inherited from interface Http2ClientProtocolConfig
Http2ClientProtocolConfig.Builder, Http2ClientProtocolConfig.BuilderBase<BUILDER, PROTOTYPE>Modifier and TypeInterfaceDescriptionstatic classFluent API builder forHttp2ClientProtocolConfig.static classHttp2ClientProtocolConfig.BuilderBase<BUILDER extends Http2ClientProtocolConfig.BuilderBase<BUILDER, PROTOTYPE>, PROTOTYPE extends Http2ClientProtocolConfig>Fluent API builder base forHttp2ClientProtocolConfig.Nested classes/interfaces inherited from interface HttpConfig
HttpConfig.Builder, HttpConfig.BuilderBase<BUILDER, PROTOTYPE>Modifier and TypeInterfaceDescriptionstatic classFluent API builder forHttpConfig.static classHttpConfig.BuilderBase<BUILDER extends HttpConfig.BuilderBase<BUILDER, PROTOTYPE>, PROTOTYPE extends HttpConfig>Fluent API builder base forHttpConfig. -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedCreate an instance providing a builder. -
Method Summary
Modifier and TypeMethodDescriptionbooleanTimeout for blocking while waiting for window update when window is depleted.inthashCode()intConfigure INITIAL_WINDOW_SIZE setting for new HTTP/2 connections.intConfigure initial MAX_FRAME_SIZE setting for new HTTP/2 connections.longConfigure initial MAX_HEADER_LIST_SIZE setting for new HTTP/2 connections.name()Name of this protocol configuration.booleanping()Check healthiness of cached connections with HTTP/2.0 ping frame.Timeout for ping probe used for checking healthiness of cached connections.booleanPrior knowledge of HTTP/2 capabilities of the server.toString()Methods inherited from class HttpConfig.BuilderBase.HttpConfigImpl
log, maxBufferedEntitySize, maxHeadersSize, validateRequestHeaders, validateResponseHeadersModifier and TypeMethodDescriptionlog()HTTP Log configuration.Configure the maximum size allowed for an entity that can be explicitly buffered by the application by callingio.helidon.http.media.ReadableEntity.buffer().intConfigure the maximum allowed headers size, which must be greater than0.booleanWhether to validate request headers.booleanWhether to validate response headers.Methods inherited from interface Http2ClientProtocolConfig
typeModifier and TypeMethodDescriptiondefault Stringtype()Type of this implementation, to distinguish instances of same type, with differentNamedService.name().
-
Constructor Details
-
Http2ClientProtocolConfigImpl
Create an instance providing a builder.- Parameters:
builder- extending builder base of this prototype
-
-
Method Details
-
name
Description copied from interface:Http2ClientProtocolConfigName of this protocol configuration.- Specified by:
namein interfaceHttp2ClientProtocolConfig- Specified by:
namein interfaceNamedService- Returns:
- protocol configuration name
-
priorKnowledge
public boolean priorKnowledge()Description copied from interface:Http2ClientProtocolConfigPrior knowledge of HTTP/2 capabilities of the server. If server we are connecting to does not support HTTP/2 and prior knowledge is set tofalse, only features supported by HTTP/1 will be available and attempts to use HTTP/2 specific will throw anUnsupportedOperationException.Plain text connection
If prior knowledge is set totrue, we will not attempt an upgrade of connection and use prior knowledge. If prior knowledge is set tofalse, we will initiate an HTTP/1 connection and upgrade it to HTTP/2, if supported by the server. plaintext connection (h2c).TLS protected connection
If prior knowledge is set totrue, we will negotiate protocol using HTTP/2 only, failing if not supported. if prior knowledge is set tofalse, we will negotiate protocol using both HTTP/2 and HTTP/1, using the protocol supported by server.- Specified by:
priorKnowledgein interfaceHttp2ClientProtocolConfig- Returns:
- whether to use prior knowledge of HTTP/2
-
maxFrameSize
public int maxFrameSize()Description copied from interface:Http2ClientProtocolConfigConfigure initial MAX_FRAME_SIZE setting for new HTTP/2 connections. Maximum size of data frames in bytes the client is prepared to accept from the server. Default value is 2^14(16_384).- Specified by:
maxFrameSizein interfaceHttp2ClientProtocolConfig- Returns:
- data frame size in bytes between 2^14(16_384) and 2^24-1(16_777_215)
-
maxHeaderListSize
public long maxHeaderListSize()Description copied from interface:Http2ClientProtocolConfigConfigure initial MAX_HEADER_LIST_SIZE setting for new HTTP/2 connections. Sends to the server the maximum header field section size the client advertises using the HTTP/2SETTINGS_MAX_HEADER_LIST_SIZEsetting.This setting is sent to the peer as an HTTP/2 protocol hint. Helidon's local response header size enforcement is configured by
HttpConfig.maxHeadersSize().Defaults to
-1, which means "unconfigured".- Specified by:
maxHeaderListSizein interfaceHttp2ClientProtocolConfig- Returns:
- units of octets advertised in the HTTP/2 settings
-
initialWindowSize
public int initialWindowSize()Description copied from interface:Http2ClientProtocolConfigConfigure INITIAL_WINDOW_SIZE setting for new HTTP/2 connections. Sends to the server the size of the largest frame payload client is willing to receive. Defaults to 65535.- Specified by:
initialWindowSizein interfaceHttp2ClientProtocolConfig- Returns:
- units of octets
-
flowControlBlockTimeout
Description copied from interface:Http2ClientProtocolConfigTimeout for blocking while waiting for window update when window is depleted.- Specified by:
flowControlBlockTimeoutin interfaceHttp2ClientProtocolConfig- Returns:
- timeout
-
ping
public boolean ping()Description copied from interface:Http2ClientProtocolConfigCheck healthiness of cached connections with HTTP/2.0 ping frame. Defaults tofalse.- Specified by:
pingin interfaceHttp2ClientProtocolConfig- Returns:
- use ping if true
-
pingTimeout
Description copied from interface:Http2ClientProtocolConfigTimeout for ping probe used for checking healthiness of cached connections. Defaults toPT0.5S, which means 500 milliseconds.- Specified by:
pingTimeoutin interfaceHttp2ClientProtocolConfig- Returns:
- timeout
-
toString
- Overrides:
toStringin classHttpConfig.BuilderBase.HttpConfigImpl
-
equals
- Overrides:
equalsin classHttpConfig.BuilderBase.HttpConfigImpl
-
hashCode
public int hashCode()- Overrides:
hashCodein classHttpConfig.BuilderBase.HttpConfigImpl
-