Class Http2ServerSettings.Http2ServerSettingsImpl
java.lang.Object
org.apache.pekko.http.scaladsl.settings.Http2ServerSettings.Http2ServerSettingsImpl
- All Implemented Interfaces:
Serializable,Http2ServerSettings,Http2CommonSettings,Http2ServerSettings,scala.Equals,scala.Product
- Enclosing interface:
- Http2ServerSettings
public static class Http2ServerSettings.Http2ServerSettingsImpl
extends Object
implements Http2ServerSettings, scala.Product, Serializable
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.pekko.http.scaladsl.settings.Http2ServerSettings
Http2ServerSettings.Http2ServerSettingsImpl, Http2ServerSettings.Http2ServerSettingsImpl$ -
Constructor Summary
ConstructorsConstructorDescriptionHttp2ServerSettingsImpl(int maxConcurrentStreams, int maxHeaderListSize, int maxFrameSize, int requestEntityChunkSize, int incomingConnectionLevelBufferSize, int incomingStreamLevelBufferSize, int minCollectStrictEntitySize, int outgoingControlFrameBufferSize, boolean logFrames, scala.concurrent.duration.FiniteDuration pingInterval, scala.concurrent.duration.FiniteDuration pingTimeout, scala.concurrent.duration.Duration maxConnectionAge, scala.concurrent.duration.Duration maxConnectionAgeGrace, double maxConnectionAgeJitter, scala.collection.immutable.Set<String> frameTypeThrottleFrameTypes, int frameTypeThrottleCost, int frameTypeThrottleBurst, scala.concurrent.duration.FiniteDuration frameTypeThrottleInterval, scala.Option<Http2InternalServerSettings> internalSettings) -
Method Summary
Modifier and TypeMethodDescriptionintintscala.collection.immutable.Set<String>scala.concurrent.duration.FiniteDurationintintscala.Option<Http2InternalServerSettings>booleanintscala.concurrent.duration.DurationThe maximum time a connection is kept open before the server closes it gracefully.scala.concurrent.duration.DurationThe time that requests in flight are given to complete after a connection reachedHttp2ServerSettings.maxConnectionAge()and the GOAWAY frame was sent.doubleThe jitter applied toHttp2ServerSettings.maxConnectionAge()per connection, as a fraction of the configured age: with the default of 0.1 each connection is closed after between 90% and 110% of the configured age, so that connections that were opened together are not all closed at the same time. 0 disables jitter.intThe largest frame payload this endpoint accepts, in bytes.intThe maximum size of a decoded header list that this endpoint is prepared to accept, in bytes.intintscala.concurrent.duration.FiniteDurationscala.concurrent.duration.FiniteDurationintMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface scala.Equals
canEqual, equalsMethods inherited from interface org.apache.pekko.http.javadsl.settings.Http2ServerSettings
getFrameTypeThrottleBurst, getFrameTypeThrottleCost, getFrameTypeThrottleFrameTypes, getFrameTypeThrottleInterval, getIncomingConnectionLevelBufferSize, getIncomingStreamLevelBufferSize, getMaxConcurrentStreams, getMaxConnectionAge, getMaxConnectionAgeGrace, getMaxConnectionAgeJitter, getMaxFrameSize, getMaxHeaderListSize, getOutgoingControlFrameBufferSize, getPingInterval, getPingTimeout, getRequestEntityChunkSize, withFrameTypeThrottleInterval, withMaxConnectionAge, withMaxConnectionAgeGrace, withPingInterval, withPingTimeoutMethods inherited from interface org.apache.pekko.http.scaladsl.settings.Http2ServerSettings
withFrameTypeThrottleBurst, withFrameTypeThrottleCost, withFrameTypeThrottleFrameTypes, withFrameTypeThrottleInterval, withIncomingConnectionLevelBufferSize, withIncomingStreamLevelBufferSize, withInternalSettings, withLogFrames, withMaxConcurrentStreams, withMaxConnectionAge, withMaxConnectionAgeGrace, withMaxConnectionAgeJitter, withMaxFrameSize, withMaxHeaderListSize, withMinCollectStrictEntitySize, withOutgoingControlFrameBufferSize, withPingInterval, withPingTimeout, withRequestEntityChunkSizeMethods inherited from interface scala.Product
productArity, productElement, productElementName, productElementNames, productIterator, productPrefix
-
Constructor Details
-
Http2ServerSettingsImpl
public Http2ServerSettingsImpl(int maxConcurrentStreams, int maxHeaderListSize, int maxFrameSize, int requestEntityChunkSize, int incomingConnectionLevelBufferSize, int incomingStreamLevelBufferSize, int minCollectStrictEntitySize, int outgoingControlFrameBufferSize, boolean logFrames, scala.concurrent.duration.FiniteDuration pingInterval, scala.concurrent.duration.FiniteDuration pingTimeout, scala.concurrent.duration.Duration maxConnectionAge, scala.concurrent.duration.Duration maxConnectionAgeGrace, double maxConnectionAgeJitter, scala.collection.immutable.Set<String> frameTypeThrottleFrameTypes, int frameTypeThrottleCost, int frameTypeThrottleBurst, scala.concurrent.duration.FiniteDuration frameTypeThrottleInterval, scala.Option<Http2InternalServerSettings> internalSettings)
-
-
Method Details
-
maxConcurrentStreams
public int maxConcurrentStreams()- Specified by:
maxConcurrentStreamsin interfaceHttp2CommonSettings- Specified by:
maxConcurrentStreamsin interfaceHttp2ServerSettings
-
maxHeaderListSize
public int maxHeaderListSize()Description copied from interface:Http2ServerSettingsThe maximum size of a decoded header list that this endpoint is prepared to accept, in bytes. The value is advertised to the peer via SETTINGS_MAX_HEADER_LIST_SIZE and the same limit is applied to the accumulated header block fragments of a HEADERS frame and its CONTINUATION frames.- Specified by:
maxHeaderListSizein interfaceHttp2CommonSettings- Specified by:
maxHeaderListSizein interfaceHttp2ServerSettings- Returns:
- (undocumented)
-
maxFrameSize
public int maxFrameSize()Description copied from interface:Http2ServerSettingsThe largest frame payload this endpoint accepts, in bytes. A larger incoming frame is rejected with a FRAME_SIZE_ERROR on its frame header, before the payload is buffered. No larger SETTINGS_MAX_FRAME_SIZE is advertised, so a peer that follows the spec keeps to the 16 KiB default and the extra room is leniency for peers that do not. RFC 9113, section 4.2 constrains it to be between 16 KiB and 16 MiB - 1.- Specified by:
maxFrameSizein interfaceHttp2CommonSettings- Specified by:
maxFrameSizein interfaceHttp2ServerSettings- Returns:
- (undocumented)
-
requestEntityChunkSize
public int requestEntityChunkSize()- Specified by:
requestEntityChunkSizein interfaceHttp2CommonSettings- Specified by:
requestEntityChunkSizein interfaceHttp2ServerSettings
-
incomingConnectionLevelBufferSize
public int incomingConnectionLevelBufferSize()- Specified by:
incomingConnectionLevelBufferSizein interfaceHttp2CommonSettings- Specified by:
incomingConnectionLevelBufferSizein interfaceHttp2ServerSettings
-
incomingStreamLevelBufferSize
public int incomingStreamLevelBufferSize()- Specified by:
incomingStreamLevelBufferSizein interfaceHttp2CommonSettings- Specified by:
incomingStreamLevelBufferSizein interfaceHttp2ServerSettings
-
minCollectStrictEntitySize
public int minCollectStrictEntitySize()- Specified by:
minCollectStrictEntitySizein interfaceHttp2CommonSettings- Specified by:
minCollectStrictEntitySizein interfaceHttp2ServerSettings- Specified by:
minCollectStrictEntitySizein interfaceHttp2ServerSettings
-
outgoingControlFrameBufferSize
public int outgoingControlFrameBufferSize()- Specified by:
outgoingControlFrameBufferSizein interfaceHttp2CommonSettings- Specified by:
outgoingControlFrameBufferSizein interfaceHttp2ServerSettings
-
logFrames
public boolean logFrames()- Specified by:
logFramesin interfaceHttp2CommonSettings- Specified by:
logFramesin interfaceHttp2ServerSettings- Specified by:
logFramesin interfaceHttp2ServerSettings
-
pingInterval
public scala.concurrent.duration.FiniteDuration pingInterval()- Specified by:
pingIntervalin interfaceHttp2CommonSettings- Specified by:
pingIntervalin interfaceHttp2ServerSettings
-
pingTimeout
public scala.concurrent.duration.FiniteDuration pingTimeout()- Specified by:
pingTimeoutin interfaceHttp2CommonSettings- Specified by:
pingTimeoutin interfaceHttp2ServerSettings
-
maxConnectionAge
public scala.concurrent.duration.Duration maxConnectionAge()Description copied from interface:Http2ServerSettingsThe maximum time a connection is kept open before the server closes it gracefully. When the age of a connection exceeds this value, the server sends a GOAWAY frame, lets requests that are already in flight complete withinHttp2ServerSettings.maxConnectionAgeGrace(), and then closes the connection. If the connection is already being terminated when its age expires, for example because the server binding is being terminated, the expiry has no effect and the termination in progress keeps its own deadline. The valueDuration.Infdisables this mechanism and is the default.- Specified by:
maxConnectionAgein interfaceHttp2ServerSettings- Returns:
- (undocumented)
-
maxConnectionAgeGrace
public scala.concurrent.duration.Duration maxConnectionAgeGrace()Description copied from interface:Http2ServerSettingsThe time that requests in flight are given to complete after a connection reachedHttp2ServerSettings.maxConnectionAge()and the GOAWAY frame was sent. When the grace period expires, the connection is closed even if requests are still in flight. The valueDuration.Infdisables the limit, so that the connection is closed only once all requests in flight have completed.- Specified by:
maxConnectionAgeGracein interfaceHttp2ServerSettings- Returns:
- (undocumented)
-
maxConnectionAgeJitter
public double maxConnectionAgeJitter()Description copied from interface:Http2ServerSettingsThe jitter applied toHttp2ServerSettings.maxConnectionAge()per connection, as a fraction of the configured age: with the default of 0.1 each connection is closed after between 90% and 110% of the configured age, so that connections that were opened together are not all closed at the same time. 0 disables jitter.- Specified by:
maxConnectionAgeJitterin interfaceHttp2ServerSettings- Returns:
- (undocumented)
-
frameTypeThrottleFrameTypes
- Specified by:
frameTypeThrottleFrameTypesin interfaceHttp2ServerSettings
-
frameTypeThrottleCost
public int frameTypeThrottleCost()- Specified by:
frameTypeThrottleCostin interfaceHttp2ServerSettings
-
frameTypeThrottleBurst
public int frameTypeThrottleBurst()- Specified by:
frameTypeThrottleBurstin interfaceHttp2ServerSettings
-
frameTypeThrottleInterval
public scala.concurrent.duration.FiniteDuration frameTypeThrottleInterval()- Specified by:
frameTypeThrottleIntervalin interfaceHttp2ServerSettings
-
internalSettings
- Specified by:
internalSettingsin interfaceHttp2ServerSettings
-