org.apache.tomcat.websocket

## Class AsyncChannelWrapperSecure

- java.lang.Object
- - org.apache.tomcat.websocket.AsyncChannelWrapperSecure

All Implemented Interfaces:
  AsyncChannelWrapper

    public class AsyncChannelWrapperSecure
    extends Object
    implements AsyncChannelWrapper

Wraps the `AsynchronousSocketChannel` with SSL/TLS. This needs a lot more testing before it can be considered robust.

### Constructor Summary

Constructors
Constructor and Description
`AsyncChannelWrapperSecure(AsynchronousSocketChannel socketChannel, SSLEngine sslEngine)`

### Method Summary

Methods
`void` `close()`
`Future<Void>` `handshake()`
`Future<Integer>` `read(ByteBuffer dst)`
`<B,A extends B> void` `read(ByteBuffer dst, A attachment, CompletionHandler<Integer,B> handler)`
`Future<Integer>` `write(ByteBuffer src)`
`<B,A extends B> void` `write(ByteBuffer[] srcs, int offset, int length, long timeout, TimeUnit unit, A attachment, CompletionHandler<Long,B> handler)`

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

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

### Constructor Detail

#### AsyncChannelWrapperSecure

    public AsyncChannelWrapperSecure(AsynchronousSocketChannel socketChannel,
                             SSLEngine sslEngine)

### Method Detail

#### read

    public Future<Integer> read(ByteBuffer dst)

Specified by:
  `read` in interface `AsyncChannelWrapper`

#### read

    public <B,A extends B> void read(ByteBuffer dst,
                            A attachment,
                            CompletionHandler<Integer,B> handler)

Specified by:
  `read` in interface `AsyncChannelWrapper`

#### write

    public Future<Integer> write(ByteBuffer src)

Specified by:
  `write` in interface `AsyncChannelWrapper`

#### write

    public <B,A extends B> void write(ByteBuffer[] srcs,
                             int offset,
                             int length,
                             long timeout,
                             TimeUnit unit,
                             A attachment,
                             CompletionHandler<Long,B> handler)

Specified by:
  `write` in interface `AsyncChannelWrapper`

#### close

    public void close()

Specified by:
  `close` in interface `AsyncChannelWrapper`

#### handshake

    public Future<Void> handshake()
                           throws SSLException

Specified by:
  `handshake` in interface `AsyncChannelWrapper`
Throws:
  `SSLException`