io.vertx.ext.stomp

## Interface StompServer

-     public interface StompServer

  Defines a STOMP server. STOMP servers delegates to a `StompServerHandler` that let customize the behavior of the server. By default, it uses a handler compliant with the STOMP specification, but let you change anything.
  Author:
    Clement Escoffier

- - ### Method Summary

    All Methods Static Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `actualPort()` Gets the port on which the server is listening.
    `Future<Void>` | `close()` Closes the server.
    `void` | `close(Handler<AsyncResult<Void>> completionHandler)` Closes the server.
    `static StompServer` | `create(Vertx vertx)` Creates a `StompServer` based on the default Stomp Server implementation, and use the default options.
    `static StompServer` | `create(Vertx vertx, NetServer netServer)` Creates a `StompServer` based on the default Stomp Server implementation.
    `static StompServer` | `create(Vertx vertx, NetServer net, StompServerOptions options)` Creates a `StompServer` based on the default Stomp Server implementation.
    `static StompServer` | `create(Vertx vertx, StompServerOptions options)` Creates a `StompServer` based on the default Stomp Server implementation.
    `StompServer` | `handler(StompServerHandler handler)` Configures the `StompServerHandler`.
    `boolean` | `isListening()` Checks whether or not the server is listening.
    `Future<StompServer>` | `listen()` Connects the STOMP server to the port / host configured in the server options.
    `StompServer` | `listen(Handler<AsyncResult<StompServer>> handler)` Connects the STOMP server default port (61613) and network interface (`0.0.0.0`).
    `Future<StompServer>` | `listen(int port)` Connects the STOMP server to the given port.
    `StompServer` | `listen(int port, Handler<AsyncResult<StompServer>> handler)` Connects the STOMP server to the given port.
    `Future<StompServer>` | `listen(int port, String host)` Connects the STOMP server to the given port / interface.
    `StompServer` | `listen(int port, String host, Handler<AsyncResult<StompServer>> handler)` Connects the STOMP server to the given port / interface.
    `StompServerOptions` | `options()`
    `StompServerHandler` | `stompHandler()`
    `Vertx` | `vertx()`
    `Handler<ServerWebSocket>` | `webSocketHandler()` Gets the `Handler` able to manage web socket connections.
    `StompServer` | `writingFrameHandler(Handler<ServerFrame> handler)` Configures the handler that is invoked every time a frame is going to be written to the "wire".

- - ### Method Detail

    - #### create

          static StompServer create(Vertx vertx,
                                    StompServerOptions options)

      Creates a `StompServer` based on the default Stomp Server implementation.
      Parameters:
        `vertx` - the vert.x instance to use
        `options` - the server options
      Returns:
        the created `StompServer`

    - #### create

          static StompServer create(Vertx vertx,
                                    NetServer netServer)

      Creates a `StompServer` based on the default Stomp Server implementation.
      Parameters:
        `vertx` - the vert.x instance to use
        `netServer` - the Net server used by the STOMP server
      Returns:
        the created `StompServer`

    - #### create

          static StompServer create(Vertx vertx,
                                    NetServer net,
                                    StompServerOptions options)

      Creates a `StompServer` based on the default Stomp Server implementation.
      Parameters:
        `vertx` - the vert.x instance to use
        `net` - the Net server used by the STOMP server
        `options` - the server options
      Returns:
        the created `StompServer`

    - #### create

          static StompServer create(Vertx vertx)

      Creates a `StompServer` based on the default Stomp Server implementation, and use the default options.
      Parameters:
        `vertx` - the vert.x instance to use
      Returns:
        the created `StompServer`

    - #### handler

          StompServer handler(StompServerHandler handler)

      Configures the `StompServerHandler`. You must calls this method before calling the `listen()` method.
      Parameters:
        `handler` - the handler
      Returns:
        the current `StompServer`

    - #### listen

          Future<StompServer> listen(int port)

      Connects the STOMP server to the given port.
      Parameters:
        `port` - the port
      Returns:
        a future resolved with the listen result

    - #### listen

          Future<StompServer> listen(int port,
                                     String host)

      Connects the STOMP server to the given port / interface.
      Parameters:
        `port` - the port
        `host` - the interface
      Returns:
        a future resolved with the listen result

    - #### listen

          Future<StompServer> listen()

      Connects the STOMP server to the port / host configured in the server options.
      Returns:
        a future resolved with the listen result

    - #### listen

          StompServer listen(Handler<AsyncResult<StompServer>> handler)

      Connects the STOMP server default port (61613) and network interface (`0.0.0.0`). Once the socket it bounds calls the given handler with the result. The result may be a failure if the socket is already used.
      Parameters:
        `handler` - the handler to call with the result
      Returns:
        the current `StompServer`

    - #### listen

          StompServer listen(int port,
                             Handler<AsyncResult<StompServer>> handler)

      Connects the STOMP server to the given port. This method use the default host (`0.0.0.0`). Once the socket it bounds calls the given handler with the result. The result may be a failure if the socket is already used.
      Parameters:
        `port` - the port
        `handler` - the handler to call with the result
      Returns:
        the current `StompServer`

    - #### listen

          StompServer listen(int port,
                             String host,
                             Handler<AsyncResult<StompServer>> handler)

      Connects the STOMP server to the given port / interface. Once the socket it bounds calls the given handler with the result. The result may be a failure if the socket is already used.
      Parameters:
        `port` - the port
        `host` - the host / interface
        `handler` - the handler to call with the result
      Returns:
        the current `StompServer`

    - #### close

          void close(Handler<AsyncResult<Void>> completionHandler)

      Closes the server.
      Parameters:
        `completionHandler` - handler called once the server has been stopped

    - #### close

          Future<Void> close()

      Closes the server.

    - #### isListening

          boolean isListening()

      Checks whether or not the server is listening.
      Returns:
        `true` if the server is listening, `false` otherwise

    - #### actualPort

          int actualPort()

      Gets the port on which the server is listening.

      This is useful if you bound the server specifying 0 as port number signifying an ephemeral port.
      Returns:
        the port
      See Also:
        `NetServer.actualPort()`

    - #### options

          StompServerOptions options()

      Returns:
        the server options

    - #### vertx

          Vertx vertx()

      Returns:
        the instance of vert.x used by the server.

    - #### stompHandler

          StompServerHandler stompHandler()

      Returns:
        the `StompServerHandler` used by this server.

    - #### webSocketHandler

          Handler<ServerWebSocket> webSocketHandler()

      Gets the `Handler` able to manage web socket connections. If the web socket bridge is disabled, it returns `null`.
      Returns:
        the handler that can be passed to `HttpServer.webSocketHandler(Handler)`.

    - #### writingFrameHandler

          StompServer writingFrameHandler(Handler<ServerFrame> handler)

      Configures the handler that is invoked every time a frame is going to be written to the "wire". It lets you log the frames, but also adapt the frame if needed.
      Parameters:
        `handler` - the handler, must not be `null`
      Returns:
        the current `StompServer`

Copyright © 2022 Eclipse. All rights reserved.