# Class AbstractProtocol.ConnectionHandler<S>

java.lang.Object
org.apache.coyote.AbstractProtocol.ConnectionHandler<S>

All Implemented Interfaces:
  `AbstractEndpoint.Handler<S>`

Enclosing class:
  `AbstractProtocol<S>`

protected static class AbstractProtocol.ConnectionHandler<S> extends Object implements AbstractEndpoint.Handler<S>

## Nested Class Summary

### Nested classes/interfaces inherited from interface AbstractEndpoint.Handler

`AbstractEndpoint.Handler.SocketState`

## Constructor Summary

Constructors
Constructor
Description
`ConnectionHandler(AbstractProtocol<S> proto)`

## Method Summary

Modifier and Type
Method
Description
`Object`
`getGlobal()`
Obtain the GlobalRequestProcessor associated with the handler.
`protected Log`
`getLog()`
`protected AbstractProtocol<S>`
`getProtocol()`
`protected void`
`longPoll(SocketWrapperBase<?> socket, Processor processor)`
`final void`
`pause()`
Inform the handler that the endpoint has stopped accepting any new connections.
`AbstractEndpoint.Handler.SocketState`
`process(SocketWrapperBase<S> wrapper, SocketEvent status)`
Process the provided socket with the given current status.
`void`
`recycle()`
Recycle resources associated with the handler.
`protected void`
`register(Processor processor)`
`void`
`release(SocketWrapperBase<S> socketWrapper)`
Release any resources associated with the given SocketWrapper.
`protected void`
`unregister(Processor processor)`

### Methods inherited from class Object

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

## Constructor Details

### ConnectionHandler

public ConnectionHandler(AbstractProtocol<S> proto)

## Method Details

### getProtocol

protected AbstractProtocol<S> getProtocol()

### getLog

protected Log getLog()

### getGlobal

public Object getGlobal()
Description copied from interface: `AbstractEndpoint.Handler`
Obtain the GlobalRequestProcessor associated with the handler.

Specified by:
  `getGlobal` in interface `AbstractEndpoint.Handler<S>`
Returns:
  the GlobalRequestProcessor

### recycle

public void recycle()
Description copied from interface: `AbstractEndpoint.Handler`
Recycle resources associated with the handler.

Specified by:
  `recycle` in interface `AbstractEndpoint.Handler<S>`

### process

public AbstractEndpoint.Handler.SocketState process(SocketWrapperBase<S> wrapper, SocketEvent status)
Description copied from interface: `AbstractEndpoint.Handler`
Process the provided socket with the given current status.

Specified by:
  `process` in interface `AbstractEndpoint.Handler<S>`
Parameters:
  `wrapper` - The socket to process
  `status` - The current socket status
Returns:
  The state of the socket after processing

### longPoll

protected void longPoll(SocketWrapperBase<?> socket, Processor processor)

### release

public void release(SocketWrapperBase<S> socketWrapper)
Description copied from interface: `AbstractEndpoint.Handler`
Release any resources associated with the given SocketWrapper.

Specified by:
  `release` in interface `AbstractEndpoint.Handler<S>`
Parameters:
  `socketWrapper` - The socketWrapper to release resources for

### register

protected void register(Processor processor)

### unregister

protected void unregister(Processor processor)

### pause

public final void pause()
Description copied from interface: `AbstractEndpoint.Handler`
Inform the handler that the endpoint has stopped accepting any new connections. Typically, the endpoint will be stopped shortly afterwards but it is possible that the endpoint will be resumed so the handler should not assume that a stop will follow.

Specified by:
  `pause` in interface `AbstractEndpoint.Handler<S>`