Class HttpServerBluePrint$
HTTP pipeline setup (without the underlying SSL/TLS (un)wrapping and the websocket switch):
+----------+ +-------------+ +-------------+ +-----------+ HttpRequest | | Http- | request- | Request- | | Request- | request- | ByteString | <------------+ <----------+ Preparation <----------+ <-------------+ Parsing <----------- | | | Request | | Output | | Output | | | | | +-------------+ | | +-----------+ | | | | | | Application- | One2One- | | controller- | | Flow | Bidi | | Stage | | | | | | | | | | | +-----------+ | HttpResponse | | HttpResponse | | Response- | renderer- | ByteString v -------------> +-----------------------------------> +-------------> Pipeline +----------> | | | | Rendering- | | +----------+ +-------------+ Context +-----------+
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final HttpServerBluePrint$Static reference to the singleton instance of this Scala object. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionorg.apache.pekko.stream.scaladsl.BidiFlow<HttpResponse,org.apache.pekko.stream.TLSProtocol.SslTlsOutbound, org.apache.pekko.stream.TLSProtocol.SslTlsInbound, HttpRequest, org.apache.pekko.NotUsed> apply(ServerSettings settings, org.apache.pekko.event.LoggingAdapter log, boolean isSecureConnection, DateHeaderRendering dateHeaderRendering) org.apache.pekko.stream.scaladsl.BidiFlow<HttpResponse,ResponseRenderingContext, ParserOutput.RequestOutput, ParserOutput.RequestOutput, org.apache.pekko.NotUsed> controller(ServerSettings settings, org.apache.pekko.event.LoggingAdapter log) org.apache.pekko.stream.scaladsl.Flow<org.apache.pekko.stream.TLSProtocol.SessionBytes,ParserOutput.RequestOutput, org.apache.pekko.NotUsed> parsing(ServerSettings settings, org.apache.pekko.event.LoggingAdapter log, boolean isSecureConnection) org.apache.pekko.stream.scaladsl.BidiFlow<ResponseRenderingContext,ResponseRenderingOutput, org.apache.pekko.stream.TLSProtocol.SessionBytes, ParserOutput.RequestOutput, org.apache.pekko.NotUsed> parsingRendering(ServerSettings settings, org.apache.pekko.event.LoggingAdapter log, boolean isSecureConnection, DateHeaderRendering dateHeaderRendering) org.apache.pekko.stream.scaladsl.Flow<ResponseRenderingContext,ResponseRenderingOutput, org.apache.pekko.NotUsed> rendering(ServerSettings settings, org.apache.pekko.event.LoggingAdapter log, DateHeaderRendering dateHeaderRendering) org.apache.pekko.stream.scaladsl.BidiFlow<HttpResponse,HttpResponse, ParserOutput.RequestOutput, HttpRequest, org.apache.pekko.NotUsed> requestPreparation(ServerSettings settings) Wraps the HTTP/1.1 request/response bidi flow.org.apache.pekko.stream.scaladsl.BidiFlow<HttpResponse,HttpResponse, HttpRequest, HttpRequest, org.apache.pekko.NotUsed> requestTimeoutSupport(scala.concurrent.duration.Duration timeout, org.apache.pekko.event.LoggingAdapter log) org.apache.pekko.stream.scaladsl.BidiFlow<org.apache.pekko.util.ByteString,org.apache.pekko.stream.TLSProtocol.SslTlsOutbound, org.apache.pekko.stream.TLSProtocol.SslTlsInbound, org.apache.pekko.stream.TLSProtocol.SessionBytes, org.apache.pekko.NotUsed> org.apache.pekko.stream.scaladsl.BidiFlow<HttpResponse,HttpResponse, HttpRequest, HttpRequest, org.apache.pekko.NotUsed> userHandlerGuard(int pipeliningLimit) Ensures that the user handler - produces exactly one response per request - has not more thanpipeliningLimitresponses outstandingorg.apache.pekko.stream.scaladsl.BidiFlow<ResponseRenderingOutput,org.apache.pekko.util.ByteString, org.apache.pekko.stream.TLSProtocol.SessionBytes, org.apache.pekko.stream.TLSProtocol.SessionBytes, org.apache.pekko.NotUsed> websocketSupport(ServerSettings settings, org.apache.pekko.event.LoggingAdapter log)
-
Field Details
-
MODULE$
Static reference to the singleton instance of this Scala object.
-
-
Constructor Details
-
HttpServerBluePrint$
public HttpServerBluePrint$()
-
-
Method Details
-
apply
public org.apache.pekko.stream.scaladsl.BidiFlow<HttpResponse,org.apache.pekko.stream.TLSProtocol.SslTlsOutbound, applyorg.apache.pekko.stream.TLSProtocol.SslTlsInbound, HttpRequest, org.apache.pekko.NotUsed> (ServerSettings settings, org.apache.pekko.event.LoggingAdapter log, boolean isSecureConnection, DateHeaderRendering dateHeaderRendering) -
tlsSupport
public org.apache.pekko.stream.scaladsl.BidiFlow<org.apache.pekko.util.ByteString,org.apache.pekko.stream.TLSProtocol.SslTlsOutbound, tlsSupport()org.apache.pekko.stream.TLSProtocol.SslTlsInbound, org.apache.pekko.stream.TLSProtocol.SessionBytes, org.apache.pekko.NotUsed> -
websocketSupport
public org.apache.pekko.stream.scaladsl.BidiFlow<ResponseRenderingOutput,org.apache.pekko.util.ByteString, websocketSupportorg.apache.pekko.stream.TLSProtocol.SessionBytes, org.apache.pekko.stream.TLSProtocol.SessionBytes, org.apache.pekko.NotUsed> (ServerSettings settings, org.apache.pekko.event.LoggingAdapter log) -
parsingRendering
public org.apache.pekko.stream.scaladsl.BidiFlow<ResponseRenderingContext,ResponseRenderingOutput, parsingRenderingorg.apache.pekko.stream.TLSProtocol.SessionBytes, ParserOutput.RequestOutput, org.apache.pekko.NotUsed> (ServerSettings settings, org.apache.pekko.event.LoggingAdapter log, boolean isSecureConnection, DateHeaderRendering dateHeaderRendering) -
controller
public org.apache.pekko.stream.scaladsl.BidiFlow<HttpResponse,ResponseRenderingContext, controllerParserOutput.RequestOutput, ParserOutput.RequestOutput, org.apache.pekko.NotUsed> (ServerSettings settings, org.apache.pekko.event.LoggingAdapter log) -
requestPreparation
public org.apache.pekko.stream.scaladsl.BidiFlow<HttpResponse,HttpResponse, requestPreparationParserOutput.RequestOutput, HttpRequest, org.apache.pekko.NotUsed> (ServerSettings settings) Wraps the HTTP/1.1 request/response bidi flow.Opentelemetry Java Instrumentation relies on this method so avoid changing it. The agent wraps the returned
BidiFlowto start and end server spans, and matches on the method name and on theBidiFlowreturn type. See https://github.com/apache/pekko-http/issues/1241- Parameters:
settings- (undocumented)- Returns:
- (undocumented)
-
requestTimeoutSupport
public org.apache.pekko.stream.scaladsl.BidiFlow<HttpResponse,HttpResponse, requestTimeoutSupportHttpRequest, HttpRequest, org.apache.pekko.NotUsed> (scala.concurrent.duration.Duration timeout, org.apache.pekko.event.LoggingAdapter log) -
parsing
public org.apache.pekko.stream.scaladsl.Flow<org.apache.pekko.stream.TLSProtocol.SessionBytes,ParserOutput.RequestOutput, parsingorg.apache.pekko.NotUsed> (ServerSettings settings, org.apache.pekko.event.LoggingAdapter log, boolean isSecureConnection) -
rendering
public org.apache.pekko.stream.scaladsl.Flow<ResponseRenderingContext,ResponseRenderingOutput, renderingorg.apache.pekko.NotUsed> (ServerSettings settings, org.apache.pekko.event.LoggingAdapter log, DateHeaderRendering dateHeaderRendering) -
userHandlerGuard
public org.apache.pekko.stream.scaladsl.BidiFlow<HttpResponse,HttpResponse, userHandlerGuardHttpRequest, HttpRequest, org.apache.pekko.NotUsed> (int pipeliningLimit) Ensures that the user handler - produces exactly one response per request - has not more thanpipeliningLimitresponses outstanding- Parameters:
pipeliningLimit- (undocumented)- Returns:
- (undocumented)
-