Package org.apache.coyote.http11

## Class Http11Nio2Protocol

- java.lang.Object
- - org.apache.coyote.AbstractProtocol<S>
  - - org.apache.coyote.http11.AbstractHttp11Protocol<S>
    - - org.apache.coyote.http11.AbstractHttp11JsseProtocol<Nio2Channel>
      - - org.apache.coyote.http11.Http11Nio2Protocol

- All Implemented Interfaces:
    `MBeanRegistration`, `ProtocolHandler`

      public class Http11Nio2Protocol
      extends AbstractHttp11JsseProtocol<Nio2Channel>

  HTTP/1.1 protocol implementation using NIO2.

- - ### Nested Class Summary

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

      `AbstractProtocol.ConnectionHandler<S>, AbstractProtocol.RecycledProcessors`

  - ### Field Summary

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

      `sm`

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

      `adapter, domain, mserver, oname, processorCache, rgOname`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `Http11Nio2Protocol()` |
    `Http11Nio2Protocol​(Nio2Endpoint endpoint)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `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.

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

      `getEndpoint, getSniParseLimit, getSslImplementationName, getSslImplementationShortName, setSniParseLimit, setSslImplementationName`

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

      `addAllowedTrailerHeader, addSslHostConfig, addSslHostConfig, addUpgradeProtocol, createProcessor, createUpgradeProcessor, destroy, findSslHostConfigs, findUpgradeProtocols, getAllowedTrailerHeaders, getAllowedTrailerHeadersInternal, getAllowHostHeaderMismatch, getCompressibleMimeType, getCompressibleMimeTypes, getCompression, getCompressionLevel, getCompressionMinSize, getConnectionUploadTimeout, getContinueResponseTiming, getContinueResponseTimingInternal, getDefaultSSLHostConfigName, getDisableUploadTimeout, getMaxExtensionSize, getMaxHttpHeaderSize, getMaxHttpRequestHeaderSize, getMaxHttpResponseHeaderSize, getMaxKeepAliveRequests, getMaxSavePostSize, getMaxSwallowSize, getMaxTrailerSize, getNegotiatedProtocol, getNoCompressionUserAgents, getNoCompressionUserAgentsPattern, getONameForUpgrade, getProtocolName, getRejectIllegalHeader, getRelaxedPathChars, getRelaxedQueryChars, getRestrictedUserAgents, getRestrictedUserAgentsPattern, getSecure, getServer, getServerRemoveAppProvidedValues, getUpgradeGroupInfo, getUpgradeProtocol, getUseKeepAliveResponseHeader, getUseSendfile, init, isSSLEnabled, isTrailerHeaderAllowed, reloadSslHostConfig, reloadSslHostConfigs, removeAllowedTrailerHeader, setAllowedTrailerHeaders, setAllowHostHeaderMismatch, setCompressibleMimeType, setCompression, setCompressionMinSize, setConnectionUploadTimeout, setContinueResponseTiming, setDefaultSSLHostConfigName, setDisableUploadTimeout, setMaxExtensionSize, setMaxHttpHeaderSize, setMaxHttpRequestHeaderSize, setMaxHttpResponseHeaderSize, setMaxKeepAliveRequests, setMaxSavePostSize, setMaxSwallowSize, setMaxTrailerSize, setNoCompressionUserAgents, setRejectIllegalHeader, setRelaxedPathChars, setRelaxedQueryChars, setRestrictedUserAgents, setSecure, setServer, setServerRemoveAppProvidedValues, setSSLEnabled, setUseKeepAliveResponseHeader, setUseSendfile, useCompression`

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

      `addWaitingProcessor, awaitConnectionsClose, closeServerSocketGraceful, getAcceptCount, getAcceptorThreadPriority, getAdapter, getAddress, getClientCertProvider, getConnectionCount, getConnectionLinger, getConnectionTimeout, getDomain, getExecutor, getGlobalRequestProcessorMBeanName, getHandler, getId, getKeepAliveTimeout, getLocalPort, getMaxConnections, getMaxHeaderCount, getMaxThreads, getMinSpareThreads, getName, getNameIndex, getObjectName, getPort, getPortOffset, getPortWithOffset, getProcessorCache, getProperty, getTcpNoDelay, getThreadPriority, getUtilityExecutor, getWaitingProcessorCount, isPaused, isSendfileSupported, pause, postDeregister, postRegister, preDeregister, preRegister, removeWaitingProcessor, resume, setAcceptCount, setAcceptorThreadPriority, setAdapter, setAddress, setClientCertProvider, setConnectionLinger, setConnectionTimeout, setExecutor, setHandler, setKeepAliveTimeout, setMaxConnections, setMaxHeaderCount, setMaxThreads, setMinSpareThreads, setPort, setPortOffset, setProcessorCache, setProperty, setTcpNoDelay, setThreadPriority, setUtilityExecutor, start, startAsyncTimeout, stop, stopAsyncTimeout`

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

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

    - ### Methods inherited from interface org.apache.coyote.ProtocolHandler

      `getDesiredBufferSize`

- - ### Constructor Detail

    - #### Http11Nio2Protocol

          public Http11Nio2Protocol()

    - #### Http11Nio2Protocol

          public Http11Nio2Protocol​(Nio2Endpoint endpoint)

  - ### 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<Nio2Channel>`
      Returns:
        the logger

    - #### 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<Nio2Channel>`
      Returns:
        the prefix