# Class: WebSocketBase

## vertx-js/web_socket_base~ WebSocketBase

#### new WebSocketBase()

  Base WebSocket implementation.

  Source:
    - web_socket_base.js, line 34

### Methods

#### binaryHandlerID() → {string}

  When a `Websocket` is created it automatically registers an event handler with the event bus - the ID of that handler is given by this method.

  Given this ID, a different event loop can send a binary frame to that event handler using the event bus and that buffer will be received by this instance in its own event loop and written to the underlying connection. This allows you to write data to other WebSockets which are owned by different event loops.

  Source:
    - web_socket_base.js, line 183

  ##### Returns:

  the binary handler id
  Type
    string

#### close()

  Close the WebSocket.
  Source:
    - web_socket_base.js, line 308

#### closeHandler(handler) → {WebSocketBase}

  Set a close handler. This will be called when the WebSocket is closed.

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `handler` | function | the handler

  Source:
    - web_socket_base.js, line 277

  ##### Returns:

  a reference to this, so the API can be used fluently
  Type
    WebSocketBase

#### drainHandler(handler) → {WebSocketBase}

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `handler` | function |

  Source:
    - web_socket_base.js, line 163

  ##### Returns:

  Type
    WebSocketBase

#### endHandler(endHandler) → {WebSocketBase}

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `endHandler` | function |

  Source:
    - web_socket_base.js, line 121

  ##### Returns:

  Type
    WebSocketBase

#### exceptionHandler(handler) → {WebSocketBase}

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `handler` | function |

  Source:
    - web_socket_base.js, line 61

  ##### Returns:

  Type
    WebSocketBase

#### frameHandler(handler) → {WebSocketBase}

  Set a frame handler on the connection. This handler will be called when frames are read on the connection.

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `handler` | function | the handler

  Source:
    - web_socket_base.js, line 292

  ##### Returns:

  a reference to this, so the API can be used fluently
  Type
    WebSocketBase

#### handler(handler) → {WebSocketBase}

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `handler` | function |

  Source:
    - web_socket_base.js, line 77

  ##### Returns:

  Type
    WebSocketBase

#### localAddress() → {SocketAddress}

  Source:
    - web_socket_base.js, line 339

  ##### Returns:

  - the local address for this socket
  - Type
      SocketAddress

#### pause() → {WebSocketBase}

  Source:
    - web_socket_base.js, line 93

  ##### Returns:

  Type
    WebSocketBase

#### remoteAddress() → {SocketAddress}

  Source:
    - web_socket_base.js, line 322

  ##### Returns:

  - the remote address for this socket
  - Type
      SocketAddress

#### resume() → {WebSocketBase}

  Source:
    - web_socket_base.js, line 107

  ##### Returns:

  Type
    WebSocketBase

#### setWriteQueueMaxSize(maxSize) → {WebSocketBase}

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `maxSize` | number |

  Source:
    - web_socket_base.js, line 149

  ##### Returns:

  Type
    WebSocketBase

#### textHandlerID() → {string}

  When a `Websocket` is created it automatically registers an event handler with the eventbus, the ID of that handler is given by `textHandlerID`.

  Given this ID, a different event loop can send a text frame to that event handler using the event bus and that buffer will be received by this instance in its own event loop and written to the underlying connection. This allows you to write data to other WebSockets which are owned by different event loops.

  Source:
    - web_socket_base.js, line 202

  ##### Returns:

  Type
    string

#### write(data) → {WebSocketBase}

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `data` | Buffer |

  Source:
    - web_socket_base.js, line 135

  ##### Returns:

  Type
    WebSocketBase

#### writeBinaryMessage(data) → {WebSocketBase}

  Writes a (potentially large) piece of binary data to the connection. This data might be written as multiple frames if it exceeds the maximum WebSocket frame size.

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `data` | Buffer | the data to write

  Source:
    - web_socket_base.js, line 262

  ##### Returns:

  a reference to this, so the API can be used fluently
  Type
    WebSocketBase

#### writeFinalBinaryFrame(data) → {WebSocketBase}

  Write a final WebSocket binary frame to the connection

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `data` | Buffer | The data to write

  Source:
    - web_socket_base.js, line 246

  ##### Returns:

  a reference to this, so the API can be used fluently
  Type
    WebSocketBase

#### writeFinalTextFrame(text) → {WebSocketBase}

  Write a final WebSocket text frame to the connection

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `text` | string | The text to write

  Source:
    - web_socket_base.js, line 231

  ##### Returns:

  a reference to this, so the API can be used fluently
  Type
    WebSocketBase

#### writeFrame(frame) → {WebSocketBase}

  Write a WebSocket frame to the connection

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `frame` | WebSocketFrame | the frame to write

  Source:
    - web_socket_base.js, line 216

  ##### Returns:

  a reference to this, so the API can be used fluently
  Type
    WebSocketBase

#### writeQueueFull() → {boolean}

  This will return `true` if there are more bytes in the write queue than the value set using WebSocketBase#setWriteQueueMaxSize
  Source:
    - web_socket_base.js, line 48

  ##### Returns:

  true if write queue is full
  Type
    boolean