org.apache.coyote.http11

## Class Http11AprProtocol

- java.lang.Object
- - org.apache.coyote.AbstractProtocol<S>
  - - org.apache.coyote.http11.AbstractHttp11Protocol<Long>
    - - org.apache.coyote.http11.Http11AprProtocol

- All Implemented Interfaces:
    MBeanRegistration, ProtocolHandler

      public class Http11AprProtocol
      extends AbstractHttp11Protocol<Long>

  Abstract the protocol implementation, including threading, etc. Processor is single threaded and specific to stream-based protocols, will not fit Jk protocols like JNI.
  Author:
    Remy Maucherat, Costin Manolache

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `protected static class` | `Http11AprProtocol.Http11ConnectionHandler`

    - ### Nested classes/interfaces inherited from class org.apache.coyote.AbstractProtocol

      `AbstractProtocol.AbstractConnectionHandler<S,P extends Processor<S>>, AbstractProtocol.RecycledProcessors<P extends Processor<S>,S>`

  - ### Field Summary

    - ### Fields inherited from class org.apache.coyote.http11.AbstractHttp11Protocol

      `sm`

    - ### Fields inherited from class org.apache.coyote.AbstractProtocol

      `adapter, clientCertProvider, domain, endpoint, mserver, oname, processorCache, rgOname, tpOname`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `Http11AprProtocol()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `getDeferAccept()`
    `protected AbstractEndpoint.Handler` | `getHandler()` Obtain the handler associated with the underlying Endpoint
    `protected Log` | `getLog()` Concrete implementations need to provide access to their logger to be used by the abstract classes.
    `protected String` | `getNamePrefix()` Obtain the prefix to be used when construction a name for this protocol handler.
    `int` | `getPollerSize()`
    `int` | `getPollTime()`
    `int` | `getSendfileSize()`
    `int` | `getSendfileThreadCount()`
    `String` | `getSSLCACertificateFile()` SSL CA certificate file.
    `String` | `getSSLCACertificatePath()` SSL CA certificate path.
    `String` | `getSSLCARevocationFile()` SSL CA revocation file.
    `String` | `getSSLCARevocationPath()` SSL CA revocation path.
    `String` | `getSSLCertificateChainFile()` SSL certificate chain file.
    `String` | `getSSLCertificateFile()` SSL certificate file.
    `String` | `getSSLCertificateKeyFile()` SSL certificate key file.
    `String` | `getSSLCipherSuite()` SSL cipher suite.
    `boolean` | `getSSLDisableCompression()` Disable SSL compression.
    `boolean` | `getSSLHonorCipherOrder()` SSL honor cipher order.
    `String` | `getSSLPassword()` SSL password (if a cert is encrypted, and no password has been provided, a callback will ask for a password).
    `String` | `getSSLProtocol()` SSL protocol.
    `String` | `getSSLVerifyClient()` SSL verify client.
    `int` | `getSSLVerifyDepth()` SSL verify depth.
    `boolean` | `getUseSendfile()`
    `boolean` | `isAprRequired()` Requires APR/native library
    `void` | `setDeferAccept(boolean deferAccept)`
    `void` | `setPollerSize(int pollerSize)`
    `void` | `setPollTime(int pollTime)`
    `void` | `setSendfileSize(int sendfileSize)`
    `void` | `setSendfileThreadCount(int sendfileThreadCount)`
    `void` | `setSSLCACertificateFile(String SSLCACertificateFile)`
    `void` | `setSSLCACertificatePath(String SSLCACertificatePath)`
    `void` | `setSSLCARevocationFile(String SSLCARevocationFile)`
    `void` | `setSSLCARevocationPath(String SSLCARevocationPath)`
    `void` | `setSSLCertificateChainFile(String SSLCertificateChainFile)`
    `void` | `setSSLCertificateFile(String SSLCertificateFile)`
    `void` | `setSSLCertificateKeyFile(String SSLCertificateKeyFile)`
    `void` | `setSSLCipherSuite(String SSLCipherSuite)`
    `void` | `setSSLDisableCompression(boolean disable)`
    `void` | `setSSLHonorCipherOrder(boolean SSLHonorCipherOrder)`
    `void` | `setSSLPassword(String SSLPassword)`
    `void` | `setSSLProtocol(String SSLProtocol)`
    `void` | `setSSLVerifyClient(String SSLVerifyClient)`
    `void` | `setSSLVerifyDepth(int SSLVerifyDepth)`
    `void` | `setUseSendfile(boolean useSendfile)`

    - ### Methods inherited from class org.apache.coyote.http11.AbstractHttp11Protocol

      `addAllowedTrailerHeader, configureProcessor, getAllowedTrailerHeaders, getAllowedTrailerHeadersAsSet, getCompressableMimeType, getCompressableMimeTypes, getCompressibleMimeType, getCompression, getCompressionMinSize, getConnectionUploadTimeout, getDisableUploadTimeout, getMaxExtensionSize, getMaxHttpHeaderSize, getMaxKeepAliveRequests, getMaxSavePostSize, getMaxSwallowSize, getMaxTrailerSize, getNoCompressionUserAgents, getProtocolName, getRestrictedUserAgents, getSecure, getServer, getSocketBuffer, getUpgradeAsyncWriteBufferSize, isSSLEnabled, removeAllowedTrailerHeader, setAllowedTrailerHeaders, setCompressableMimeType, setCompressableMimeTypes, setCompressibleMimeType, setCompression, setCompressionMinSize, setConnectionUploadTimeout, setDisableUploadTimeout, setMaxExtensionSize, setMaxHttpHeaderSize, setMaxKeepAliveRequests, setMaxSavePostSize, setMaxSwallowSize, setMaxTrailerSize, setNoCompressionUserAgents, setRestrictedUserAgents, setSecure, setServer, setSocketBuffer, setSSLEnabled, setUpgradeAsyncWriteBufferSize`

    - ### Methods inherited from class org.apache.coyote.AbstractProtocol

      `destroy, getAdapter, getAddress, getBacklog, getClientCertProvider, getConnectionCount, getConnectionTimeout, getDomain, getExecutor, getKeepAliveTimeout, getLocalPort, getMaxConnections, getMaxCookieCount, getMaxHeaderCount, getMaxThreads, getMinSpareThreads, getName, getNameIndex, getObjectName, getPort, getProcessorCache, getProperty, getSoLinger, getSoTimeout, getTcpNoDelay, getThreadPriority, init, pause, postDeregister, postRegister, preDeregister, preRegister, resume, setAdapter, setAddress, setBacklog, setClientCertProvider, setConnectionTimeout, setExecutor, setKeepAliveTimeout, setMaxConnections, setMaxCookieCount, setMaxHeaderCount, setMaxThreads, setMinSpareThreads, setPort, setProcessorCache, setProperty, setSoLinger, setSoTimeout, setTcpNoDelay, setThreadPriority, start, stop`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### Http11AprProtocol

          public Http11AprProtocol()

  - ### Method Detail

    - #### getLog

          protected Log getLog()

      Description copied from class: `AbstractProtocol`
      Concrete implementations need to provide access to their logger to be used by the abstract classes.
      Specified by:
        `getLog` in class `AbstractProtocol<Long>`

    - #### getHandler

          protected AbstractEndpoint.Handler getHandler()

      Description copied from class: `AbstractProtocol`
      Obtain the handler associated with the underlying Endpoint
      Specified by:
        `getHandler` in class `AbstractProtocol<Long>`

    - #### isAprRequired

          public boolean isAprRequired()

      Description copied from interface: `ProtocolHandler`
      Requires APR/native library
      Specified by:
        `isAprRequired` in interface `ProtocolHandler`
      Overrides:
        `isAprRequired` in class `AbstractProtocol<Long>`

    - #### getUseSendfile

          public boolean getUseSendfile()

    - #### setUseSendfile

          public void setUseSendfile(boolean useSendfile)

    - #### getPollTime

          public int getPollTime()

    - #### setPollTime

          public void setPollTime(int pollTime)

    - #### setPollerSize

          public void setPollerSize(int pollerSize)

    - #### getPollerSize

          public int getPollerSize()

    - #### getSendfileSize

          public int getSendfileSize()

    - #### setSendfileSize

          public void setSendfileSize(int sendfileSize)

    - #### setSendfileThreadCount

          public void setSendfileThreadCount(int sendfileThreadCount)

    - #### getSendfileThreadCount

          public int getSendfileThreadCount()

    - #### getDeferAccept

          public boolean getDeferAccept()

    - #### setDeferAccept

          public void setDeferAccept(boolean deferAccept)

    - #### getSSLProtocol

          public String getSSLProtocol()

      SSL protocol.

    - #### setSSLProtocol

          public void setSSLProtocol(String SSLProtocol)

    - #### getSSLPassword

          public String getSSLPassword()

      SSL password (if a cert is encrypted, and no password has been provided, a callback will ask for a password).

    - #### setSSLPassword

          public void setSSLPassword(String SSLPassword)

    - #### getSSLCipherSuite

          public String getSSLCipherSuite()

      SSL cipher suite.

    - #### setSSLCipherSuite

          public void setSSLCipherSuite(String SSLCipherSuite)

    - #### getSSLHonorCipherOrder

          public boolean getSSLHonorCipherOrder()

      SSL honor cipher order. Set to `true` to enforce the server's cipher order instead of the default which is to allow the client to choose a preferred cipher.

    - #### setSSLHonorCipherOrder

          public void setSSLHonorCipherOrder(boolean SSLHonorCipherOrder)

    - #### getSSLCertificateFile

          public String getSSLCertificateFile()

      SSL certificate file.

    - #### setSSLCertificateFile

          public void setSSLCertificateFile(String SSLCertificateFile)

    - #### getSSLCertificateKeyFile

          public String getSSLCertificateKeyFile()

      SSL certificate key file.

    - #### setSSLCertificateKeyFile

          public void setSSLCertificateKeyFile(String SSLCertificateKeyFile)

    - #### getSSLCertificateChainFile

          public String getSSLCertificateChainFile()

      SSL certificate chain file.

    - #### setSSLCertificateChainFile

          public void setSSLCertificateChainFile(String SSLCertificateChainFile)

    - #### getSSLCACertificatePath

          public String getSSLCACertificatePath()

      SSL CA certificate path.

    - #### setSSLCACertificatePath

          public void setSSLCACertificatePath(String SSLCACertificatePath)

    - #### getSSLCACertificateFile

          public String getSSLCACertificateFile()

      SSL CA certificate file.

    - #### setSSLCACertificateFile

          public void setSSLCACertificateFile(String SSLCACertificateFile)

    - #### getSSLCARevocationPath

          public String getSSLCARevocationPath()

      SSL CA revocation path.

    - #### setSSLCARevocationPath

          public void setSSLCARevocationPath(String SSLCARevocationPath)

    - #### getSSLCARevocationFile

          public String getSSLCARevocationFile()

      SSL CA revocation file.

    - #### setSSLCARevocationFile

          public void setSSLCARevocationFile(String SSLCARevocationFile)

    - #### getSSLVerifyClient

          public String getSSLVerifyClient()

      SSL verify client.

    - #### setSSLVerifyClient

          public void setSSLVerifyClient(String SSLVerifyClient)

    - #### getSSLVerifyDepth

          public int getSSLVerifyDepth()

      SSL verify depth.

    - #### setSSLVerifyDepth

          public void setSSLVerifyDepth(int SSLVerifyDepth)

    - #### getSSLDisableCompression

          public boolean getSSLDisableCompression()

      Disable SSL compression.

    - #### setSSLDisableCompression

          public void setSSLDisableCompression(boolean disable)

    - #### getNamePrefix

          protected String getNamePrefix()

      Description copied from class: `AbstractProtocol`
      Obtain the prefix to be used when construction a name for this protocol handler. The name will be prefix-address-port.
      Specified by:
        `getNamePrefix` in class `AbstractProtocol<Long>`

Copyright © 2000-2017 Apache Software Foundation. All Rights Reserved.