org.apache.coyote

## Interface ProtocolHandler

All Known Implementing Classes:
  AbstractAjpProtocol, AbstractHttp11JsseProtocol, AbstractHttp11Protocol, AbstractProtocol, AjpAprProtocol, AjpNioProtocol, AjpProtocol, Http11AprProtocol, Http11NioProtocol, Http11Protocol

    public interface ProtocolHandler

Abstract the protocol implementation, including threading, etc. Processor is single threaded and specific to stream-based protocols, will not fit Jk protocols like JNI. This is the main interface to be implemented by a coyote connector. Adapter is the main interface to be implemented by a coyote servlet container.

Author:
  Remy Maucherat, Costin Manolache
See Also:
  `Adapter`

### Method Summary

Methods
`void` `destroy()` Destroy the protocol (optional).
`Adapter` `getAdapter()`
`Executor` `getExecutor()` The executor, provide access to the underlying thread pool.
`void` `init()` Initialise the protocol.
`boolean` `isAprRequired()` Requires APR/native library
`void` `pause()` Pause the protocol (optional).
`void` `resume()` Resume the protocol (optional).
`void` `setAdapter(Adapter adapter)` The adapter, used to call the connector.
`void` `start()` Start the protocol.
`void` `stop()` Stop the protocol.

### Method Detail

#### setAdapter

    void setAdapter(Adapter adapter)

The adapter, used to call the connector.

#### getAdapter

    Adapter getAdapter()

#### getExecutor

    Executor getExecutor()

The executor, provide access to the underlying thread pool.

#### init

    void init()
              throws Exception

Initialise the protocol.

Throws:
  `Exception`

#### start

    void start()
               throws Exception

Start the protocol.

Throws:
  `Exception`

#### pause

    void pause()
               throws Exception

Pause the protocol (optional).

Throws:
  `Exception`

#### resume

    void resume()
                throws Exception

Resume the protocol (optional).

Throws:
  `Exception`

#### stop

    void stop()
              throws Exception

Stop the protocol.

Throws:
  `Exception`

#### destroy

    void destroy()
                 throws Exception

Destroy the protocol (optional).

Throws:
  `Exception`

#### isAprRequired

    boolean isAprRequired()

Requires APR/native library