io.undertow.websockets.core

## Class AbstractReceiveListener

- java.lang.Object
- - io.undertow.websockets.core.AbstractReceiveListener

All Implemented Interfaces:
  EventListener, org.xnio.ChannelListener<WebSocketChannel>

    public abstract class AbstractReceiveListener
    extends Object
    implements org.xnio.ChannelListener<WebSocketChannel>

A receive listener that performs a callback when it receives a message

Author:
  Stuart Douglas

### Nested Class Summary

### Nested classes/interfaces inherited from interface org.xnio.ChannelListener

`org.xnio.ChannelListener.Setter<T extends Channel>, org.xnio.ChannelListener.SimpleSetter<T extends Channel>`

### Constructor Summary

Constructors
Constructor and Description
`AbstractReceiveListener()`

### Method Summary

All Methods Instance Methods Concrete Methods
`protected void` `bufferFullMessage(StreamSourceFrameChannel messageChannel)` Utility method that reads a full text or binary message, including all fragmented parts.
`protected long` `getMaxBinaryBufferSize()`
`protected long` `getMaxCloseBufferSize()`
`protected long` `getMaxPingBufferSize()`
`protected long` `getMaxPongBufferSize()`
`protected long` `getMaxTextBufferSize()`
`void` `handleEvent(WebSocketChannel channel)`
`protected void` `onBinary(WebSocketChannel webSocketChannel, StreamSourceFrameChannel messageChannel)`
`protected void` `onClose(WebSocketChannel webSocketChannel, StreamSourceFrameChannel channel)`
`protected void` `onCloseMessage(CloseMessage cm, WebSocketChannel channel)`
`protected void` `onError(WebSocketChannel channel, Throwable error)`
`protected void` `onFullBinaryMessage(WebSocketChannel channel, BufferedBinaryMessage message)`
`protected void` `onFullCloseMessage(WebSocketChannel channel, BufferedBinaryMessage message)`
`protected void` `onFullPingMessage(WebSocketChannel channel, BufferedBinaryMessage message)`
`protected void` `onFullPongMessage(WebSocketChannel channel, BufferedBinaryMessage message)`
`protected void` `onFullTextMessage(WebSocketChannel channel, BufferedTextMessage message)`
`protected void` `onPing(WebSocketChannel webSocketChannel, StreamSourceFrameChannel channel)`
`protected void` `onPong(WebSocketChannel webSocketChannel, StreamSourceFrameChannel messageChannel)`
`protected void` `onText(WebSocketChannel webSocketChannel, StreamSourceFrameChannel messageChannel)`

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

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

### Constructor Detail

#### AbstractReceiveListener

    public AbstractReceiveListener()

### Method Detail

#### handleEvent

    public void handleEvent(WebSocketChannel channel)

Specified by:
  `handleEvent` in interface `org.xnio.ChannelListener<WebSocketChannel>`

#### onPing

    protected void onPing(WebSocketChannel webSocketChannel,
                          StreamSourceFrameChannel channel)
                   throws IOException

Throws:
  `IOException`

#### onClose

    protected void onClose(WebSocketChannel webSocketChannel,
                           StreamSourceFrameChannel channel)
                    throws IOException

Throws:
  `IOException`

#### onPong

    protected void onPong(WebSocketChannel webSocketChannel,
                          StreamSourceFrameChannel messageChannel)
                   throws IOException

Throws:
  `IOException`

#### onText

    protected void onText(WebSocketChannel webSocketChannel,
                          StreamSourceFrameChannel messageChannel)
                   throws IOException

Throws:
  `IOException`

#### onBinary

    protected void onBinary(WebSocketChannel webSocketChannel,
                            StreamSourceFrameChannel messageChannel)
                     throws IOException

Throws:
  `IOException`

#### onError

    protected void onError(WebSocketChannel channel,
                           Throwable error)

#### bufferFullMessage

    protected final void bufferFullMessage(StreamSourceFrameChannel messageChannel)

Utility method that reads a full text or binary message, including all fragmented parts. Once the full message is read then the `onFullTextMessage(WebSocketChannel, BufferedTextMessage)` or `onFullBinaryMessage(WebSocketChannel, BufferedBinaryMessage)` method will be invoked.

Parameters:
  `messageChannel` - The message channel

#### getMaxBinaryBufferSize

    protected long getMaxBinaryBufferSize()

#### getMaxPongBufferSize

    protected long getMaxPongBufferSize()

#### getMaxCloseBufferSize

    protected long getMaxCloseBufferSize()

#### getMaxPingBufferSize

    protected long getMaxPingBufferSize()

#### getMaxTextBufferSize

    protected long getMaxTextBufferSize()

#### onFullTextMessage

    protected void onFullTextMessage(WebSocketChannel channel,
                                     BufferedTextMessage message)
                              throws IOException

Throws:
  `IOException`

#### onFullBinaryMessage

    protected void onFullBinaryMessage(WebSocketChannel channel,
                                       BufferedBinaryMessage message)
                                throws IOException

Throws:
  `IOException`

#### onFullPingMessage

    protected void onFullPingMessage(WebSocketChannel channel,
                                     BufferedBinaryMessage message)
                              throws IOException

Throws:
  `IOException`

#### onFullPongMessage

    protected void onFullPongMessage(WebSocketChannel channel,
                                     BufferedBinaryMessage message)
                              throws IOException

Throws:
  `IOException`

#### onFullCloseMessage

    protected void onFullCloseMessage(WebSocketChannel channel,
                                      BufferedBinaryMessage message)
                               throws IOException

Throws:
  `IOException`

#### onCloseMessage

    protected void onCloseMessage(CloseMessage cm,
                                  WebSocketChannel channel)