Package org.apache.catalina.connector

## Class Connector

- java.lang.Object
- - org.apache.catalina.util.LifecycleBase
  - - org.apache.catalina.util.LifecycleMBeanBase
    - - org.apache.catalina.connector.Connector

- All Implemented Interfaces:
    `javax.management.MBeanRegistration`, `JmxEnabled`, `Lifecycle`

      public class Connector
      extends LifecycleMBeanBase

  Implementation of a Coyote connector.
  Author:
    Craig R. McClanahan, Remy Maucherat

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface org.apache.catalina.Lifecycle

      `Lifecycle.SingleUse`

  - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected Adapter` | `adapter` | Coyote adapter.
    `protected boolean` | `allowTrace` | Do we allow TRACE ?
    `protected long` | `asyncTimeout` | Default timeout for asynchronous requests (ms).
    `protected boolean` | `discardFacades` | The flag that controls recycling of the facades of the request processing objects.
    `protected boolean` | `enableLookups` | The "enable DNS lookups" flag for this Connector.
    `static java.lang.String` | `INTERNAL_EXECUTOR_NAME` |
    `protected int` | `maxParameterCount` | The maximum number of parameters (GET plus POST) which will be automatically parsed by the container. 10000 by default.
    `protected int` | `maxPostSize` | Maximum size of a POST which will be automatically parsed by the container. 2MB by default.
    `protected int` | `maxSavePostSize` | Maximum size of a POST which will be saved by the container during authentication. 4kB by default
    `protected java.lang.String` | `parseBodyMethods` | Comma-separated list of HTTP methods that will be parsed according to POST-style rules for application/x-www-form-urlencoded request bodies.
    `protected java.util.HashSet<java.lang.String>` | `parseBodyMethodsSet` | A Set of methods determined by `parseBodyMethods`.
    `protected int` | `port` | The port number on which we listen for requests.
    `protected ProtocolHandler` | `protocolHandler` | Coyote protocol handler.
    `protected java.lang.String` | `protocolHandlerClassName` | Coyote Protocol handler class name.
    `protected java.lang.String` | `proxyName` | The server name to which we should pretend requests to this Connector were directed.
    `protected int` | `proxyPort` | The server port to which we should pretend requests to this Connector were directed.
    `static boolean` | `RECYCLE_FACADES` | Alternate flag to enable recycling of facades.
    `protected int` | `redirectPort` | The redirect port for non-SSL to SSL redirects.
    `protected static java.util.HashMap<java.lang.String,​java.lang.String>` | `replacements` |
    `protected java.lang.String` | `scheme` | The request scheme that will be set on all requests received through this connector.
    `protected boolean` | `secure` | The secure connection flag that will be set on all requests received through this connector.
    `protected Service` | `service` | The `Service` we are associated with (if any).
    `protected static StringManager` | `sm` | The string manager for this package.
    `protected java.lang.String` | `URIEncoding` | Deprecated. This will be removed in 9.0.x onwards
    `protected java.lang.String` | `URIEncodingLower` | Deprecated. This will be removed in 9.0.x onwards
    `protected boolean` | `useBodyEncodingForURI` | URI encoding as body.
    `protected boolean` | `useIPVHosts` | Flag to use IP-based virtual hosting.
    `protected boolean` | `xpoweredBy` | Is generation of X-Powered-By response header enabled/disabled?

    - ### Fields inherited from class org.apache.catalina.util.LifecycleMBeanBase

      `mserver`

    - ### Fields inherited from interface org.apache.catalina.Lifecycle

      `AFTER_DESTROY_EVENT, AFTER_INIT_EVENT, AFTER_START_EVENT, AFTER_STOP_EVENT, BEFORE_DESTROY_EVENT, BEFORE_INIT_EVENT, BEFORE_START_EVENT, BEFORE_STOP_EVENT, CONFIGURE_START_EVENT, CONFIGURE_STOP_EVENT, PERIODIC_EVENT, START_EVENT, STOP_EVENT`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `Connector()` |
    `Connector​(java.lang.String protocol)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `addSslHostConfig​(SSLHostConfig sslHostConfig)` |
    `void` | `addUpgradeProtocol​(UpgradeProtocol upgradeProtocol)` |
    `protected java.lang.String` | `createObjectNameKeyProperties​(java.lang.String type)` |
    `Request` | `createRequest()` | Create (or allocate) and return a Request object suitable for specifying the contents of a Request to the responsible Container.
    `Response` | `createResponse()` | Create (or allocate) and return a Response object suitable for receiving the contents of a Response from the responsible Container.
    `protected void` | `destroyInternal()` | Sub-classes wishing to perform additional clean-up should override this method, ensuring that super.destroyInternal() is the last call in the overriding method.
    `SSLHostConfig[]` | `findSslHostConfigs()` |
    `UpgradeProtocol[]` | `findUpgradeProtocols()` |
    `boolean` | `getAllowTrace()` |
    `long` | `getAsyncTimeout()` |
    `java.lang.Object` | `getAttribute​(java.lang.String name)` | Deprecated. Use `getProperty(String)`.
    `boolean` | `getDiscardFacades()` |
    `protected java.lang.String` | `getDomainInternal()` | Method implemented by sub-classes to identify the domain in which MBeans should be registered.
    `boolean` | `getEnableLookups()` |
    `java.lang.String` | `getEncodedSolidusHandling()` |
    `EncodedSolidusHandling` | `getEncodedSolidusHandlingInternal()` |
    `java.lang.String` | `getExecutorName()` |
    `int` | `getLocalPort()` |
    `int` | `getMaxCookieCount()` |
    `int` | `getMaxParameterCount()` |
    `int` | `getMaxPostSize()` |
    `int` | `getMaxSavePostSize()` |
    `protected java.lang.String` | `getObjectNameKeyProperties()` | Allow sub-classes to specify the key properties component of the `ObjectName` that will be used to register this component.
    `java.lang.String` | `getParseBodyMethods()` |
    `int` | `getPort()` |
    `int` | `getPortOffset()` |
    `int` | `getPortWithOffset()` |
    `java.lang.Object` | `getProperty​(java.lang.String name)` | Return a property from the protocol handler.
    `java.lang.String` | `getProtocol()` |
    `ProtocolHandler` | `getProtocolHandler()` |
    `java.lang.String` | `getProtocolHandlerClassName()` |
    `java.lang.String` | `getProxyName()` |
    `int` | `getProxyPort()` |
    `int` | `getRedirectPort()` |
    `int` | `getRedirectPortWithOffset()` |
    `java.lang.String` | `getScheme()` |
    `boolean` | `getSecure()` |
    `Service` | `getService()` |
    `java.nio.charset.Charset` | `getURICharset()` |
    `java.lang.String` | `getURIEncoding()` |
    `java.lang.String` | `getURIEncodingLower()` | Deprecated. This will be removed in 9.0.x onwards
    `boolean` | `getUseBodyEncodingForURI()` |
    `boolean` | `getUseIPVHosts()` | Test if IP-based virtual hosting is enabled.
    `boolean` | `getXpoweredBy()` | Indicates whether the generation of an X-Powered-By response header for Servlet-generated responses is enabled or disabled for this Connector.
    `protected void` | `initInternal()` | Sub-classes wishing to perform additional initialization should override this method, ensuring that super.initInternal() is the first call in the overriding method.
    `protected boolean` | `isParseBodyMethod​(java.lang.String method)` |
    `void` | `pause()` | Pause the connector.
    `void` | `resume()` | Resume the connector.
    `void` | `setAllowTrace​(boolean allowTrace)` | Set the allowTrace flag, to disable or enable the TRACE HTTP method.
    `void` | `setAsyncTimeout​(long asyncTimeout)` | Set the default timeout for async requests.
    `void` | `setAttribute​(java.lang.String name, java.lang.Object value)` | Deprecated. Use `setProperty(String, String)`.
    `void` | `setDiscardFacades​(boolean discardFacades)` | Set the recycling strategy for the object facades.
    `void` | `setEnableLookups​(boolean enableLookups)` | Set the "enable DNS lookups" flag.
    `void` | `setEncodedSolidusHandling​(java.lang.String encodedSolidusHandling)` |
    `void` | `setMaxCookieCount​(int maxCookieCount)` |
    `void` | `setMaxParameterCount​(int maxParameterCount)` | Set the maximum number of parameters (GET plus POST) that will be automatically parsed by the container.
    `void` | `setMaxPostSize​(int maxPostSize)` | Set the maximum size of a POST which will be automatically parsed by the container.
    `void` | `setMaxSavePostSize​(int maxSavePostSize)` | Set the maximum size of a POST which will be saved by the container during authentication.
    `void` | `setParseBodyMethods​(java.lang.String methods)` | Set list of HTTP methods which should allow body parameter parsing.
    `void` | `setPort​(int port)` | Set the port number on which we listen for requests.
    `void` | `setPortOffset​(int portOffset)` |
    `boolean` | `setProperty​(java.lang.String name, java.lang.String value)` | Set a property on the protocol handler.
    `void` | `setProtocol​(java.lang.String protocol)` | Deprecated. Will be removed in Tomcat 9.
    `void` | `setProtocolHandlerClassName​(java.lang.String protocolHandlerClassName)` | Deprecated. Will be removed in Tomcat 9.
    `void` | `setProxyName​(java.lang.String proxyName)` | Set the proxy server name for this Connector.
    `void` | `setProxyPort​(int proxyPort)` | Set the proxy server port for this Connector.
    `void` | `setRedirectPort​(int redirectPort)` | Set the redirect port number.
    `void` | `setScheme​(java.lang.String scheme)` | Set the scheme that will be assigned to requests received through this connector.
    `void` | `setSecure​(boolean secure)` | Set the secure connection flag that will be assigned to requests received through this connector.
    `void` | `setService​(Service service)` | Set the `Service` with which we are associated (if any).
    `void` | `setURIEncoding​(java.lang.String URIEncoding)` | Set the URI encoding to be used for the URI.
    `void` | `setUseBodyEncodingForURI​(boolean useBodyEncodingForURI)` | Set if the entity body encoding should be used for the URI.
    `void` | `setUseIPVHosts​(boolean useIPVHosts)` | Enable the use of IP-based virtual hosting.
    `void` | `setXpoweredBy​(boolean xpoweredBy)` | Enables or disables the generation of an X-Powered-By header (with value Servlet/2.5) for all servlet-generated responses returned by this Connector.
    `protected void` | `startInternal()` | Begin processing requests via this Connector.
    `protected void` | `stopInternal()` | Terminate processing requests via this Connector.
    `java.lang.String` | `toString()` | Provide a useful toString() implementation as it may be used when logging Lifecycle errors to identify the component.

    - ### Methods inherited from class org.apache.catalina.util.LifecycleMBeanBase

      `getDomain, getObjectName, postDeregister, postRegister, preDeregister, preRegister, register, setDomain, unregister`

    - ### Methods inherited from class org.apache.catalina.util.LifecycleBase

      `addLifecycleListener, destroy, findLifecycleListeners, fireLifecycleEvent, getState, getStateName, getThrowOnFailure, init, removeLifecycleListener, setState, setState, setThrowOnFailure, start, stop`

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

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

- - ### Field Detail

    - #### RECYCLE_FACADES

          public static final boolean RECYCLE_FACADES

      Alternate flag to enable recycling of facades.

    - #### INTERNAL_EXECUTOR_NAME

          public static final java.lang.String INTERNAL_EXECUTOR_NAME

      See Also:
        Constant Field Values

    - #### service

          protected Service service

      The `Service` we are associated with (if any).

    - #### allowTrace

          protected boolean allowTrace

      Do we allow TRACE ?

    - #### asyncTimeout

          protected long asyncTimeout

      Default timeout for asynchronous requests (ms).

    - #### enableLookups

          protected boolean enableLookups

      The "enable DNS lookups" flag for this Connector.

    - #### xpoweredBy

          protected boolean xpoweredBy

      Is generation of X-Powered-By response header enabled/disabled?

    - #### port

          protected int port

      The port number on which we listen for requests.

    - #### proxyName

          protected java.lang.String proxyName

      The server name to which we should pretend requests to this Connector were directed. This is useful when operating Tomcat behind a proxy server, so that redirects get constructed accurately. If not specified, the server name included in the `Host` header is used.

    - #### proxyPort

          protected int proxyPort

      The server port to which we should pretend requests to this Connector were directed. This is useful when operating Tomcat behind a proxy server, so that redirects get constructed accurately. If not specified, the port number specified by the `port` property is used.

    - #### discardFacades

          protected boolean discardFacades

      The flag that controls recycling of the facades of the request processing objects. If set to `true` the object facades will be discarded when the request is recycled. If the security manager is enabled, this setting is ignored and object facades are always discarded.

    - #### redirectPort

          protected int redirectPort

      The redirect port for non-SSL to SSL redirects.

    - #### scheme

          protected java.lang.String scheme

      The request scheme that will be set on all requests received through this connector.

    - #### secure

          protected boolean secure

      The secure connection flag that will be set on all requests received through this connector.

    - #### sm

          protected static final StringManager sm

      The string manager for this package.

    - #### maxParameterCount

          protected int maxParameterCount

      The maximum number of parameters (GET plus POST) which will be automatically parsed by the container. 10000 by default. A value of less than 0 means no limit.

    - #### maxPostSize

          protected int maxPostSize

      Maximum size of a POST which will be automatically parsed by the container. 2MB by default.

    - #### maxSavePostSize

          protected int maxSavePostSize

      Maximum size of a POST which will be saved by the container during authentication. 4kB by default

    - #### parseBodyMethods

          protected java.lang.String parseBodyMethods

      Comma-separated list of HTTP methods that will be parsed according to POST-style rules for application/x-www-form-urlencoded request bodies.

    - #### parseBodyMethodsSet

          protected java.util.HashSet<java.lang.String> parseBodyMethodsSet

      A Set of methods determined by `parseBodyMethods`.

    - #### useIPVHosts

          protected boolean useIPVHosts

      Flag to use IP-based virtual hosting.

    - #### protocolHandlerClassName

          protected java.lang.String protocolHandlerClassName

      Coyote Protocol handler class name. Defaults to the Coyote HTTP/1.1 protocolHandler.

    - #### protocolHandler

          protected final ProtocolHandler protocolHandler

      Coyote protocol handler.

    - #### adapter

          protected Adapter adapter

      Coyote adapter.

    - #### URIEncoding

          @Deprecated
          protected java.lang.String URIEncoding

      Deprecated.
      This will be removed in 9.0.x onwards
      URI encoding.

    - #### URIEncodingLower

          @Deprecated
          protected java.lang.String URIEncodingLower

      Deprecated.
      This will be removed in 9.0.x onwards

    - #### useBodyEncodingForURI

          protected boolean useBodyEncodingForURI

      URI encoding as body.

    - #### replacements

          protected static final java.util.HashMap<java.lang.String,​java.lang.String> replacements

  - ### Constructor Detail

    - #### Connector

          public Connector()

    - #### Connector

          public Connector​(java.lang.String protocol)

  - ### Method Detail

    - #### getProperty

          public java.lang.Object getProperty​(java.lang.String name)

      Return a property from the protocol handler.
      Parameters:
        `name` - the property name
      Returns:
        the property value

    - #### setProperty

          public boolean setProperty​(java.lang.String name,
                                     java.lang.String value)

      Set a property on the protocol handler.
      Parameters:
        `name` - the property name
        `value` - the property value
      Returns:
        `true` if the property was successfully set

    - #### getAttribute

          @Deprecated
          public java.lang.Object getAttribute​(java.lang.String name)

      Deprecated.
      Use `getProperty(String)`. This will be removed in Tomcat 10 onwards.
      Return a property from the protocol handler.
      Parameters:
        `name` - the property name
      Returns:
        the property value

    - #### setAttribute

          @Deprecated
          public void setAttribute​(java.lang.String name,
                                   java.lang.Object value)

      Deprecated.
      Use `setProperty(String, String)`. This will be removed in Tomcat 10 onwards.
      Set a property on the protocol handler.
      Parameters:
        `name` - the property name
        `value` - the property value

    - #### getService

          public Service getService()

      Returns:
        the `Service` with which we are associated (if any).

    - #### setService

          public void setService​(Service service)

      Set the `Service` with which we are associated (if any).
      Parameters:
        `service` - The service that owns this Engine

    - #### getAllowTrace

          public boolean getAllowTrace()

      Returns:
        `true` if the TRACE method is allowed. Default value is `false`.

    - #### setAllowTrace

          public void setAllowTrace​(boolean allowTrace)

      Set the allowTrace flag, to disable or enable the TRACE HTTP method.
      Parameters:
        `allowTrace` - The new allowTrace flag

    - #### getAsyncTimeout

          public long getAsyncTimeout()

      Returns:
        the default timeout for async requests in ms.

    - #### setAsyncTimeout

          public void setAsyncTimeout​(long asyncTimeout)

      Set the default timeout for async requests.
      Parameters:
        `asyncTimeout` - The new timeout in ms.

    - #### getDiscardFacades

          public boolean getDiscardFacades()

      Returns:
        `true` if the object facades are discarded, either when the discardFacades value is `true` or when the security manager is enabled.

    - #### setDiscardFacades

          public void setDiscardFacades​(boolean discardFacades)

      Set the recycling strategy for the object facades.
      Parameters:
        `discardFacades` - the new value of the flag

    - #### getEnableLookups

          public boolean getEnableLookups()

      Returns:
        the "enable DNS lookups" flag.

    - #### setEnableLookups

          public void setEnableLookups​(boolean enableLookups)

      Set the "enable DNS lookups" flag.
      Parameters:
        `enableLookups` - The new "enable DNS lookups" flag value

    - #### getMaxCookieCount

          public int getMaxCookieCount()

    - #### setMaxCookieCount

          public void setMaxCookieCount​(int maxCookieCount)

    - #### getMaxParameterCount

          public int getMaxParameterCount()

      Returns:
        the maximum number of parameters (GET plus POST) that will be automatically parsed by the container. A value of less than 0 means no limit.

    - #### setMaxParameterCount

          public void setMaxParameterCount​(int maxParameterCount)

      Set the maximum number of parameters (GET plus POST) that will be automatically parsed by the container. A value of less than 0 means no limit.
      Parameters:
        `maxParameterCount` - The new setting

    - #### getMaxPostSize

          public int getMaxPostSize()

      Returns:
        the maximum size of a POST which will be automatically parsed by the container.

    - #### setMaxPostSize

          public void setMaxPostSize​(int maxPostSize)

      Set the maximum size of a POST which will be automatically parsed by the container.
      Parameters:
        `maxPostSize` - The new maximum size in bytes of a POST which will be automatically parsed by the container

    - #### getMaxSavePostSize

          public int getMaxSavePostSize()

      Returns:
        the maximum size of a POST which will be saved by the container during authentication.

    - #### setMaxSavePostSize

          public void setMaxSavePostSize​(int maxSavePostSize)

      Set the maximum size of a POST which will be saved by the container during authentication.
      Parameters:
        `maxSavePostSize` - The new maximum size in bytes of a POST which will be saved by the container during authentication.

    - #### getParseBodyMethods

          public java.lang.String getParseBodyMethods()

      Returns:
        the HTTP methods which will support body parameters parsing

    - #### setParseBodyMethods

          public void setParseBodyMethods​(java.lang.String methods)

      Set list of HTTP methods which should allow body parameter parsing. This defaults to `POST`.
      Parameters:
        `methods` - Comma separated list of HTTP method names

    - #### isParseBodyMethod

          protected boolean isParseBodyMethod​(java.lang.String method)

    - #### getPort

          public int getPort()

      Returns:
        the port number on which this connector is configured to listen for requests. The special value of 0 means select a random free port when the socket is bound.

    - #### setPort

          public void setPort​(int port)

      Set the port number on which we listen for requests.
      Parameters:
        `port` - The new port number

    - #### getPortOffset

          public int getPortOffset()

    - #### setPortOffset

          public void setPortOffset​(int portOffset)

    - #### getPortWithOffset

          public int getPortWithOffset()

    - #### getLocalPort

          public int getLocalPort()

      Returns:
        the port number on which this connector is listening to requests. If the special value for `getPort()` of zero is used then this method will report the actual port bound.

    - #### getProtocol

          public java.lang.String getProtocol()

      Returns:
        the Coyote protocol handler in use.

    - #### setProtocol

          @Deprecated
          public void setProtocol​(java.lang.String protocol)

      Deprecated.
      Will be removed in Tomcat 9. Protocol must be configured via the constructor
      Set the Coyote protocol which will be used by the connector.
      Parameters:
        `protocol` - The Coyote protocol name

    - #### getProtocolHandlerClassName

          public java.lang.String getProtocolHandlerClassName()

      Returns:
        the class name of the Coyote protocol handler in use.

    - #### setProtocolHandlerClassName

          @Deprecated
          public void setProtocolHandlerClassName​(java.lang.String protocolHandlerClassName)

      Deprecated.
      Will be removed in Tomcat 9. Protocol must be configured via the constructor
      Set the class name of the Coyote protocol handler which will be used by the connector.
      Parameters:
        `protocolHandlerClassName` - The new class name

    - #### getProtocolHandler

          public ProtocolHandler getProtocolHandler()

      Returns:
        the protocol handler associated with the connector.

    - #### getProxyName

          public java.lang.String getProxyName()

      Returns:
        the proxy server name for this Connector.

    - #### setProxyName

          public void setProxyName​(java.lang.String proxyName)

      Set the proxy server name for this Connector.
      Parameters:
        `proxyName` - The new proxy server name

    - #### getProxyPort

          public int getProxyPort()

      Returns:
        the proxy server port for this Connector.

    - #### setProxyPort

          public void setProxyPort​(int proxyPort)

      Set the proxy server port for this Connector.
      Parameters:
        `proxyPort` - The new proxy server port

    - #### getRedirectPort

          public int getRedirectPort()

      Returns:
        the port number to which a request should be redirected if it comes in on a non-SSL port and is subject to a security constraint with a transport guarantee that requires SSL.

    - #### setRedirectPort

          public void setRedirectPort​(int redirectPort)

      Set the redirect port number.
      Parameters:
        `redirectPort` - The redirect port number (non-SSL to SSL)

    - #### getRedirectPortWithOffset

          public int getRedirectPortWithOffset()

    - #### getScheme

          public java.lang.String getScheme()

      Returns:
        the scheme that will be assigned to requests received through this connector. Default value is "http".

    - #### setScheme

          public void setScheme​(java.lang.String scheme)

      Set the scheme that will be assigned to requests received through this connector.
      Parameters:
        `scheme` - The new scheme

    - #### getSecure

          public boolean getSecure()

      Returns:
        the secure connection flag that will be assigned to requests received through this connector. Default value is "false".

    - #### setSecure

          public void setSecure​(boolean secure)

      Set the secure connection flag that will be assigned to requests received through this connector.
      Parameters:
        `secure` - The new secure connection flag

    - #### getURIEncoding

          public java.lang.String getURIEncoding()

      Returns:
        the name of character encoding to be used for the URI using the original case.

    - #### getURIEncodingLower

          @Deprecated
          public java.lang.String getURIEncodingLower()

      Deprecated.
      This will be removed in 9.0.x onwards
      Returns:
        the character encoding to be used for the URI using lower case.

    - #### getURICharset

          public java.nio.charset.Charset getURICharset()

      Returns:
        The Charset to use to convert raw URI bytes (after %nn decoding) to characters. This will never be null

    - #### setURIEncoding

          public void setURIEncoding​(java.lang.String URIEncoding)

      Set the URI encoding to be used for the URI.
      Parameters:
        `URIEncoding` - The new URI character encoding.

    - #### getUseBodyEncodingForURI

          public boolean getUseBodyEncodingForURI()

      Returns:
        the true if the entity body encoding should be used for the URI.

    - #### setUseBodyEncodingForURI

          public void setUseBodyEncodingForURI​(boolean useBodyEncodingForURI)

      Set if the entity body encoding should be used for the URI.
      Parameters:
        `useBodyEncodingForURI` - The new value for the flag.

    - #### getXpoweredBy

          public boolean getXpoweredBy()

      Indicates whether the generation of an X-Powered-By response header for Servlet-generated responses is enabled or disabled for this Connector.
      Returns:
        `true` if generation of X-Powered-By response header is enabled, false otherwise

    - #### setXpoweredBy

          public void setXpoweredBy​(boolean xpoweredBy)

      Enables or disables the generation of an X-Powered-By header (with value Servlet/2.5) for all servlet-generated responses returned by this Connector.
      Parameters:
        `xpoweredBy` - true if generation of X-Powered-By response header is to be enabled, false otherwise

    - #### setUseIPVHosts

          public void setUseIPVHosts​(boolean useIPVHosts)

      Enable the use of IP-based virtual hosting.
      Parameters:
        `useIPVHosts` - `true` if Hosts are identified by IP, `false` if Hosts are identified by name.

    - #### getUseIPVHosts

          public boolean getUseIPVHosts()

      Test if IP-based virtual hosting is enabled.
      Returns:
        `true` if IP vhosts are enabled

    - #### getExecutorName

          public java.lang.String getExecutorName()

    - #### addSslHostConfig

          public void addSslHostConfig​(SSLHostConfig sslHostConfig)

    - #### findSslHostConfigs

          public SSLHostConfig[] findSslHostConfigs()

    - #### addUpgradeProtocol

          public void addUpgradeProtocol​(UpgradeProtocol upgradeProtocol)

    - #### findUpgradeProtocols

          public UpgradeProtocol[] findUpgradeProtocols()

    - #### getEncodedSolidusHandling

          public java.lang.String getEncodedSolidusHandling()

    - #### setEncodedSolidusHandling

          public void setEncodedSolidusHandling​(java.lang.String encodedSolidusHandling)

    - #### getEncodedSolidusHandlingInternal

          public EncodedSolidusHandling getEncodedSolidusHandlingInternal()

    - #### createRequest

          public Request createRequest()

      Create (or allocate) and return a Request object suitable for specifying the contents of a Request to the responsible Container.
      Returns:
        a new Servlet request object

    - #### createResponse

          public Response createResponse()

      Create (or allocate) and return a Response object suitable for receiving the contents of a Response from the responsible Container.
      Returns:
        a new Servlet response object

    - #### createObjectNameKeyProperties

          protected java.lang.String createObjectNameKeyProperties​(java.lang.String type)

    - #### pause

          public void pause()

      Pause the connector.

    - #### resume

          public void resume()

      Resume the connector.

    - #### initInternal

          protected void initInternal()
                               throws LifecycleException

      Description copied from class: `LifecycleMBeanBase`
      Sub-classes wishing to perform additional initialization should override this method, ensuring that super.initInternal() is the first call in the overriding method.
      Overrides:
        `initInternal` in class `LifecycleMBeanBase`
      Throws:
        `LifecycleException` - If the initialisation fails

    - #### startInternal

          protected void startInternal()
                                throws LifecycleException

      Begin processing requests via this Connector.
      Specified by:
        `startInternal` in class `LifecycleBase`
      Throws:
        `LifecycleException` - if a fatal startup error occurs

    - #### stopInternal

          protected void stopInternal()
                               throws LifecycleException

      Terminate processing requests via this Connector.
      Specified by:
        `stopInternal` in class `LifecycleBase`
      Throws:
        `LifecycleException` - if a fatal shutdown error occurs

    - #### destroyInternal

          protected void destroyInternal()
                                  throws LifecycleException

      Description copied from class: `LifecycleMBeanBase`
      Sub-classes wishing to perform additional clean-up should override this method, ensuring that super.destroyInternal() is the last call in the overriding method.
      Overrides:
        `destroyInternal` in class `LifecycleMBeanBase`
      Throws:
        `LifecycleException` - If the destruction fails

    - #### toString

          public java.lang.String toString()

      Provide a useful toString() implementation as it may be used when logging Lifecycle errors to identify the component.
      Overrides:
        `toString` in class `java.lang.Object`

    - #### getDomainInternal

          protected java.lang.String getDomainInternal()

      Description copied from class: `LifecycleMBeanBase`
      Method implemented by sub-classes to identify the domain in which MBeans should be registered.
      Specified by:
        `getDomainInternal` in class `LifecycleMBeanBase`
      Returns:
        The name of the domain to use to register MBeans.

    - #### getObjectNameKeyProperties

          protected java.lang.String getObjectNameKeyProperties()

      Description copied from class: `LifecycleMBeanBase`
      Allow sub-classes to specify the key properties component of the `ObjectName` that will be used to register this component.
      Specified by:
        `getObjectNameKeyProperties` in class `LifecycleMBeanBase`
      Returns:
        The string representation of the key properties component of the desired `ObjectName`