public class UndertowServletWebServerFactory extends AbstractServletWebServerFactory implements ConfigurableUndertowWebServerFactory, ResourceLoaderAware
ServletWebServerFactory that can be used to create
UndertowServletWebServers.
Unless explicitly configured otherwise, the factory will create servers that listen for HTTP requests on port 8080.
UndertowServletWebServerlogger| Constructor and Description |
|---|
UndertowServletWebServerFactory()
Create a new
UndertowServletWebServerFactory instance. |
UndertowServletWebServerFactory(int port)
Create a new
UndertowServletWebServerFactory that listens for requests
using the specified port. |
UndertowServletWebServerFactory(String contextPath,
int port)
Create a new
UndertowServletWebServerFactory with the specified context
path and port. |
| Modifier and Type | Method and Description |
|---|---|
void |
addBuilderCustomizers(UndertowBuilderCustomizer... customizers)
Add
UndertowBuilderCustomizers that should be used to customize the
Undertow Undertow.Builder. |
void |
addDeploymentInfoCustomizers(UndertowDeploymentInfoCustomizer... customizers)
Add
UndertowDeploymentInfoCustomizers that should be used to customize the
Undertow DeploymentInfo. |
String |
getAccessLogPrefix() |
Collection<UndertowBuilderCustomizer> |
getBuilderCustomizers()
Returns a mutable collection of the
UndertowBuilderCustomizers that will be
applied to the Undertow Undertow.Builder. |
Collection<UndertowDeploymentInfoCustomizer> |
getDeploymentInfoCustomizers()
Returns a mutable collection of the
UndertowDeploymentInfoCustomizers that
will be applied to the Undertow DeploymentInfo. |
protected UndertowServletWebServer |
getUndertowWebServer(io.undertow.Undertow.Builder builder,
io.undertow.servlet.api.DeploymentManager manager,
int port)
Factory method called to create the
UndertowServletWebServer. |
WebServer |
getWebServer(ServletContextInitializer... initializers)
Gets a new fully configured but paused
WebServer instance. |
boolean |
isAccessLogEnabled() |
boolean |
isEagerFilterInit()
Return if filters should be eagerly initialized.
|
boolean |
isPreservePathOnForward()
Return whether the request path should be preserved on forward.
|
protected boolean |
isUseForwardHeaders() |
void |
setAccessLogDirectory(File accessLogDirectory)
Set the access log directory.
|
void |
setAccessLogEnabled(boolean accessLogEnabled)
Set whether access logs are enabled.
|
void |
setAccessLogPattern(String accessLogPattern)
Set the access log pattern.
|
void |
setAccessLogPrefix(String accessLogPrefix)
Set the access log prefix.
|
void |
setAccessLogRotate(boolean accessLogRotate)
Set whether access logs rotation is enabled.
|
void |
setAccessLogSuffix(String accessLogSuffix)
Set the access log suffix.
|
void |
setBufferSize(Integer bufferSize)
Set the buffer size.
|
void |
setBuilderCustomizers(Collection<? extends UndertowBuilderCustomizer> customizers)
Set
UndertowBuilderCustomizers that should be applied to the Undertow
Undertow.Builder. |
void |
setDeploymentInfoCustomizers(Collection<? extends UndertowDeploymentInfoCustomizer> customizers)
Set
UndertowDeploymentInfoCustomizers that should be applied to the
Undertow DeploymentInfo. |
void |
setEagerFilterInit(boolean eagerFilterInit)
Set whether filters should be eagerly initialized.
|
void |
setIoThreads(Integer ioThreads)
Set the number of IO Threads.
|
void |
setPreservePathOnForward(boolean preservePathOnForward)
Set whether the request path should be preserved on forward.
|
void |
setResourceLoader(ResourceLoader resourceLoader) |
void |
setUseDirectBuffers(Boolean directBuffers)
Set whether direct buffers should be used.
|
void |
setUseForwardHeaders(boolean useForwardHeaders)
Set if x-forward-* headers should be processed.
|
void |
setWorkerThreads(Integer workerThreads)
Set the number of Worker Threads.
|
addInitializers, addWebListeners, getContextPath, getDisplayName, getDocumentRoot, getInitParameters, getJsp, getLocaleCharsetMappings, getMimeMappings, getSession, getUrlsOfJarsWithMetaInfResources, getValidDocumentRoot, getValidSessionStoreDir, getValidSessionStoreDir, getWebListenerClassNames, isRegisterDefaultServlet, mergeInitializers, setContextPath, setDisplayName, setDocumentRoot, setInitializers, setInitParameters, setJsp, setLocaleCharsetMappings, setMimeMappings, setRegisterDefaultServlet, setSession, shouldRegisterJspServletaddErrorPages, createTempDir, getAddress, getCompression, getErrorPages, getHttp2, getPort, getServerHeader, getShutdown, getSsl, getSslStoreProvider, setAddress, setCompression, setErrorPages, setHttp2, setPort, setServerHeader, setShutdown, setSsl, setSslStoreProviderclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitsetAddress, setCompression, setErrorPages, setHttp2, setPort, setServerHeader, setShutdown, setSsl, setSslStoreProvideraddErrorPagespublic UndertowServletWebServerFactory()
UndertowServletWebServerFactory instance.public UndertowServletWebServerFactory(int port)
UndertowServletWebServerFactory that listens for requests
using the specified port.port - the port to listen onpublic UndertowServletWebServerFactory(String contextPath, int port)
UndertowServletWebServerFactory with the specified context
path and port.contextPath - the root context pathport - the port to listen onpublic void setBuilderCustomizers(Collection<? extends UndertowBuilderCustomizer> customizers)
ConfigurableUndertowWebServerFactoryUndertowBuilderCustomizers that should be applied to the Undertow
Undertow.Builder. Calling this method will replace any existing customizers.setBuilderCustomizers in interface ConfigurableUndertowWebServerFactorycustomizers - the customizers to setpublic void addBuilderCustomizers(UndertowBuilderCustomizer... customizers)
ConfigurableUndertowWebServerFactoryUndertowBuilderCustomizers that should be used to customize the
Undertow Undertow.Builder.addBuilderCustomizers in interface ConfigurableUndertowWebServerFactorycustomizers - the customizers to addpublic Collection<UndertowBuilderCustomizer> getBuilderCustomizers()
UndertowBuilderCustomizers that will be
applied to the Undertow Undertow.Builder.public void setBufferSize(Integer bufferSize)
ConfigurableUndertowWebServerFactorysetBufferSize in interface ConfigurableUndertowWebServerFactorybufferSize - buffer sizepublic void setIoThreads(Integer ioThreads)
ConfigurableUndertowWebServerFactorysetIoThreads in interface ConfigurableUndertowWebServerFactoryioThreads - number of IO Threadspublic void setWorkerThreads(Integer workerThreads)
ConfigurableUndertowWebServerFactorysetWorkerThreads in interface ConfigurableUndertowWebServerFactoryworkerThreads - number of Worker Threadspublic void setUseDirectBuffers(Boolean directBuffers)
ConfigurableUndertowWebServerFactorysetUseDirectBuffers in interface ConfigurableUndertowWebServerFactorydirectBuffers - whether direct buffers should be usedpublic void setAccessLogDirectory(File accessLogDirectory)
ConfigurableUndertowWebServerFactorysetAccessLogDirectory in interface ConfigurableUndertowWebServerFactoryaccessLogDirectory - access log directorypublic void setAccessLogPattern(String accessLogPattern)
ConfigurableUndertowWebServerFactorysetAccessLogPattern in interface ConfigurableUndertowWebServerFactoryaccessLogPattern - access log patternpublic void setAccessLogPrefix(String accessLogPrefix)
ConfigurableUndertowWebServerFactorysetAccessLogPrefix in interface ConfigurableUndertowWebServerFactoryaccessLogPrefix - log prefixpublic String getAccessLogPrefix()
public void setAccessLogSuffix(String accessLogSuffix)
ConfigurableUndertowWebServerFactorysetAccessLogSuffix in interface ConfigurableUndertowWebServerFactoryaccessLogSuffix - access log suffixpublic void setAccessLogEnabled(boolean accessLogEnabled)
ConfigurableUndertowWebServerFactorysetAccessLogEnabled in interface ConfigurableUndertowWebServerFactoryaccessLogEnabled - whether access logs are enabledpublic boolean isAccessLogEnabled()
public void setAccessLogRotate(boolean accessLogRotate)
ConfigurableUndertowWebServerFactorysetAccessLogRotate in interface ConfigurableUndertowWebServerFactoryaccessLogRotate - whether access logs rotation is enabledpublic void setUseForwardHeaders(boolean useForwardHeaders)
ConfigurableUndertowWebServerFactorysetUseForwardHeaders in interface ConfigurableUndertowWebServerFactoryuseForwardHeaders - if x-forward headers should be usedprotected final boolean isUseForwardHeaders()
public void setDeploymentInfoCustomizers(Collection<? extends UndertowDeploymentInfoCustomizer> customizers)
UndertowDeploymentInfoCustomizers that should be applied to the
Undertow DeploymentInfo. Calling this method will replace any existing
customizers.customizers - the customizers to setpublic void addDeploymentInfoCustomizers(UndertowDeploymentInfoCustomizer... customizers)
UndertowDeploymentInfoCustomizers that should be used to customize the
Undertow DeploymentInfo.customizers - the customizers to addpublic Collection<UndertowDeploymentInfoCustomizer> getDeploymentInfoCustomizers()
UndertowDeploymentInfoCustomizers that
will be applied to the Undertow DeploymentInfo.public void setResourceLoader(ResourceLoader resourceLoader)
setResourceLoader in interface ResourceLoaderAwarepublic boolean isEagerFilterInit()
true if filters are eagerly initialized, otherwise false.public void setEagerFilterInit(boolean eagerFilterInit)
eagerFilterInit - true if filters are eagerly initialized, otherwise
false.public boolean isPreservePathOnForward()
true if the path should be preserved when a request is forwarded,
otherwise false.public void setPreservePathOnForward(boolean preservePathOnForward)
preservePathOnForward - true if the path should be preserved when a
request is forwarded, otherwise false.public WebServer getWebServer(ServletContextInitializer... initializers)
ServletWebServerFactoryWebServer instance. Clients should
not be able to connect to the returned server until WebServer.start() is
called (which happens when the ApplicationContext has been fully
refreshed).getWebServer in interface ServletWebServerFactoryinitializers - ServletContextInitializers that should be applied as
the server startsWebServerWebServer.stop()protected UndertowServletWebServer getUndertowWebServer(io.undertow.Undertow.Builder builder, io.undertow.servlet.api.DeploymentManager manager, int port)
UndertowServletWebServer. Subclasses
can override this method to return a different UndertowServletWebServer or
apply additional processing to the Undertow.Builder and DeploymentManager
used to bootstrap Undertowbuilder - the buildermanager - the deployment managerport - the port that Undertow should listen onUndertowServletWebServer instance