Interface ServerBuilder
Use {@link Http.newServerAt()} to create a builder, use methods to customize settings, and then call one of the bind* methods to bind a server.
- 
Method SummaryModifier and TypeMethodDescriptionadaptSettings(org.apache.pekko.japi.function.Function<ServerSettings, ServerSettings> f) Adapt the current configured settings with a function.bind(HandlerProvider handlerProvider) Bind a new HTTP server and use the given handler provider to create an asynchronoushandlerpekko.stream.javadsl.Flowfor processing all incoming connections.bind(org.apache.pekko.japi.function.Function<HttpRequest, CompletionStage<HttpResponse>> f) Bind a new HTTP server and use the given asynchronoushandlerpekko.stream.javadsl.Flowfor processing all incoming connections.bindFlow(org.apache.pekko.stream.javadsl.Flow<HttpRequest, HttpResponse, ?> handlerFlow) Binds a new HTTP server at the given endpoint and uses the givenhandlerpekko.stream.scaladsl.Flowfor processing all incoming connections.bindSync(org.apache.pekko.japi.function.Function<HttpRequest, HttpResponse> f) Bind a new HTTP server at the given endpoint and uses the givenhandlerpekko.stream.javadsl.Flowfor processing all incoming connections.org.apache.pekko.stream.javadsl.Source<IncomingConnection,CompletionStage<ServerBinding>> Creates apekko.stream.javadsl.Sourceofpekko.http.javadsl.IncomingConnectioninstances which represents a prospective HTTP server binding on the givenendpoint.enableHttps(HttpsConnectionContext context) Enable HTTPS for this binding with the given context.logTo(org.apache.pekko.event.LoggingAdapter log) Use a custom loggeronInterface(String interface_) Change interface to bind toonPort(int port) Change port to bind towithMaterializer(org.apache.pekko.stream.Materializer materializer) Use customMaterializerfor the bindingwithSettings(ServerSettings settings) Use customServerSettingsfor the binding.
- 
Method Details- 
onInterfaceChange interface to bind to
- 
onPortChange port to bind to
- 
logToUse a custom logger
- 
withSettingsUse customServerSettingsfor the binding.- Parameters:
- settings- (undocumented)
- Returns:
- (undocumented)
 
- 
adaptSettingsServerBuilder adaptSettings(org.apache.pekko.japi.function.Function<ServerSettings, ServerSettings> f) Adapt the current configured settings with a function.- Parameters:
- f- (undocumented)
- Returns:
- (undocumented)
 
- 
enableHttpsEnable HTTPS for this binding with the given context.- Parameters:
- context- (undocumented)
- Returns:
- (undocumented)
 
- 
withMaterializerUse customMaterializerfor the binding- Parameters:
- materializer- (undocumented)
- Returns:
- (undocumented)
 
- 
bindCompletionStage<ServerBinding> bind(org.apache.pekko.japi.function.Function<HttpRequest, CompletionStage<HttpResponse>> f) Bind a new HTTP server and use the given asynchronoushandlerpekko.stream.javadsl.Flowfor processing all incoming connections.The number of concurrently accepted connections can be configured by overriding the pekko.http.server.max-connectionssetting. Please see the documentation in the reference.conf for more information about what kind of guarantees to expect.Supports HTTP/2 on the same port if http2 support is enabled. - Parameters:
- f- (undocumented)
- Returns:
- (undocumented)
 
- 
bindBind a new HTTP server and use the given handler provider to create an asynchronoushandlerpekko.stream.javadsl.Flowfor processing all incoming connections.Most importantly, you can pass a Route to this method because Route implements HandlerProvider. The number of concurrently accepted connections can be configured by overriding the pekko.http.server.max-connectionssetting. Please see the documentation in the reference.conf for more information about what kind of guarantees to expect.Supports HTTP/2 on the same port if http2 support is enabled. - Parameters:
- handlerProvider- (undocumented)
- Returns:
- (undocumented)
 
- 
bindSyncCompletionStage<ServerBinding> bindSync(org.apache.pekko.japi.function.Function<HttpRequest, HttpResponse> f) Bind a new HTTP server at the given endpoint and uses the givenhandlerpekko.stream.javadsl.Flowfor processing all incoming connections.The number of concurrently accepted connections can be configured by overriding the pekko.http.server.max-connectionssetting. Please see the documentation in the reference.conf for more information about what kind of guarantees to expect.Supports HTTP/2 on the same port if http2 support is enabled. - Parameters:
- f- (undocumented)
- Returns:
- (undocumented)
 
- 
bindFlowCompletionStage<ServerBinding> bindFlow(org.apache.pekko.stream.javadsl.Flow<HttpRequest, HttpResponse, ?> handlerFlow) Binds a new HTTP server at the given endpoint and uses the givenhandlerpekko.stream.scaladsl.Flowfor processing all incoming connections.The number of concurrently accepted connections can be configured by overriding the pekko.http.server.max-connectionssetting. Please see the documentation in the reference.conf for more information about what kind of guarantees to expect.- Parameters:
- handlerFlow- (undocumented)
- Returns:
- (undocumented)
 
- 
connectionSourceorg.apache.pekko.stream.javadsl.Source<IncomingConnection,CompletionStage<ServerBinding>> connectionSource()Creates apekko.stream.javadsl.Sourceofpekko.http.javadsl.IncomingConnectioninstances which represents a prospective HTTP server binding on the givenendpoint.Note that each materialization will create a new binding, so * if the configured port is 0 the resulting source can be materialized several times. Each materialization will then be assigned a new local port by the operating system, which can then be retrieved by the materialized pekko.http.javadsl.ServerBinding.* if the configured port is non-zero subsequent materialization attempts of the produced source will immediately fail, unless the first materialization has already been unbound. Unbinding can be triggered via the materialized pekko.http.javadsl.ServerBinding.- Returns:
- (undocumented)
 
 
-