Package: io.vertx.groovy.core.http

## [Groovy] Class WebSocket

- io.vertx.groovy.core.http.WebSocket

- All Implemented Interfaces and Traits:
    WebSocketBase

      @groovy.transform.CompileStatic
      class WebSocket
      extends java.lang.Object

  Represents a client-side WebSocket.

- - ### Constructor Summary

    Constructors
    Constructor and description
    `WebSocket (java.lang.Object delegate)`

  - ### Methods Summary

    Methods
    Type | Name and description
    --- | ---
    `java.lang.String` | `binaryHandlerID()` 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.
    `void` | `close()` Close the WebSocket.
    `WebSocket` | `closeHandler(io.vertx.core.Handler<java.lang.Void> handler)`
    `WebSocket` | `drainHandler(io.vertx.core.Handler<java.lang.Void> handler)`
    `void` | `end(Buffer t)` Same as WebSocketBase.end but writes some data to the stream before ending.
    `void` | `end()` Calls WebSocketBase.close
    `WebSocket` | `endHandler(io.vertx.core.Handler<java.lang.Void> endHandler)`
    `WebSocket` | `exceptionHandler(io.vertx.core.Handler<java.lang.Throwable> handler)`
    `WebSocket` | `frameHandler(io.vertx.core.Handler<WebSocketFrame> handler)`
    `java.lang.Object` | `getDelegate()`
    `WebSocket` | `handler(io.vertx.core.Handler<Buffer> handler)`
    `SocketAddress` | `localAddress()` @return Returns: the local address for this socket
    `WebSocket` | `pause()`
    `SocketAddress` | `remoteAddress()` @return Returns: the remote address for this socket
    `WebSocket` | `resume()`
    `WebSocket` | `setWriteQueueMaxSize(int maxSize)`
    `java.lang.String` | `textHandlerID()` When a `Websocket` is created it automatically registers an event handler with the eventbus, the ID of that handler is given by `textHandlerID`.
    `WebSocket` | `write(Buffer data)`
    `WebSocket` | `writeBinaryMessage(Buffer data)`
    `WebSocket` | `writeFinalBinaryFrame(Buffer data)`
    `WebSocket` | `writeFinalTextFrame(java.lang.String text)`
    `WebSocket` | `writeFrame(WebSocketFrame frame)`
    `boolean` | `writeQueueFull()` This will return `true` if there are more bytes in the write queue than the value set using WebSocket.setWriteQueueMaxSize

  - ### Inherited Methods Summary

    Inherited Methods
    Methods inherited from class | Name
    --- | ---
    `class java.lang.Object` | `java.lang.Object#wait(long, int), java.lang.Object#wait(long), java.lang.Object#wait(), java.lang.Object#equals(java.lang.Object), java.lang.Object#toString(), java.lang.Object#hashCode(), java.lang.Object#getClass(), java.lang.Object#notify(), java.lang.Object#notifyAll()`

- - ### Constructor Detail

    - #### WebSocket(java.lang.Object delegate)

  - ### Method Detail

    - #### java.lang.String binaryHandlerID()

      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.

      Returns:
        the binary handler id

    - #### void close()

      Close the WebSocket.

    - #### WebSocket closeHandler(io.vertx.core.Handler<java.lang.Void> handler)

    - #### WebSocket drainHandler(io.vertx.core.Handler<java.lang.Void> handler)

    - #### void end(Buffer t)

      Same as WebSocketBase.end but writes some data to the stream before ending.

      Parameters:
        t

    - #### void end()

      Calls WebSocketBase.close

    - #### WebSocket endHandler(io.vertx.core.Handler<java.lang.Void> endHandler)

    - #### WebSocket exceptionHandler(io.vertx.core.Handler<java.lang.Throwable> handler)

    - #### WebSocket frameHandler(io.vertx.core.Handler<WebSocketFrame> handler)

    - #### java.lang.Object getDelegate()

    - #### WebSocket handler(io.vertx.core.Handler<Buffer> handler)

    - #### SocketAddress localAddress()

      Returns:
        the local address for this socket

    - #### WebSocket pause()

    - #### SocketAddress remoteAddress()

      Returns:
        the remote address for this socket

    - #### WebSocket resume()

    - #### WebSocket setWriteQueueMaxSize(int maxSize)

    - #### java.lang.String textHandlerID()

      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.

      Returns:

    - #### WebSocket write(Buffer data)

    - #### WebSocket writeBinaryMessage(Buffer data)

    - #### WebSocket writeFinalBinaryFrame(Buffer data)

    - #### WebSocket writeFinalTextFrame(java.lang.String text)

    - #### WebSocket writeFrame(WebSocketFrame frame)

    - #### boolean writeQueueFull()

      This will return `true` if there are more bytes in the write queue than the value set using WebSocket.setWriteQueueMaxSize

      Returns:
        true if write queue is full