- All Superinterfaces:
NamedService
,ProtocolConfig
,Prototype.Api
- All Known Implementing Classes:
Http1Config.BuilderBase.Http1ConfigImpl
HTTP/1.1 server configuration.
- See Also:
-
Nested Class Summary
Modifier and TypeInterfaceDescriptionstatic class
Fluent API builder forHttp1Config
.static class
Http1Config.BuilderBase<BUILDER extends Http1Config.BuilderBase<BUILDER,
PROTOTYPE>, PROTOTYPE extends Http1Config> Fluent API builder base forHttp1Config
. -
Method Summary
Modifier and TypeMethodDescriptionstatic Http1Config.Builder
builder()
Create a new fluent API builder to customize configuration.static Http1Config.Builder
builder
(Http1Config instance) Create a new fluent API builder from an existing instance.A single receive listener, this value is computed.A single send listener, this value is computed.boolean
When true WebServer answers to expect continue with 100 continue immediately, not waiting for user to actually request the data.static Http1Config
create()
Create a new instance with default values.static Http1Config
Create a new instance from configuration.int
Maximal size of received headers in bytes.int
Maximal size of received HTTP prologue (GET /path HTTP/1.1).name()
Name of this configuration, in most cases the same asNamedService.type()
.Connection receive event listeners for HTTP/1.1.boolean
Logging of received packets.Requested URI discovery settings.Connection send event listeners for HTTP/1.1.boolean
sendLog()
Logging of sent packets.default String
type()
Protocol configuration type.boolean
If set to false, any path is accepted (even containing illegal characters).boolean
Whether to validate headers.boolean
Deprecated, for removal: This API element is subject to removal in a future version.this switch exists for temporary backward compatible behavior, and will be removed in a future Helidon versionboolean
Whether to validate headers.
-
Method Details
-
builder
Create a new fluent API builder to customize configuration.- Returns:
- a new builder
-
builder
Create a new fluent API builder from an existing instance.- Parameters:
instance
- an existing instance used as a base for the builder- Returns:
- a builder based on an instance
-
create
Create a new instance from configuration.- Parameters:
config
- used to configure the new instance- Returns:
- a new instance configured from configuration
-
create
Create a new instance with default values.- Returns:
- a new instance
-
name
String name()Name of this configuration, in most cases the same asNamedService.type()
.- Specified by:
name
in interfaceNamedService
- Returns:
- name of this configuration
-
maxPrologueLength
int maxPrologueLength()Maximal size of received HTTP prologue (GET /path HTTP/1.1).- Returns:
- maximal size in bytes
-
maxHeadersSize
int maxHeadersSize()Maximal size of received headers in bytes.- Returns:
- maximal header size
-
validateRequestHeaders
boolean validateRequestHeaders()Whether to validate headers. If set to false, any value is accepted, otherwise validates headers + known headers are validated by format (content length is always validated as it is part of protocol processing (other headers may be validated if features use them)).Defaults to
true
.- Returns:
- whether to validate headers
-
validateRequestHostHeader
Deprecated, for removal: This API element is subject to removal in a future version.this switch exists for temporary backward compatible behavior, and will be removed in a future Helidon versionRequest host header validation. When host header is invalid, we returnStatus.BAD_REQUEST_400
.The validation is done according to RFC-3986 (see
HostValidator
). This is a requirement of the HTTP specification.This option allows you to disable the "full-blown" validation ("simple" validation is still in - the port must be parseable to integer).
- Returns:
- whether to do a full validation of
Host
header according to the specification
-
validateResponseHeaders
boolean validateResponseHeaders()Whether to validate headers. If set to false, any value is accepted, otherwise validates headers + known headers are validated by format (content length is always validated as it is part of protocol processing (other headers may be validated if features use them)).Defaults to
false
as user has control on the header creation.- Returns:
- whether to validate headers
-
validatePath
boolean validatePath()If set to false, any path is accepted (even containing illegal characters).- Returns:
- whether to validate path
-
receiveLog
boolean receiveLog()Logging of received packets. Uses trace and debug levels on logger ofHttp1LoggingConnectionListener
with suffix of.recv`
.- Returns:
true
if logging should be enabled for received packets,false
if no logging should be done
-
sendLog
boolean sendLog()Logging of sent packets. Uses trace and debug levels on logger ofHttp1LoggingConnectionListener
with suffix of.send`
.- Returns:
true
if logging should be enabled for sent packets,false
if no logging should be done
-
continueImmediately
boolean continueImmediately()When true WebServer answers to expect continue with 100 continue immediately, not waiting for user to actually request the data.- Returns:
- if
true
answer with 100 continue immediately after expect continue
-
requestedUriDiscovery
RequestedUriDiscoveryContext requestedUriDiscovery()Requested URI discovery settings.- Returns:
- settings for computing the requested URI
-
sendListeners
List<Http1ConnectionListener> sendListeners()Connection send event listeners for HTTP/1.1.- Returns:
- send event listeners
-
receiveListeners
List<Http1ConnectionListener> receiveListeners()Connection receive event listeners for HTTP/1.1.- Returns:
- receive event listeners
-
compositeSendListener
Http1ConnectionListener compositeSendListener()A single send listener, this value is computed.- Returns:
- send listener
-
compositeReceiveListener
Http1ConnectionListener compositeReceiveListener()A single receive listener, this value is computed.- Returns:
- receive listener
-
type
Protocol configuration type.- Specified by:
type
in interfaceNamedService
- Returns:
- type of this configuration
-