Class H2ServerBootstrap
- java.lang.Object
-
- org.apache.hc.core5.http2.impl.nio.bootstrap.H2ServerBootstrap
-
public class H2ServerBootstrap extends java.lang.ObjectHTTP/2 capableHttpAsyncServerbootstrap.- Since:
- 5.0
-
-
Field Summary
Fields Modifier and Type Field Description private java.lang.StringcanonicalHostNameprivate CharCodingConfigcharCodingConfigprivate Callback<java.lang.Exception>exceptionCallbackprivate java.util.List<FilterEntry<AsyncFilterHandler>>filtersprivate H2Configh2Configprivate H2StreamListenerh2StreamListenerprivate java.util.List<HandlerEntry<Supplier<AsyncServerExchangeHandler>>>handlerListprivate TimeouthandshakeTimeoutprivate Http1Confighttp1Configprivate Http1StreamListenerhttp1StreamListenerprivate HttpProcessorhttpProcessorprivate IOReactorConfigioReactorConfigprivate Decorator<IOSession>ioSessionDecoratorprivate LookupRegistry<Supplier<AsyncServerExchangeHandler>>lookupRegistryprivate IOSessionListenersessionListenerprivate TlsStrategytlsStrategyprivate HttpVersionPolicyversionPolicy
-
Constructor Summary
Constructors Modifier Constructor Description privateH2ServerBootstrap()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description H2ServerBootstrapaddFilterAfter(java.lang.String existing, java.lang.String name, AsyncFilterHandler filterHandler)Adds the filter after the filter with the given name.H2ServerBootstrapaddFilterBefore(java.lang.String existing, java.lang.String name, AsyncFilterHandler filterHandler)Adds the filter before the filter with the given name.H2ServerBootstrapaddFilterFirst(java.lang.String name, AsyncFilterHandler filterHandler)Add an filter to the head of the processing list.H2ServerBootstrapaddFilterLast(java.lang.String name, AsyncFilterHandler filterHandler)Add an filter to the tail of the processing list.static H2ServerBootstrapbootstrap()HttpAsyncServercreate()H2ServerBootstrapregister(java.lang.String uriPattern, Supplier<AsyncServerExchangeHandler> supplier)Registers the givenAsyncServerExchangeHandlerSupplieras a default handler for URIs matching the given pattern.<T> H2ServerBootstrapregister(java.lang.String uriPattern, AsyncServerRequestHandler<T> requestHandler)Registers the givenAsyncServerRequestHandleras a default handler for URIs matching the given pattern.H2ServerBootstrapregisterVirtual(java.lang.String hostname, java.lang.String uriPattern, Supplier<AsyncServerExchangeHandler> supplier)Registers the givenAsyncServerExchangeHandlerSupplieras a handler for URIs matching the given host and the pattern.<T> H2ServerBootstrapregisterVirtual(java.lang.String hostname, java.lang.String uriPattern, AsyncServerRequestHandler<T> requestHandler)Registers the givenAsyncServerRequestHandleras a handler for URIs matching the given host and the pattern.H2ServerBootstrapreplaceFilter(java.lang.String existing, AsyncFilterHandler filterHandler)Replace an existing filter with the given name with new filter.H2ServerBootstrapsetCanonicalHostName(java.lang.String canonicalHostName)Sets canonical name (fully qualified domain name) of the server.H2ServerBootstrapsetCharset(CharCodingConfig charCodingConfig)Sets message char coding.H2ServerBootstrapsetExceptionCallback(Callback<java.lang.Exception> exceptionCallback)AssignsExceptionCallbackinstance.H2ServerBootstrapsetH2Config(H2Config h2Config)Sets HTTP/2 protocol parametersH2ServerBootstrapsetHandshakeTimeout(Timeout handshakeTimeout)H2ServerBootstrapsetHttp1Config(Http1Config http1Config)Sets HTTP/1.1 protocol parametersH2ServerBootstrapsetHttpProcessor(HttpProcessor httpProcessor)AssignsHttpProcessorinstance.H2ServerBootstrapsetIOReactorConfig(IOReactorConfig ioReactorConfig)Sets I/O reactor configuration.H2ServerBootstrapsetIOSessionDecorator(Decorator<IOSession> ioSessionDecorator)H2ServerBootstrapsetIOSessionListener(IOSessionListener sessionListener)AssignsIOSessionListenerinstance.H2ServerBootstrapsetLookupRegistry(LookupRegistry<Supplier<AsyncServerExchangeHandler>> lookupRegistry)AssignsLookupRegistryinstance.H2ServerBootstrapsetStreamListener(Http1StreamListener http1StreamListener)AssignsHttp1StreamListenerinstance.H2ServerBootstrapsetStreamListener(H2StreamListener h2StreamListener)AssignsH2StreamListenerinstance.H2ServerBootstrapsetTlsStrategy(TlsStrategy tlsStrategy)AssignsTlsStrategyinstance.H2ServerBootstrapsetVersionPolicy(HttpVersionPolicy versionPolicy)Sets HTTP protocol version policy
-
-
-
Field Detail
-
handlerList
private final java.util.List<HandlerEntry<Supplier<AsyncServerExchangeHandler>>> handlerList
-
filters
private final java.util.List<FilterEntry<AsyncFilterHandler>> filters
-
canonicalHostName
private java.lang.String canonicalHostName
-
lookupRegistry
private LookupRegistry<Supplier<AsyncServerExchangeHandler>> lookupRegistry
-
ioReactorConfig
private IOReactorConfig ioReactorConfig
-
httpProcessor
private HttpProcessor httpProcessor
-
charCodingConfig
private CharCodingConfig charCodingConfig
-
versionPolicy
private HttpVersionPolicy versionPolicy
-
h2Config
private H2Config h2Config
-
http1Config
private Http1Config http1Config
-
tlsStrategy
private TlsStrategy tlsStrategy
-
handshakeTimeout
private Timeout handshakeTimeout
-
exceptionCallback
private Callback<java.lang.Exception> exceptionCallback
-
sessionListener
private IOSessionListener sessionListener
-
h2StreamListener
private H2StreamListener h2StreamListener
-
http1StreamListener
private Http1StreamListener http1StreamListener
-
-
Method Detail
-
bootstrap
public static H2ServerBootstrap bootstrap()
-
setCanonicalHostName
public final H2ServerBootstrap setCanonicalHostName(java.lang.String canonicalHostName)
Sets canonical name (fully qualified domain name) of the server.- Since:
- 5.0
-
setIOReactorConfig
public final H2ServerBootstrap setIOReactorConfig(IOReactorConfig ioReactorConfig)
Sets I/O reactor configuration.
-
setHttpProcessor
public final H2ServerBootstrap setHttpProcessor(HttpProcessor httpProcessor)
AssignsHttpProcessorinstance.
-
setVersionPolicy
public final H2ServerBootstrap setVersionPolicy(HttpVersionPolicy versionPolicy)
Sets HTTP protocol version policy
-
setH2Config
public final H2ServerBootstrap setH2Config(H2Config h2Config)
Sets HTTP/2 protocol parameters
-
setHttp1Config
public final H2ServerBootstrap setHttp1Config(Http1Config http1Config)
Sets HTTP/1.1 protocol parameters
-
setCharset
public final H2ServerBootstrap setCharset(CharCodingConfig charCodingConfig)
Sets message char coding.
-
setTlsStrategy
public final H2ServerBootstrap setTlsStrategy(TlsStrategy tlsStrategy)
AssignsTlsStrategyinstance.
-
setHandshakeTimeout
public final H2ServerBootstrap setHandshakeTimeout(Timeout handshakeTimeout)
-
setIOSessionDecorator
public final H2ServerBootstrap setIOSessionDecorator(Decorator<IOSession> ioSessionDecorator)
-
setExceptionCallback
public final H2ServerBootstrap setExceptionCallback(Callback<java.lang.Exception> exceptionCallback)
AssignsExceptionCallbackinstance.
-
setIOSessionListener
public final H2ServerBootstrap setIOSessionListener(IOSessionListener sessionListener)
AssignsIOSessionListenerinstance.
-
setStreamListener
public final H2ServerBootstrap setStreamListener(H2StreamListener h2StreamListener)
AssignsH2StreamListenerinstance.
-
setStreamListener
public final H2ServerBootstrap setStreamListener(Http1StreamListener http1StreamListener)
AssignsHttp1StreamListenerinstance.
-
setLookupRegistry
public final H2ServerBootstrap setLookupRegistry(LookupRegistry<Supplier<AsyncServerExchangeHandler>> lookupRegistry)
AssignsLookupRegistryinstance.
-
register
public final H2ServerBootstrap register(java.lang.String uriPattern, Supplier<AsyncServerExchangeHandler> supplier)
Registers the givenAsyncServerExchangeHandlerSupplieras a default handler for URIs matching the given pattern.- Parameters:
uriPattern- the pattern to register the handler for.supplier- the handler supplier.
-
registerVirtual
public final H2ServerBootstrap registerVirtual(java.lang.String hostname, java.lang.String uriPattern, Supplier<AsyncServerExchangeHandler> supplier)
Registers the givenAsyncServerExchangeHandlerSupplieras a handler for URIs matching the given host and the pattern.- Parameters:
hostname- the host nameuriPattern- the pattern to register the handler for.supplier- the handler supplier.
-
register
public final <T> H2ServerBootstrap register(java.lang.String uriPattern, AsyncServerRequestHandler<T> requestHandler)
Registers the givenAsyncServerRequestHandleras a default handler for URIs matching the given pattern.- Parameters:
uriPattern- the pattern to register the handler for.requestHandler- the handler.
-
registerVirtual
public final <T> H2ServerBootstrap registerVirtual(java.lang.String hostname, java.lang.String uriPattern, AsyncServerRequestHandler<T> requestHandler)
Registers the givenAsyncServerRequestHandleras a handler for URIs matching the given host and the pattern.- Parameters:
hostname- the host nameuriPattern- the pattern to register the handler for.requestHandler- the handler.
-
addFilterBefore
public final H2ServerBootstrap addFilterBefore(java.lang.String existing, java.lang.String name, AsyncFilterHandler filterHandler)
Adds the filter before the filter with the given name.
-
addFilterAfter
public final H2ServerBootstrap addFilterAfter(java.lang.String existing, java.lang.String name, AsyncFilterHandler filterHandler)
Adds the filter after the filter with the given name.
-
replaceFilter
public final H2ServerBootstrap replaceFilter(java.lang.String existing, AsyncFilterHandler filterHandler)
Replace an existing filter with the given name with new filter.
-
addFilterFirst
public final H2ServerBootstrap addFilterFirst(java.lang.String name, AsyncFilterHandler filterHandler)
Add an filter to the head of the processing list.
-
addFilterLast
public final H2ServerBootstrap addFilterLast(java.lang.String name, AsyncFilterHandler filterHandler)
Add an filter to the tail of the processing list.
-
create
public HttpAsyncServer create()
-
-