public abstract class AbstractHttp11Protocol<S> extends AbstractProtocol<S>
AbstractProtocol.AsyncTimeout, AbstractProtocol.ConnectionHandler<S>, AbstractProtocol.RecycledProcessors
Modifier and Type | Field and Description |
---|---|
protected static StringManager |
sm |
adapter, domain, mserver, oname, processorCache, rgOname
Constructor and Description |
---|
AbstractHttp11Protocol(AbstractEndpoint<S,?> endpoint) |
Modifier and Type | Method and Description |
---|---|
void |
addAllowedTrailerHeader(java.lang.String header) |
void |
addSslHostConfig(SSLHostConfig sslHostConfig) |
void |
addUpgradeProtocol(UpgradeProtocol upgradeProtocol) |
protected Processor |
createProcessor()
Create and configure a new Processor instance for the current protocol
implementation.
|
protected Processor |
createUpgradeProcessor(SocketWrapperBase<?> socket,
UpgradeToken upgradeToken) |
SSLHostConfig[] |
findSslHostConfigs() |
UpgradeProtocol[] |
findUpgradeProtocols() |
java.lang.String |
getAlgorithm() |
java.lang.String |
getAllowedTrailerHeaders() |
protected java.util.Set<java.lang.String> |
getAllowedTrailerHeadersInternal() |
boolean |
getAllowHostHeaderMismatch()
Will Tomcat accept an HTTP 1.1 request where the host header does not
agree with the host specified (if any) in the request line?
|
java.lang.String |
getCiphers() |
java.lang.String |
getClientAuth() |
java.lang.String |
getCompressibleMimeType() |
java.lang.String[] |
getCompressibleMimeTypes() |
java.lang.String |
getCompression() |
protected int |
getCompressionLevel() |
int |
getCompressionMinSize() |
int |
getConnectionUploadTimeout()
Specifies a different (usually longer) connection timeout during data
upload.
|
java.lang.String |
getCrlFile() |
java.lang.String |
getDefaultSSLHostConfigName() |
boolean |
getDisableUploadTimeout()
Get the flag that controls upload time-outs.
|
protected AbstractEndpoint<S,?> |
getEndpoint()
Over-ridden here to make the method visible to nested classes.
|
java.lang.String |
getKeyAlias() |
java.lang.String |
getKeyPass() |
java.lang.String |
getKeystoreFile() |
java.lang.String |
getKeystorePass() |
java.lang.String |
getKeystoreProvider() |
java.lang.String |
getKeystoreType() |
int |
getMaxExtensionSize() |
int |
getMaxHttpHeaderSize() |
int |
getMaxKeepAliveRequests() |
int |
getMaxSavePostSize()
Return the maximum size of the post which will be saved during FORM or
CLIENT-CERT authentication.
|
int |
getMaxSwallowSize() |
int |
getMaxTrailerSize() |
UpgradeProtocol |
getNegotiatedProtocol(java.lang.String negotiatedName)
Find a suitable handler for the protocol negotiated
at the network layer.
|
java.lang.String |
getNoCompressionUserAgents() |
protected java.util.regex.Pattern |
getNoCompressionUserAgentsPattern() |
protected java.lang.String |
getProtocolName()
Obtain the name of the protocol, (Http, Ajp, etc.).
|
boolean |
getRejectIllegalHeader()
If an HTTP request is received that contains an illegal header name or
value (e.g. the header name is not a token) will the request be rejected
(with a 400 response) or will the illegal header be ignored?
|
boolean |
getRejectIllegalHeaderName()
Deprecated.
Now an alias for
getRejectIllegalHeader() . Will be
removed in Tomcat 10 onwards. |
java.lang.String |
getRelaxedPathChars() |
java.lang.String |
getRelaxedQueryChars() |
java.lang.String |
getRestrictedUserAgents()
Get the string form of the regular expression that defines the User
agents which should be restricted to HTTP/1.0 support.
|
protected java.util.regex.Pattern |
getRestrictedUserAgentsPattern() |
boolean |
getSecure() |
java.lang.String |
getServer() |
boolean |
getServerRemoveAppProvidedValues()
Should application provider values for the HTTP Server header be removed.
|
int |
getSessionCacheSize() |
int |
getSessionTimeout() |
java.lang.String |
getSSLCACertificateFile() |
java.lang.String |
getSSLCACertificatePath() |
java.lang.String |
getSSLCARevocationFile() |
java.lang.String |
getSSLCARevocationPath() |
java.lang.String |
getSSLCertificateChainFile() |
java.lang.String |
getSSLCertificateFile() |
java.lang.String |
getSSLCertificateKeyFile() |
java.lang.String |
getSSLCipherSuite() |
boolean |
getSSLDisableCompression() |
boolean |
getSSLDisableSessionTickets() |
java.lang.String |
getSslEnabledProtocols() |
boolean |
getSSLHonorCipherOrder() |
java.lang.String |
getSSLPassword() |
java.lang.String |
getSslProtocol() |
java.lang.String |
getSSLProtocol() |
java.lang.String |
getSSLVerifyClient() |
int |
getSSLVerifyDepth() |
java.lang.String |
getTrustManagerClassName() |
int |
getTrustMaxCertLength() |
java.lang.String |
getTruststoreAlgorithm() |
java.lang.String |
getTruststoreFile() |
java.lang.String |
getTruststorePass() |
java.lang.String |
getTruststoreProvider() |
java.lang.String |
getTruststoreType() |
UpgradeProtocol |
getUpgradeProtocol(java.lang.String upgradedName)
Find a suitable handler for the protocol upgraded name specified.
|
boolean |
getUseSendfile() |
boolean |
getUseServerCipherSuitesOrder() |
void |
init()
Initialise the protocol.
|
boolean |
isSSLEnabled() |
void |
reloadSsslHostConfig(java.lang.String hostName) |
void |
reloadSsslHostConfigs() |
void |
removeAllowedTrailerHeader(java.lang.String header) |
void |
setAlgorithm(java.lang.String keyManagerAlgorithm) |
void |
setAllowedTrailerHeaders(java.lang.String commaSeparatedHeaders) |
void |
setAllowHostHeaderMismatch(boolean allowHostHeaderMismatch)
Will Tomcat accept an HTTP 1.1 request where the host header does not
agree with the host specified (if any) in the request line?
|
void |
setCiphers(java.lang.String ciphers) |
void |
setClientAuth(java.lang.String certificateVerification) |
void |
setCompressibleMimeType(java.lang.String valueS) |
void |
setCompression(java.lang.String compression) |
void |
setCompressionMinSize(int compressionMinSize) |
void |
setConnectionUploadTimeout(int timeout)
Set the upload timeout.
|
void |
setCrlFile(java.lang.String certificateRevocationListFile) |
void |
setDefaultSSLHostConfigName(java.lang.String defaultSSLHostConfigName) |
void |
setDisableUploadTimeout(boolean isDisabled)
Set the flag to control whether a separate connection timeout is used
during upload of a request body.
|
void |
setKeyAlias(java.lang.String certificateKeyAlias) |
void |
setKeyPass(java.lang.String certificateKeyPassword) |
void |
setKeystoreFile(java.lang.String keystoreFile) |
void |
setKeystorePass(java.lang.String certificateKeystorePassword) |
void |
setKeystoreProvider(java.lang.String certificateKeystoreProvider) |
void |
setKeystoreType(java.lang.String certificateKeystoreType) |
void |
setMaxExtensionSize(int maxExtensionSize) |
void |
setMaxHttpHeaderSize(int valueI) |
void |
setMaxKeepAliveRequests(int mkar)
Set the maximum number of Keep-Alive requests to allow.
|
void |
setMaxSavePostSize(int maxSavePostSize)
Set the maximum size of a POST which will be buffered during FORM or
CLIENT-CERT authentication.
|
void |
setMaxSwallowSize(int maxSwallowSize) |
void |
setMaxTrailerSize(int maxTrailerSize) |
void |
setNoCompressionUserAgents(java.lang.String noCompressionUserAgents) |
void |
setRejectIllegalHeader(boolean rejectIllegalHeader)
If an HTTP request is received that contains an illegal header name or
value (e.g. the header name is not a token) should the request be
rejected (with a 400 response) or should the illegal header be ignored?
|
void |
setRejectIllegalHeaderName(boolean rejectIllegalHeaderName)
Deprecated.
Now an alias for
setRejectIllegalHeader(boolean) .
Will be removed in Tomcat 10 onwards. |
void |
setRelaxedPathChars(java.lang.String relaxedPathChars) |
void |
setRelaxedQueryChars(java.lang.String relaxedQueryChars) |
void |
setRestrictedUserAgents(java.lang.String restrictedUserAgents)
Set restricted user agent list (which will downgrade the connector
to HTTP/1.0 mode).
|
void |
setSecure(boolean b) |
void |
setServer(java.lang.String server)
Set the server header name.
|
void |
setServerRemoveAppProvidedValues(boolean serverRemoveAppProvidedValues) |
void |
setSessionCacheSize(int sessionCacheSize) |
void |
setSessionTimeout(int sessionTimeout) |
void |
setSSLCACertificateFile(java.lang.String caCertificateFile) |
void |
setSSLCACertificatePath(java.lang.String caCertificatePath) |
void |
setSSLCARevocationFile(java.lang.String certificateRevocationListFile) |
void |
setSSLCARevocationPath(java.lang.String certificateRevocationListPath) |
void |
setSSLCertificateChainFile(java.lang.String certificateChainFile) |
void |
setSSLCertificateFile(java.lang.String certificateFile) |
void |
setSSLCertificateKeyFile(java.lang.String certificateKeyFile) |
void |
setSSLCipherSuite(java.lang.String ciphers) |
void |
setSSLDisableCompression(boolean disableCompression) |
void |
setSSLDisableSessionTickets(boolean disableSessionTickets) |
void |
setSSLEnabled(boolean SSLEnabled) |
void |
setSslEnabledProtocols(java.lang.String enabledProtocols) |
void |
setSSLHonorCipherOrder(boolean honorCipherOrder) |
void |
setSSLPassword(java.lang.String certificateKeyPassword) |
void |
setSslProtocol(java.lang.String sslProtocol) |
void |
setSSLProtocol(java.lang.String sslProtocol) |
void |
setSSLVerifyClient(java.lang.String certificateVerification) |
void |
setSSLVerifyDepth(int certificateVerificationDepth) |
void |
setTrustManagerClassName(java.lang.String trustManagerClassName) |
void |
setTrustMaxCertLength(int certificateVerificationDepth) |
void |
setTruststoreAlgorithm(java.lang.String truststoreAlgorithm) |
void |
setTruststoreFile(java.lang.String truststoreFile) |
void |
setTruststorePass(java.lang.String truststorePassword) |
void |
setTruststoreProvider(java.lang.String truststoreProvider) |
void |
setTruststoreType(java.lang.String truststoreType) |
void |
setUseSendfile(boolean useSendfile) |
void |
setUseServerCipherSuitesOrder(boolean honorCipherOrder) |
boolean |
useCompression(Request request,
Response response) |
addWaitingProcessor, destroy, getAcceptCount, getAcceptorThreadCount, getAcceptorThreadPriority, getAdapter, getAddress, getAsyncTimeout, getClientCertProvider, getConnectionCount, getConnectionLinger, getConnectionTimeout, getDomain, getExecutor, getHandler, getKeepAliveTimeout, getLocalPort, getLog, getMaxConnections, getMaxHeaderCount, getMaxThreads, getMinSpareThreads, getName, getNameIndex, getNamePrefix, getObjectName, getPort, getProcessorCache, getProperty, getTcpNoDelay, getThreadPriority, isAprRequired, isPaused, isSendfileSupported, pause, postDeregister, postRegister, preDeregister, preRegister, removeWaitingProcessor, resume, setAcceptCount, setAcceptorThreadCount, setAcceptorThreadPriority, setAdapter, setAddress, setClientCertProvider, setConnectionLinger, setConnectionTimeout, setExecutor, setHandler, setKeepAliveTimeout, setMaxConnections, setMaxHeaderCount, setMaxThreads, setMinSpareThreads, setPort, setProcessorCache, setProperty, setTcpNoDelay, setThreadPriority, start, stop
protected static final StringManager sm
public AbstractHttp11Protocol(AbstractEndpoint<S,?> endpoint)
public void init() throws java.lang.Exception
ProtocolHandler
init
in interface ProtocolHandler
init
in class AbstractProtocol<S>
java.lang.Exception
- If the protocol handler fails to initialiseprotected java.lang.String getProtocolName()
AbstractProtocol
getProtocolName
in class AbstractProtocol<S>
protected AbstractEndpoint<S,?> getEndpoint()
Over-ridden here to make the method visible to nested classes.
getEndpoint
in class AbstractProtocol<S>
public java.lang.String getRelaxedPathChars()
public void setRelaxedPathChars(java.lang.String relaxedPathChars)
public java.lang.String getRelaxedQueryChars()
public void setRelaxedQueryChars(java.lang.String relaxedQueryChars)
public boolean getAllowHostHeaderMismatch()
true
if Tomcat will allow such requests, otherwise
false
public void setAllowHostHeaderMismatch(boolean allowHostHeaderMismatch)
allowHostHeaderMismatch
- true
to allow such requests,
false
to reject them with a 400public boolean getRejectIllegalHeader()
true
if the request will be rejected or false
if
the header will be ignoredpublic void setRejectIllegalHeader(boolean rejectIllegalHeader)
rejectIllegalHeader
- true
to reject requests with illegal
header names or values, false
to
ignore the header@Deprecated public boolean getRejectIllegalHeaderName()
getRejectIllegalHeader()
. Will be
removed in Tomcat 10 onwards.true
if the request will be rejected or false
if
the header will be ignored@Deprecated public void setRejectIllegalHeaderName(boolean rejectIllegalHeaderName)
setRejectIllegalHeader(boolean)
.
Will be removed in Tomcat 10 onwards.rejectIllegalHeaderName
- true
to reject requests with
illegal header names or values,
false
to ignore the headerpublic int getMaxSavePostSize()
public void setMaxSavePostSize(int maxSavePostSize)
maxSavePostSize
- The maximum size POST body to buffer in bytespublic int getMaxHttpHeaderSize()
public void setMaxHttpHeaderSize(int valueI)
public int getConnectionUploadTimeout()
public void setConnectionUploadTimeout(int timeout)
timeout
- Upload timeout in millisecondspublic boolean getDisableUploadTimeout()
true
if the separate upload timeout is disabledpublic void setDisableUploadTimeout(boolean isDisabled)
isDisabled
- true
if the separate upload timeout should be
disabledpublic void setCompression(java.lang.String compression)
public java.lang.String getCompression()
protected int getCompressionLevel()
public java.lang.String getNoCompressionUserAgents()
protected java.util.regex.Pattern getNoCompressionUserAgentsPattern()
public void setNoCompressionUserAgents(java.lang.String noCompressionUserAgents)
public java.lang.String getCompressibleMimeType()
public void setCompressibleMimeType(java.lang.String valueS)
public java.lang.String[] getCompressibleMimeTypes()
public int getCompressionMinSize()
public void setCompressionMinSize(int compressionMinSize)
public java.lang.String getRestrictedUserAgents()
protected java.util.regex.Pattern getRestrictedUserAgentsPattern()
public void setRestrictedUserAgents(java.lang.String restrictedUserAgents)
Pattern
.restrictedUserAgents
- The regular expression as supported by
Pattern
for the user agents e.g.
"gorilla|desesplorer|tigrus"public java.lang.String getServer()
public void setServer(java.lang.String server)
server
- The new value to use for the server headerpublic boolean getServerRemoveAppProvidedValues()
server
is set, any application provided value will
be over-ridden.true
if application provided values should be removed,
otherwise false
public void setServerRemoveAppProvidedValues(boolean serverRemoveAppProvidedValues)
public int getMaxTrailerSize()
public void setMaxTrailerSize(int maxTrailerSize)
public int getMaxExtensionSize()
public void setMaxExtensionSize(int maxExtensionSize)
public int getMaxSwallowSize()
public void setMaxSwallowSize(int maxSwallowSize)
public boolean getSecure()
public void setSecure(boolean b)
public void setAllowedTrailerHeaders(java.lang.String commaSeparatedHeaders)
protected java.util.Set<java.lang.String> getAllowedTrailerHeadersInternal()
public java.lang.String getAllowedTrailerHeaders()
public void addAllowedTrailerHeader(java.lang.String header)
public void removeAllowedTrailerHeader(java.lang.String header)
public void addUpgradeProtocol(UpgradeProtocol upgradeProtocol)
public UpgradeProtocol[] findUpgradeProtocols()
public UpgradeProtocol getNegotiatedProtocol(java.lang.String negotiatedName)
AbstractProtocol
getNegotiatedProtocol
in class AbstractProtocol<S>
negotiatedName
- The name of the requested negotiated protocol.UpgradeProtocol.getAlpnName()
matches
the requested protocolpublic UpgradeProtocol getUpgradeProtocol(java.lang.String upgradedName)
AbstractProtocol
getUpgradeProtocol
in class AbstractProtocol<S>
upgradedName
- The name of the requested negotiated protocol.UpgradeProtocol.getAlpnName()
matches
the requested protocolpublic boolean isSSLEnabled()
public void setSSLEnabled(boolean SSLEnabled)
public boolean getUseSendfile()
public void setUseSendfile(boolean useSendfile)
public int getMaxKeepAliveRequests()
public void setMaxKeepAliveRequests(int mkar)
mkar
- The new maximum number of Keep-Alive requests allowedpublic java.lang.String getDefaultSSLHostConfigName()
public void setDefaultSSLHostConfigName(java.lang.String defaultSSLHostConfigName)
public void addSslHostConfig(SSLHostConfig sslHostConfig)
public SSLHostConfig[] findSslHostConfigs()
public void reloadSsslHostConfigs()
public void reloadSsslHostConfig(java.lang.String hostName)
public java.lang.String getSslEnabledProtocols()
public void setSslEnabledProtocols(java.lang.String enabledProtocols)
public java.lang.String getSSLProtocol()
public void setSSLProtocol(java.lang.String sslProtocol)
public java.lang.String getKeystoreFile()
public void setKeystoreFile(java.lang.String keystoreFile)
public java.lang.String getSSLCertificateChainFile()
public void setSSLCertificateChainFile(java.lang.String certificateChainFile)
public java.lang.String getSSLCertificateFile()
public void setSSLCertificateFile(java.lang.String certificateFile)
public java.lang.String getSSLCertificateKeyFile()
public void setSSLCertificateKeyFile(java.lang.String certificateKeyFile)
public java.lang.String getAlgorithm()
public void setAlgorithm(java.lang.String keyManagerAlgorithm)
public java.lang.String getClientAuth()
public void setClientAuth(java.lang.String certificateVerification)
public java.lang.String getSSLVerifyClient()
public void setSSLVerifyClient(java.lang.String certificateVerification)
public int getTrustMaxCertLength()
public void setTrustMaxCertLength(int certificateVerificationDepth)
public int getSSLVerifyDepth()
public void setSSLVerifyDepth(int certificateVerificationDepth)
public boolean getUseServerCipherSuitesOrder()
public void setUseServerCipherSuitesOrder(boolean honorCipherOrder)
public boolean getSSLHonorCipherOrder()
public void setSSLHonorCipherOrder(boolean honorCipherOrder)
public java.lang.String getCiphers()
public void setCiphers(java.lang.String ciphers)
public java.lang.String getSSLCipherSuite()
public void setSSLCipherSuite(java.lang.String ciphers)
public java.lang.String getKeystorePass()
public void setKeystorePass(java.lang.String certificateKeystorePassword)
public java.lang.String getKeyPass()
public void setKeyPass(java.lang.String certificateKeyPassword)
public java.lang.String getSSLPassword()
public void setSSLPassword(java.lang.String certificateKeyPassword)
public java.lang.String getCrlFile()
public void setCrlFile(java.lang.String certificateRevocationListFile)
public java.lang.String getSSLCARevocationFile()
public void setSSLCARevocationFile(java.lang.String certificateRevocationListFile)
public java.lang.String getSSLCARevocationPath()
public void setSSLCARevocationPath(java.lang.String certificateRevocationListPath)
public java.lang.String getKeystoreType()
public void setKeystoreType(java.lang.String certificateKeystoreType)
public java.lang.String getKeystoreProvider()
public void setKeystoreProvider(java.lang.String certificateKeystoreProvider)
public java.lang.String getKeyAlias()
public void setKeyAlias(java.lang.String certificateKeyAlias)
public java.lang.String getTruststoreAlgorithm()
public void setTruststoreAlgorithm(java.lang.String truststoreAlgorithm)
public java.lang.String getTruststoreFile()
public void setTruststoreFile(java.lang.String truststoreFile)
public java.lang.String getTruststorePass()
public void setTruststorePass(java.lang.String truststorePassword)
public java.lang.String getTruststoreType()
public void setTruststoreType(java.lang.String truststoreType)
public java.lang.String getTruststoreProvider()
public void setTruststoreProvider(java.lang.String truststoreProvider)
public java.lang.String getSslProtocol()
public void setSslProtocol(java.lang.String sslProtocol)
public int getSessionCacheSize()
public void setSessionCacheSize(int sessionCacheSize)
public int getSessionTimeout()
public void setSessionTimeout(int sessionTimeout)
public java.lang.String getSSLCACertificatePath()
public void setSSLCACertificatePath(java.lang.String caCertificatePath)
public java.lang.String getSSLCACertificateFile()
public void setSSLCACertificateFile(java.lang.String caCertificateFile)
public boolean getSSLDisableCompression()
public void setSSLDisableCompression(boolean disableCompression)
public boolean getSSLDisableSessionTickets()
public void setSSLDisableSessionTickets(boolean disableSessionTickets)
public java.lang.String getTrustManagerClassName()
public void setTrustManagerClassName(java.lang.String trustManagerClassName)
protected Processor createProcessor()
AbstractProtocol
createProcessor
in class AbstractProtocol<S>
protected Processor createUpgradeProcessor(SocketWrapperBase<?> socket, UpgradeToken upgradeToken)
createUpgradeProcessor
in class AbstractProtocol<S>
Copyright © 2000-2021 Apache Software Foundation. All Rights Reserved.