# Class Connector

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

All Implemented Interfaces:
  `MBeanRegistration, JmxEnabled, Lifecycle`

public class Connector extends LifecycleMBeanBase
Implementation of a Coyote connector.

- ## Nested Class Summary

  ### Nested classes/interfaces inherited from interface Lifecycle

  `Lifecycle.SingleUse`

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `protected Adapter`
  `adapter`
  Coyote adapter.
  `protected boolean`
  `allowBackslash`
  If this is `true` the '\' character will be permitted as a path delimiter.
  `protected boolean`
  `allowTrace`
  Do we allow TRACE ?
  `protected long`
  `asyncTimeout`
  Default timeout for asynchronous requests (ms).
  `protected final String`
  `configuredProtocol`
  Name of the protocol that was configured.
  `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.
  `protected boolean`
  `enforceEncodingInGetWriter`
  If this is `true` then a call to `Response.getWriter()` if no character encoding has been specified will result in subsequent calls to `Response.getCharacterEncoding()` returning `ISO-8859-1` and the `Content-Type` response header will include a `charset=ISO-8859-1` component.
  `static final 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. 2 MiB by default.
  `protected int`
  `maxSavePostSize`
  Maximum size of a POST which will be saved by the container during authentication. 4 KiB by default
  `protected 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 HashSet<String>`
  `parseBodyMethodsSet`
  A Set of methods determined by `parseBodyMethods`.
  `protected final ProtocolHandler`
  `protocolHandler`
  Coyote protocol handler.
  `protected final String`
  `protocolHandlerClassName`
  Coyote Protocol handler class name.
  `protected 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.
  `protected int`
  `redirectPort`
  The redirect port for non-SSL to SSL redirects.
  `protected 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 final StringManager`
  `sm`
  The string manager for this package.
  `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 interface 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()`
  Defaults to using HTTP/1.1 NIO implementation.
  `Connector(String protocol)`
  `Connector(ProtocolHandler protocolHandler)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `addSslHostConfig(SSLHostConfig sslHostConfig)`
  `void`
  `addUpgradeProtocol(UpgradeProtocol upgradeProtocol)`
  `protected String`
  `createObjectNameKeyProperties(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()`
  Subclasses implement this method to perform any instance destruction required.
  `SSLHostConfig[]`
  `findSslHostConfigs()`
  `UpgradeProtocol[]`
  `findUpgradeProtocols()`
  `boolean`
  `getAllowBackslash()`
  `boolean`
  `getAllowTrace()`
  `long`
  `getAsyncTimeout()`
  `boolean`
  `getDiscardFacades()`
  `protected String`
  `getDomainInternal()`
  Method implemented by subclasses to identify the domain in which MBeans should be registered.
  `boolean`
  `getEnableLookups()`
  `String`
  `getEncodedReverseSolidusHandling()`
  `EncodedSolidusHandling`
  `getEncodedReverseSolidusHandlingInternal()`
  `String`
  `getEncodedSolidusHandling()`
  `EncodedSolidusHandling`
  `getEncodedSolidusHandlingInternal()`
  `boolean`
  `getEnforceEncodingInGetWriter()`
  `String`
  `getExecutorName()`
  `int`
  `getLocalPort()`
  `int`
  `getMaxCookieCount()`
  `int`
  `getMaxParameterCount()`
  `int`
  `getMaxPartCount()`
  `int`
  `getMaxPartHeaderSize()`
  `int`
  `getMaxPostSize()`
  `int`
  `getMaxSavePostSize()`
  `protected String`
  `getObjectNameKeyProperties()`
  Allow subclasses to specify the key properties component of the `ObjectName` that will be used to register this component.
  `String`
  `getParseBodyMethods()`
  `int`
  `getPort()`
  `int`
  `getPortOffset()`
  `int`
  `getPortWithOffset()`
  `Object`
  `getProperty(String name)`
  Return a property from the protocol handler.
  `String`
  `getProtocol()`
  `ProtocolHandler`
  `getProtocolHandler()`
  `String`
  `getProtocolHandlerClassName()`
  `String`
  `getProxyName()`
  `int`
  `getProxyPort()`
  `int`
  `getRedirectPort()`
  `int`
  `getRedirectPortWithOffset()`
  `boolean`
  `getRejectSuspiciousURIs()`
  `String`
  `getScheme()`
  `boolean`
  `getSecure()`
  `Service`
  `getService()`
  `Charset`
  `getURICharset()`
  `String`
  `getURIEncoding()`
  `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()`
  Subclasses implement this method to perform any instance initialisation required.
  `protected boolean`
  `isParseBodyMethod(String method)`
  `void`
  `pause()`
  Pause the connector.
  `void`
  `resume()`
  Resume the connector.
  `void`
  `setAllowBackslash(boolean allowBackslash)`
  Set the allowBackslash flag.
  `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`
  `setDiscardFacades(boolean discardFacades)`
  Set the recycling strategy for the object facades.
  `void`
  `setEnableLookups(boolean enableLookups)`
  Set the "enable DNS lookups" flag.
  `void`
  `setEncodedReverseSolidusHandling(String encodedReverseSolidusHandling)`
  `void`
  `setEncodedSolidusHandling(String encodedSolidusHandling)`
  `void`
  `setEnforceEncodingInGetWriter(boolean enforceEncodingInGetWriter)`
  Set the enforceEncodingInGetWriter flag.
  `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`
  `setMaxPartCount(int maxPartCount)`
  `void`
  `setMaxPartHeaderSize(int maxPartHeaderSize)`
  `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(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(String name, String value)`
  Set a property on the protocol handler.
  `void`
  `setProxyName(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`
  `setRejectSuspiciousURIs(boolean rejectSuspiciousURIs)`
  `void`
  `setScheme(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(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.
  `String`
  `toString()`

  ### Methods inherited from class LifecycleMBeanBase

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

  ### Methods inherited from class LifecycleBase

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

  ### Methods inherited from class Object

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

- ## Field Details

  - ### INTERNAL_EXECUTOR_NAME

    public static final String INTERNAL_EXECUTOR_NAME
    See Also:
      - Constant Field Values

  - ### service

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

  - ### allowBackslash

    protected boolean allowBackslash
    If this is `true` the '\' character will be permitted as a path delimiter. If not specified, the default value of `false` will be used.

  - ### 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.

  - ### enforceEncodingInGetWriter

    protected boolean enforceEncodingInGetWriter
    If this is `true` then a call to `Response.getWriter()` if no character encoding has been specified will result in subsequent calls to `Response.getCharacterEncoding()` returning `ISO-8859-1` and the `Content-Type` response header will include a `charset=ISO-8859-1` component. (SRV.15.2.22.1) If not specified, the default specification compliant value of `true` will be used.

  - ### xpoweredBy

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

  - ### proxyName

    protected 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 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. The default Tomcat server.xml configures a lower default of 1000. 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. 2 MiB by default.

  - ### maxSavePostSize

    protected int maxSavePostSize
    Maximum size of a POST which will be saved by the container during authentication. 4 KiB by default

  - ### parseBodyMethods

    protected 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 HashSet<String> parseBodyMethodsSet
    A Set of methods determined by `parseBodyMethods`.

  - ### useIPVHosts

    protected boolean useIPVHosts
    Flag to use IP-based virtual hosting.

  - ### protocolHandlerClassName

    protected final String protocolHandlerClassName
    Coyote Protocol handler class name. See `Connector()` for current default.

  - ### configuredProtocol

    protected final String configuredProtocol
    Name of the protocol that was configured.

  - ### protocolHandler

    protected final ProtocolHandler protocolHandler
    Coyote protocol handler.

  - ### adapter

    protected Adapter adapter
    Coyote adapter.

  - ### useBodyEncodingForURI

    protected boolean useBodyEncodingForURI
    URI encoding as body.

- ## Constructor Details

  - ### Connector

    public Connector()
    Defaults to using HTTP/1.1 NIO implementation.

  - ### Connector

    public Connector(String protocol)

  - ### Connector

    public Connector(ProtocolHandler protocolHandler)

- ## Method Details

  - ### getProperty

    public Object getProperty(String name)
    Return a property from the protocol handler.
    Parameters:
      `name` - the property name
    Returns:
      the property value

  - ### setProperty

    public boolean setProperty(String name, 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

  - ### 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

  - ### getAllowBackslash

    public boolean getAllowBackslash()
    Returns:
      `true` if backslash characters are allowed in URLs. Default value is `false`.

  - ### setAllowBackslash

    public void setAllowBackslash(boolean allowBackslash)
    Set the allowBackslash flag.
    Parameters:
      `allowBackslash` - the new flag value

  - ### 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

  - ### getEnforceEncodingInGetWriter

    public boolean getEnforceEncodingInGetWriter()
    Returns:
      `true` if a default character encoding will be set when calling Response.getWriter()

  - ### setEnforceEncodingInGetWriter

    public void setEnforceEncodingInGetWriter(boolean enforceEncodingInGetWriter)
    Set the enforceEncodingInGetWriter flag.
    Parameters:
      `enforceEncodingInGetWriter` - the new 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

  - ### getMaxPartCount

    public int getMaxPartCount()

  - ### setMaxPartCount

    public void setMaxPartCount(int maxPartCount)

  - ### getMaxPartHeaderSize

    public int getMaxPartHeaderSize()

  - ### setMaxPartHeaderSize

    public void setMaxPartHeaderSize(int maxPartHeaderSize)

  - ### 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 String getParseBodyMethods()
    Returns:
      the HTTP methods which will support body parameters parsing

  - ### setParseBodyMethods

    public void setParseBodyMethods(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(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 String getProtocol()
    Returns:
      the Coyote protocol handler in use.

  - ### getProtocolHandlerClassName

    public String getProtocolHandlerClassName()
    Returns:
      the class name of the Coyote protocol handler in use.

  - ### getProtocolHandler

    public ProtocolHandler getProtocolHandler()
    Returns:
      the protocol handler associated with the connector.

  - ### getProxyName

    public String getProxyName()
    Returns:
      the proxy server name for this Connector.

  - ### setProxyName

    public void setProxyName(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 String getScheme()
    Returns:
      the scheme that will be assigned to requests received through this connector. Default value is "http".

  - ### setScheme

    public void setScheme(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 String getURIEncoding()
    Returns:
      the name of character encoding to be used for the URI using the original case.

  - ### getURICharset

    public 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(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 String getExecutorName()

  - ### addSslHostConfig

    public void addSslHostConfig(SSLHostConfig sslHostConfig)

  - ### findSslHostConfigs

    public SSLHostConfig[] findSslHostConfigs()

  - ### addUpgradeProtocol

    public void addUpgradeProtocol(UpgradeProtocol upgradeProtocol)

  - ### findUpgradeProtocols

    public UpgradeProtocol[] findUpgradeProtocols()

  - ### getEncodedReverseSolidusHandling

    public String getEncodedReverseSolidusHandling()

  - ### setEncodedReverseSolidusHandling

    public void setEncodedReverseSolidusHandling(String encodedReverseSolidusHandling)

  - ### getEncodedReverseSolidusHandlingInternal

    public EncodedSolidusHandling getEncodedReverseSolidusHandlingInternal()

  - ### getEncodedSolidusHandling

    public String getEncodedSolidusHandling()

  - ### setEncodedSolidusHandling

    public void setEncodedSolidusHandling(String encodedSolidusHandling)

  - ### getEncodedSolidusHandlingInternal

    public EncodedSolidusHandling getEncodedSolidusHandlingInternal()

  - ### getRejectSuspiciousURIs

    public boolean getRejectSuspiciousURIs()

  - ### setRejectSuspiciousURIs

    public void setRejectSuspiciousURIs(boolean rejectSuspiciousURIs)

  - ### 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 String createObjectNameKeyProperties(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: `LifecycleBase`
    Subclasses implement this method to perform any instance initialisation required.
    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: `LifecycleBase`
    Subclasses implement this method to perform any instance destruction required.
    Overrides:
      `destroyInternal` in class `LifecycleMBeanBase`
    Throws:
      `LifecycleException` - If the destruction fails

  - ### toString

    public String toString()
    Overrides:
      `toString` in class `Object`

  - ### getDomainInternal

    protected String getDomainInternal()
    Description copied from class: `LifecycleMBeanBase`
    Method implemented by subclasses 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 String getObjectNameKeyProperties()
    Description copied from class: `LifecycleMBeanBase`
    Allow subclasses 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`