## org.apache.coyote.tomcat4
Class CoyoteConnector

    java.lang.Object
      org.apache.coyote.tomcat4.CoyoteConnector

All Implemented Interfaces:
  Connector, Lifecycle, javax.management.MBeanRegistration

public final class CoyoteConnector
extends java.lang.Object
implements Connector, Lifecycle, javax.management.MBeanRegistration

Implementation of a Coyote connector for Tomcat 4.x.

Version:
  $Revision: 1.34 $ $Date: 2004/02/24 08:54:29 $
Author:
  Craig R. McClanahan, Remy Maucherat

Field Summary
`protected Container` `container` The Container used for processing requests received by this Connector.
`protected java.lang.String` `domain`
`protected LifecycleSupport` `lifecycle` The lifecycle event support for this component.
`protected int` `maxSpareProcessors` The maximum amount of spare processors.
`protected int` `minProcessors` The minimum number of processors to start at initialization time.
`protected javax.management.MBeanServer` `mserver`
`protected javax.management.ObjectName` `oname`

Fields inherited from interface org.apache.catalina.Lifecycle
`AFTER_START_EVENT, AFTER_STOP_EVENT, BEFORE_START_EVENT, BEFORE_STOP_EVENT, START_EVENT, STOP_EVENT`

Constructor Summary
`CoyoteConnector()`

Method Summary
`void` `addLifecycleListener(LifecycleListener listener)` Add a lifecycle event listener to this component.
`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.
`LifecycleListener[]` `findLifecycleListeners()` Get the lifecycle listeners associated with this lifecycle.
`int` `getAcceptCount()` Return the accept count for this Connector.
`java.lang.String` `getAddress()` Return the bind IP address for this Connector.
`boolean` `getAllowTrace()` True if the TRACE method is allowed.
`int` `getBufferSize()` Return the input buffer size for this Connector.
`java.lang.String` `getCompression()` Get the value of compression.
`int` `getConnectionLinger()` Return the connection linger for this Connector.
`int` `getConnectionTimeout()` Return the connection timeout for this Connector.
`int` `getConnectionUploadTimeout()` Return the connection upload timeout for this Connector.
`Container` `getContainer()` Return the Container used for processing requests received by this Connector.
`int` `getCurProcessors()` Return the current number of processors that have been created.
`int` `getDebug()` Return the debugging detail level for this component.
`boolean` `getDisableUploadTimeout()` Return the flag that specifies upload time-out behavior.
`java.lang.String` `getDomain()`
`boolean` `getEnableLookups()` Return the "enable DNS lookups" flag.
`ServerSocketFactory` `getFactory()` Return the server socket factory used by this Container.
`java.lang.String` `getInfo()` Return descriptive information about this Connector implementation.
`int` `getMaxKeepAliveRequests()` Return the maximum number of Keep-Alive requests to honor per connection.
`int` `getMaxProcessors()` Return the maximum number of processors allowed, or <0 for unlimited.
`int` `getMaxSpareProcessors()` Return the maximum number of spare processors allowed.
`int` `getMinProcessors()` Return the minimum number of processors to start at initialization.
`javax.management.ObjectName` `getObjectName()`
`int` `getPort()` Return the port number on which we listen for requests.
`java.lang.String` `getProtocolHandlerClassName()` Return the class name of the Coyote protocol handler in use.
`java.lang.String` `getProxyName()` Return the proxy server name for this Connector.
`int` `getProxyPort()` Return the proxy server port for this Connector.
`int` `getRedirectPort()` Return 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.
`java.lang.String` `getScheme()` Return the scheme that will be assigned to requests received through this connector.
`boolean` `getSecure()` Return the secure connection flag that will be assigned to requests received through this connector.
`int` `getServerSocketTimeout()` Return the server socket timeout for this Connector.
`Service` `getService()` Return the `Service` with which we are associated (if any).
`boolean` `getTcpNoDelay()` Return the TCP no delay flag value.
`boolean` `getTomcatAuthentication()`
`java.lang.String` `getURIEncoding()` Return the character encoding to be used for the URI.
`boolean` `getUseBodyEncodingForURI()` Return the true if the entity body encoding should be used for the URI.
`boolean` `getUseURIValidationHack()` Return the value of the Uri validation flag.
`void` `initialize()` Initialize this connector (create ServerSocket here!)
`boolean` `isAvailable()` Is this connector available for processing requests?
`void` `postDeregister()`
`void` `postRegister(java.lang.Boolean registrationDone)`
`void` `preDeregister()`
`javax.management.ObjectName` `preRegister(javax.management.MBeanServer server, javax.management.ObjectName name)`
`void` `removeLifecycleListener(LifecycleListener listener)` Remove a lifecycle event listener from this component.
`void` `setAcceptCount(int count)` Set the accept count for this Connector.
`void` `setAddress(java.lang.String address)` Set the bind IP address for this Connector.
`void` `setAllowTrace(boolean allowTrace)` Set the allowTrace flag, to disable or enable the TRACE HTTP method.
`void` `setBufferSize(int bufferSize)` Set the input buffer size for this Connector.
`void` `setCompression(java.lang.String compression)` Set the value of compression.
`void` `setConnectionLinger(int connectionLinger)` Set the connection linger for this Connector.
`void` `setConnectionTimeout(int connectionTimeout)` Set the connection timeout for this Connector.
`void` `setConnectionUploadTimeout(int connectionUploadTimeout)` Set the connection upload timeout for this Connector.
`void` `setContainer(Container container)` Set the Container used for processing requests received by this Connector.
`void` `setDebug(int debug)` Set the debugging detail level for this component.
`void` `setDisableUploadTimeout(boolean isDisabled)` Set the flag to specify upload time-out behavior.
`void` `setEnableLookups(boolean enableLookups)` Set the "enable DNS lookups" flag.
`void` `setFactory(ServerSocketFactory factory)` Set the server socket factory used by this Container.
`void` `setMaxKeepAliveRequests(int mkar)` Set the maximum number of Keep-Alive requests to honor per connection.
`void` `setMaxProcessors(int maxProcessors)` Set the maximum number of processors allowed, or <0 for unlimited.
`void` `setMaxSpareProcessors(int maxSpareProcessors)` Set the maximum number of spare processors allowed.
`void` `setMinProcessors(int minProcessors)` Set the minimum number of processors to start at initialization.
`void` `setPort(int port)` Set the port number on which we listen for requests.
`void` `setProtocolHandlerClassName(java.lang.String protocolHandlerClassName)` Set the class name of the Coyote protocol handler which will be used by the connector.
`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` `setServerSocketTimeout(int serverSocketTimeout)` Set the server socket timeout for this Connector.
`void` `setService(Service service)` Set the `Service` with which we are associated (if any).
`void` `setTcpNoDelay(boolean tcpNoDelay)` Set the TCP no delay flag which will be set on the socket after accepting a connection.
`void` `setTomcatAuthentication(boolean tomcatAuthentication)`
`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` `setUseURIValidationHack(boolean useURIValidationHack)` Set the value of the Uri validation flag.
`void` `start()` Begin processing requests via this Connector.
`void` `stop()` Terminate processing requests via this Connector.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Methods inherited from interface org.apache.catalina.Connector
`pause, resume`

Field Detail

### container

    protected Container container

  The Container used for processing requests received by this Connector.

### lifecycle

    protected LifecycleSupport lifecycle

  The lifecycle event support for this component.

### minProcessors

    protected int minProcessors

  The minimum number of processors to start at initialization time.

### maxSpareProcessors

    protected int maxSpareProcessors

  The maximum amount of spare processors.

### domain

    protected java.lang.String domain

### oname

    protected javax.management.ObjectName oname

### mserver

    protected javax.management.MBeanServer mserver

Constructor Detail

### CoyoteConnector

    public CoyoteConnector()

Method Detail

### getService

    public Service getService()

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

  Specified by:
    `getService` in interface `Connector`

### setService

    public void setService(Service service)

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

  Specified by:
    `setService` in interface `Connector`
  Parameters:
    `service` - The service that owns this Engine

### getConnectionLinger

    public int getConnectionLinger()

  Return the connection linger for this Connector.

### setConnectionLinger

    public void setConnectionLinger(int connectionLinger)

  Set the connection linger for this Connector.

### getConnectionTimeout

    public int getConnectionTimeout()

  Return the connection timeout for this Connector.

### setConnectionTimeout

    public void setConnectionTimeout(int connectionTimeout)

  Set the connection timeout for this Connector.

### getConnectionUploadTimeout

    public int getConnectionUploadTimeout()

  Return the connection upload timeout for this Connector.

### setConnectionUploadTimeout

    public void setConnectionUploadTimeout(int connectionUploadTimeout)

  Set the connection upload timeout for this Connector.

  Parameters:
    `connectionUploadTimeout` - The new connection upload timeout

### getServerSocketTimeout

    public int getServerSocketTimeout()

  Return the server socket timeout for this Connector.

### setServerSocketTimeout

    public void setServerSocketTimeout(int serverSocketTimeout)

  Set the server socket timeout for this Connector.

### getAcceptCount

    public int getAcceptCount()

  Return the accept count for this Connector.

### setAcceptCount

    public void setAcceptCount(int count)

  Set the accept count for this Connector.

  Parameters:
    `count` - The new accept count

### getAddress

    public java.lang.String getAddress()

  Return the bind IP address for this Connector.

### setAddress

    public void setAddress(java.lang.String address)

  Set the bind IP address for this Connector.

  Parameters:
    `address` - The bind IP address

### getAllowTrace

    public boolean getAllowTrace()

  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

### isAvailable

    public boolean isAvailable()

  Is this connector available for processing requests?

### getBufferSize

    public int getBufferSize()

  Return the input buffer size for this Connector.

### setBufferSize

    public void setBufferSize(int bufferSize)

  Set the input buffer size for this Connector.

  Parameters:
    `bufferSize` - The new input buffer size.

### getContainer

    public Container getContainer()

  Return the Container used for processing requests received by this Connector.

  Specified by:
    `getContainer` in interface `Connector`

### setContainer

    public void setContainer(Container container)

  Set the Container used for processing requests received by this Connector.

  Specified by:
    `setContainer` in interface `Connector`
  Parameters:
    `container` - The new Container to use

### getCompression

    public java.lang.String getCompression()

  Get the value of compression.

### setCompression

    public void setCompression(java.lang.String compression)

  Set the value of compression.

  Parameters:
    `compression` - The new compression value, which can be "on", "off" or "force"

### getCurProcessors

    public int getCurProcessors()

  Return the current number of processors that have been created.

### getDebug

    public int getDebug()

  Return the debugging detail level for this component.

### setDebug

    public void setDebug(int debug)

  Set the debugging detail level for this component.

  Parameters:
    `debug` - The new debugging detail level

### getEnableLookups

    public boolean getEnableLookups()

  Return the "enable DNS lookups" flag.

  Specified by:
    `getEnableLookups` in interface `Connector`

### setEnableLookups

    public void setEnableLookups(boolean enableLookups)

  Set the "enable DNS lookups" flag.

  Specified by:
    `setEnableLookups` in interface `Connector`
  Parameters:
    `enableLookups` - The new "enable DNS lookups" flag value

### getFactory

    public ServerSocketFactory getFactory()

  Return the server socket factory used by this Container.

  Specified by:
    `getFactory` in interface `Connector`

### setFactory

    public void setFactory(ServerSocketFactory factory)

  Set the server socket factory used by this Container.

  Specified by:
    `setFactory` in interface `Connector`
  Parameters:
    `factory` - The new server socket factory

### getInfo

    public java.lang.String getInfo()

  Return descriptive information about this Connector implementation.

  Specified by:
    `getInfo` in interface `Connector`

### getMinProcessors

    public int getMinProcessors()

  Return the minimum number of processors to start at initialization.

### setMinProcessors

    public void setMinProcessors(int minProcessors)

  Set the minimum number of processors to start at initialization.

  Parameters:
    `minProcessors` - The new minimum processors

### getMaxProcessors

    public int getMaxProcessors()

  Return the maximum number of processors allowed, or <0 for unlimited.

### setMaxProcessors

    public void setMaxProcessors(int maxProcessors)

  Set the maximum number of processors allowed, or <0 for unlimited.

  Parameters:
    `maxProcessors` - The new maximum processors

### getMaxSpareProcessors

    public int getMaxSpareProcessors()

  Return the maximum number of spare processors allowed.

### setMaxSpareProcessors

    public void setMaxSpareProcessors(int maxSpareProcessors)

  Set the maximum number of spare processors allowed.

  Parameters:
    `maxSpareProcessors` - The new maximum of spare processors

### getPort

    public int getPort()

  Return the port number on which we listen for requests.

### setPort

    public void setPort(int port)

  Set the port number on which we listen for requests.

  Parameters:
    `port` - The new port number

### getProtocolHandlerClassName

    public java.lang.String getProtocolHandlerClassName()

  Return the class name of the Coyote protocol handler in use.

### setProtocolHandlerClassName

    public void setProtocolHandlerClassName(java.lang.String protocolHandlerClassName)

  Set the class name of the Coyote protocol handler which will be used by the connector.

  Parameters:
    `protocolHandlerClassName` - The new class name

### getProxyName

    public java.lang.String getProxyName()

  Return 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()

  Return 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()

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

  Specified by:
    `getRedirectPort` in interface `Connector`

### setRedirectPort

    public void setRedirectPort(int redirectPort)

  Set the redirect port number.

  Specified by:
    `setRedirectPort` in interface `Connector`
  Parameters:
    `redirectPort` - The redirect port number (non-SSL to SSL)

### getDisableUploadTimeout

    public boolean getDisableUploadTimeout()

  Return the flag that specifies upload time-out behavior.

### setDisableUploadTimeout

    public void setDisableUploadTimeout(boolean isDisabled)

  Set the flag to specify upload time-out behavior.

  Parameters:
    `isDisabled` - If `true`, then the `timeout` parameter is ignored. If `false`, then the `timeout` parameter is used to control uploads.

### getMaxKeepAliveRequests

    public int getMaxKeepAliveRequests()

  Return the maximum number of Keep-Alive requests to honor per connection.

### setMaxKeepAliveRequests

    public void setMaxKeepAliveRequests(int mkar)

  Set the maximum number of Keep-Alive requests to honor per connection.

### getScheme

    public java.lang.String getScheme()

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

  Specified by:
    `getScheme` in interface `Connector`

### setScheme

    public void setScheme(java.lang.String scheme)

  Set the scheme that will be assigned to requests received through this connector.

  Specified by:
    `setScheme` in interface `Connector`
  Parameters:
    `scheme` - The new scheme

### getSecure

    public boolean getSecure()

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

  Specified by:
    `getSecure` in interface `Connector`

### setSecure

    public void setSecure(boolean secure)

  Set the secure connection flag that will be assigned to requests received through this connector.

  Specified by:
    `setSecure` in interface `Connector`
  Parameters:
    `secure` - The new secure connection flag

### getTomcatAuthentication

    public boolean getTomcatAuthentication()

### setTomcatAuthentication

    public void setTomcatAuthentication(boolean tomcatAuthentication)

### getTcpNoDelay

    public boolean getTcpNoDelay()

  Return the TCP no delay flag value.

### setTcpNoDelay

    public void setTcpNoDelay(boolean tcpNoDelay)

  Set the TCP no delay flag which will be set on the socket after accepting a connection.

  Parameters:
    `tcpNoDelay` - The new TCP no delay flag

### getURIEncoding

    public java.lang.String getURIEncoding()

  Return the character encoding to be used for the URI.

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

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

### getUseURIValidationHack

    public boolean getUseURIValidationHack()

  Return the value of the Uri validation flag.

### setUseURIValidationHack

    public void setUseURIValidationHack(boolean useURIValidationHack)

  Set the value of the Uri validation flag.

  Parameters:
    `useURIValidationHack` - The new flag value

### createRequest

    public Request createRequest()

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

  Specified by:
    `createRequest` in interface `Connector`

### createResponse

    public Response createResponse()

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

  Specified by:
    `createResponse` in interface `Connector`

### addLifecycleListener

    public void addLifecycleListener(LifecycleListener listener)

  Add a lifecycle event listener to this component.

  Specified by:
    `addLifecycleListener` in interface `Lifecycle`
  Parameters:
    `listener` - The listener to add

### findLifecycleListeners

    public LifecycleListener[] findLifecycleListeners()

  Get the lifecycle listeners associated with this lifecycle. If this Lifecycle has no listeners registered, a zero-length array is returned.

  Specified by:
    `findLifecycleListeners` in interface `Lifecycle`

### removeLifecycleListener

    public void removeLifecycleListener(LifecycleListener listener)

  Remove a lifecycle event listener from this component.

  Specified by:
    `removeLifecycleListener` in interface `Lifecycle`
  Parameters:
    `listener` - The listener to add

### initialize

    public void initialize()
                    throws LifecycleException

  Initialize this connector (create ServerSocket here!)

  Specified by:
    `initialize` in interface `Connector`
  Throws:
    `LifecycleException` - If this server was already initialized.

### start

    public void start()
               throws LifecycleException

  Begin processing requests via this Connector.

  Specified by:
    `start` in interface `Lifecycle`
  Throws:
    `LifecycleException` - if a fatal startup error occurs

### stop

    public void stop()
              throws LifecycleException

  Terminate processing requests via this Connector.

  Specified by:
    `stop` in interface `Lifecycle`
  Throws:
    `LifecycleException` - if a fatal shutdown error occurs

### getObjectName

    public javax.management.ObjectName getObjectName()

### getDomain

    public java.lang.String getDomain()

### preRegister

    public javax.management.ObjectName preRegister(javax.management.MBeanServer server,
                                                   javax.management.ObjectName name)
                                            throws java.lang.Exception

  Specified by:
    `preRegister` in interface `javax.management.MBeanRegistration`
  Throws:
    `java.lang.Exception`

### postRegister

    public void postRegister(java.lang.Boolean registrationDone)

  Specified by:
    `postRegister` in interface `javax.management.MBeanRegistration`

### preDeregister

    public void preDeregister()
                       throws java.lang.Exception

  Specified by:
    `preDeregister` in interface `javax.management.MBeanRegistration`
  Throws:
    `java.lang.Exception`

### postDeregister

    public void postDeregister()

  Specified by:
    `postDeregister` in interface `javax.management.MBeanRegistration`

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