Class List Method List File List

# Class: VertxStomp::StompClientConnection

Inherits:
  Object
  - Object
  - VertxStomp::StompClientConnection
  show all
Defined in:
  /Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_client_connection.rb

## Overview

Once a connection to the STOMP server has been made, client receives a StompClientConnection, that let send and receive STOMP frames.

## Instance Method Summary (collapse)

- - (self) abort(id = nil, headers = nil) { ... }
  Aborts a transaction.
- - (self) ack(id = nil, txId = nil) { ... }
  Sends an acknowledgement for the given frame.
- - (self) begin_tx(id = nil, headers = nil) { ... }
  Begins a transaction.
- - (void) close
  Closes the connection without sending the DISCONNECT frame.
- - (self) close_handler { ... }
  Sets a handler notified when the STOMP connection is closed.
- - (self) commit(id = nil, headers = nil) { ... }
  Commits a transaction.
- - (self) connection_dropped_handler { ... }
  Sets a handler notified when the server does not respond to a ping request in time.
- - (self) disconnect(frame = nil) { ... }
  Disconnects the client.
- - (self) error_handler { ... }
  Sets a handler notified when an ERROR frame is received by the client.
- - (self) nack(id = nil, txId = nil) { ... }
  Sends a non-acknowledgement for the given frame.
- - (self) ping_handler { ... }
  Sets a handler that let customize the behavior when a ping needs to be sent to the server.
- - (self) received_frame_handler { ... }
  Configures a received handler that get notified when a STOMP frame is received by the client.
- - (self) send(param_1 = nil, param_2 = nil, param_3 = nil)
  Sends a SEND frame to the server to the given destination.
- - (String) server
  @return the server name.
- - (String) session
  @return the session id.
- - (String) subscribe(param_1 = nil, param_2 = nil, param_3 = nil)
  Subscribes to the given destination.
- - (self) unsubscribe(destination = nil, headers = nil) { ... }
  Un-subscribes from the given destination.
- - (String) version
  @return the STOMP protocol version negotiated with the server.
- - (self) writing_frame_handler { ... }
  Configures a handler notified when a frame is going to be written on the wire.

## Instance Method Details

### - (`self`) abort(id = nil, headers = nil) { ... }

Aborts a transaction.

Parameters:

- id (`String`) (defaults to: `nil`) —
  the transaction id, must not be `null`
- headers (`Hash{String => String}`) (defaults to: `nil`) —
  additional headers to send to the server. The `transaction` header is replaced by the value passed in the @id parameter

Yields:

- the handler invoked when the `RECEIPT` frame associated with the transaction cancellation has been processed by the server. The handler receives the sent frame (`ABORT`).

Returns:

- (`self`)

Raises:

- (`ArgumentError`)

    250
    251
    252
    253
    254
    255
    256
    257
    258
    259
    260
    261
    262
    263
    264
    265
    # File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_client_connection.rb', line 250

    def abort(id=nil,headers=nil)
      if id.class == String && !block_given? && headers == nil
        @j_del.java_method(:abort, [Java::java.lang.String.java_class]).call(id)
        return self
      elsif id.class == String && block_given? && headers == nil
        @j_del.java_method(:abort, [Java::java.lang.String.java_class,Java::IoVertxCore::Handler.java_class]).call(id,(Proc.new { |event| yield(event != nil ? JSON.parse(event.toJson.encode) : nil) }))
        return self
      elsif id.class == String && headers.class == Hash && !block_given?
        @j_del.java_method(:abort, [Java::java.lang.String.java_class,Java::JavaUtil::Map.java_class]).call(id,Hash[headers.map { |k,v| [k,v] }])
        return self
      elsif id.class == String && headers.class == Hash && block_given?
        @j_del.java_method(:abort, [Java::java.lang.String.java_class,Java::JavaUtil::Map.java_class,Java::IoVertxCore::Handler.java_class]).call(id,Hash[headers.map { |k,v| [k,v] }],(Proc.new { |event| yield(event != nil ? JSON.parse(event.toJson.encode) : nil) }))
        return self
      end
      raise ArgumentError, "Invalid arguments when calling abort(id,headers)"
    end

### - (`self`) ack(id = nil, txId = nil) { ... }

Sends an acknowledgement for the given frame. It means that the frame has been handled and processed by the client. The sent acknowledgement is part of the transaction identified by the given id.

Parameters:

- id (`String`) (defaults to: `nil`) —
  the message id of the message to acknowledge
- txId (`String`) (defaults to: `nil`) —
  the transaction id

Yields:

- the handler invoked when the `RECEIPT` frame associated with the acknowledgment has been processed by the server. The handler receives the sent frame (`ACK`).

Returns:

- (`self`)

Raises:

- (`ArgumentError`)

    293
    294
    295
    296
    297
    298
    299
    300
    301
    302
    303
    304
    305
    306
    307
    308
    # File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_client_connection.rb', line 293

    def ack(id=nil,txId=nil)
      if id.class == String && !block_given? && txId == nil
        @j_del.java_method(:ack, [Java::java.lang.String.java_class]).call(id)
        return self
      elsif id.class == String && block_given? && txId == nil
        @j_del.java_method(:ack, [Java::java.lang.String.java_class,Java::IoVertxCore::Handler.java_class]).call(id,(Proc.new { |event| yield(event != nil ? JSON.parse(event.toJson.encode) : nil) }))
        return self
      elsif id.class == String && txId.class == String && !block_given?
        @j_del.java_method(:ack, [Java::java.lang.String.java_class,Java::java.lang.String.java_class]).call(id,txId)
        return self
      elsif id.class == String && txId.class == String && block_given?
        @j_del.java_method(:ack, [Java::java.lang.String.java_class,Java::java.lang.String.java_class,Java::IoVertxCore::Handler.java_class]).call(id,txId,(Proc.new { |event| yield(event != nil ? JSON.parse(event.toJson.encode) : nil) }))
        return self
      end
      raise ArgumentError, "Invalid arguments when calling ack(id,txId)"
    end

### - (`self`) begin_tx(id = nil, headers = nil) { ... }

Begins a transaction.

Parameters:

- id (`String`) (defaults to: `nil`) —
  the transaction id, must not be `null`
- headers (`Hash{String => String}`) (defaults to: `nil`) —
  additional headers to send to the server. The `transaction` header is replaced by the value passed in the @id parameter

Yields:

- the handler invoked when the `RECEIPT` frame associated with the transaction begin has been processed by the server. The handler receives the sent frame (`BEGIN`).

Returns:

- (`self`)

Raises:

- (`ArgumentError`)

    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    # File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_client_connection.rb', line 208

    def begin_tx(id=nil,headers=nil)
      if id.class == String && !block_given? && headers == nil
        @j_del.java_method(:beginTX, [Java::java.lang.String.java_class]).call(id)
        return self
      elsif id.class == String && block_given? && headers == nil
        @j_del.java_method(:beginTX, [Java::java.lang.String.java_class,Java::IoVertxCore::Handler.java_class]).call(id,(Proc.new { |event| yield(event != nil ? JSON.parse(event.toJson.encode) : nil) }))
        return self
      elsif id.class == String && headers.class == Hash && !block_given?
        @j_del.java_method(:beginTX, [Java::java.lang.String.java_class,Java::JavaUtil::Map.java_class]).call(id,Hash[headers.map { |k,v| [k,v] }])
        return self
      elsif id.class == String && headers.class == Hash && block_given?
        @j_del.java_method(:beginTX, [Java::java.lang.String.java_class,Java::JavaUtil::Map.java_class,Java::IoVertxCore::Handler.java_class]).call(id,Hash[headers.map { |k,v| [k,v] }],(Proc.new { |event| yield(event != nil ? JSON.parse(event.toJson.encode) : nil) }))
        return self
      end
      raise ArgumentError, "Invalid arguments when calling begin_tx(id,headers)"
    end

### - (`void`) close

This method returns an undefined value.

Closes the connection without sending the `DISCONNECT` frame.

Raises:

- (`ArgumentError`)

    36
    37
    38
    39
    40
    41
    # File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_client_connection.rb', line 36

    def close
      if !block_given?
        return @j_del.java_method(:close, []).call()
      end
      raise ArgumentError, "Invalid arguments when calling close()"
    end

### - (`self`) close_handler { ... }

Sets a handler notified when the STOMP connection is closed.

Yields:

- the handler

Returns:

- (`self`)

Raises:

- (`ArgumentError`)

    173
    174
    175
    176
    177
    178
    179
    # File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_client_connection.rb', line 173

    def close_handler
      if block_given?
        @j_del.java_method(:closeHandler, [Java::IoVertxCore::Handler.java_class]).call((Proc.new { |event| yield(::Vertx::Util::Utils.safe_create(event,::VertxStomp::StompClientConnection)) }))
        return self
      end
      raise ArgumentError, "Invalid arguments when calling close_handler()"
    end

### - (`self`) commit(id = nil, headers = nil) { ... }

Commits a transaction.

Parameters:

- id (`String`) (defaults to: `nil`) —
  the transaction id, must not be `null`
- headers (`Hash{String => String}`) (defaults to: `nil`) —
  additional headers to send to the server. The `transaction` header is replaced by the value passed in the @id parameter

Yields:

- the handler invoked when the `RECEIPT` frame associated with the transaction commit has been processed by the server. The handler receives the sent frame (`COMMIT`).

Returns:

- (`self`)

Raises:

- (`ArgumentError`)

    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    # File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_client_connection.rb', line 229

    def commit(id=nil,headers=nil)
      if id.class == String && !block_given? && headers == nil
        @j_del.java_method(:commit, [Java::java.lang.String.java_class]).call(id)
        return self
      elsif id.class == String && block_given? && headers == nil
        @j_del.java_method(:commit, [Java::java.lang.String.java_class,Java::IoVertxCore::Handler.java_class]).call(id,(Proc.new { |event| yield(event != nil ? JSON.parse(event.toJson.encode) : nil) }))
        return self
      elsif id.class == String && headers.class == Hash && !block_given?
        @j_del.java_method(:commit, [Java::java.lang.String.java_class,Java::JavaUtil::Map.java_class]).call(id,Hash[headers.map { |k,v| [k,v] }])
        return self
      elsif id.class == String && headers.class == Hash && block_given?
        @j_del.java_method(:commit, [Java::java.lang.String.java_class,Java::JavaUtil::Map.java_class,Java::IoVertxCore::Handler.java_class]).call(id,Hash[headers.map { |k,v| [k,v] }],(Proc.new { |event| yield(event != nil ? JSON.parse(event.toJson.encode) : nil) }))
        return self
      end
      raise ArgumentError, "Invalid arguments when calling commit(id,headers)"
    end

### - (`self`) connection_dropped_handler { ... }

Sets a handler notified when the server does not respond to a `ping` request in time. In other words, this handler is invoked when the heartbeat has detected a connection failure with the server. The handler can decide to reconnect to the server.

Yields:

- the handler

Returns:

- (`self`)

Raises:

- (`ArgumentError`)

    185
    186
    187
    188
    189
    190
    191
    # File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_client_connection.rb', line 185

    def connection_dropped_handler
      if block_given?
        @j_del.java_method(:connectionDroppedHandler, [Java::IoVertxCore::Handler.java_class]).call((Proc.new { |event| yield(::Vertx::Util::Utils.safe_create(event,::VertxStomp::StompClientConnection)) }))
        return self
      end
      raise ArgumentError, "Invalid arguments when calling connection_dropped_handler()"
    end

### - (`self`) disconnect(frame = nil) { ... }

Disconnects the client. Unlike the #close method, this method send the `DISCONNECT` frame to the server. This method lets you customize the `DISCONNECT` frame.

Parameters:

- frame (`Hash`) (defaults to: `nil`) —
  the `DISCONNECT` frame.

Yields:

- the handler invoked when the `RECEIPT` frame associated with the disconnection has been processed by the server. The handler receives the sent frame (`DISCONNECT`).

Returns:

- (`self`)

Raises:

- (`ArgumentError`)

    271
    272
    273
    274
    275
    276
    277
    278
    279
    280
    281
    282
    283
    284
    285
    286
    # File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_client_connection.rb', line 271

    def disconnect(frame=nil)
      if !block_given? && frame == nil
        @j_del.java_method(:disconnect, []).call()
        return self
      elsif block_given? && frame == nil
        @j_del.java_method(:disconnect, [Java::IoVertxCore::Handler.java_class]).call((Proc.new { |event| yield(event != nil ? JSON.parse(event.toJson.encode) : nil) }))
        return self
      elsif frame.class == Hash && !block_given?
        @j_del.java_method(:disconnect, [Java::IoVertxExtStomp::Frame.java_class]).call(Java::IoVertxExtStomp::Frame.new(::Vertx::Util::Utils.to_json_object(frame)))
        return self
      elsif frame.class == Hash && block_given?
        @j_del.java_method(:disconnect, [Java::IoVertxExtStomp::Frame.java_class,Java::IoVertxCore::Handler.java_class]).call(Java::IoVertxExtStomp::Frame.new(::Vertx::Util::Utils.to_json_object(frame)),(Proc.new { |event| yield(event != nil ? JSON.parse(event.toJson.encode) : nil) }))
        return self
      end
      raise ArgumentError, "Invalid arguments when calling disconnect(frame)"
    end

### - (`self`) error_handler { ... }

Sets a handler notified when an `ERROR` frame is received by the client. The handler receives the `ERROR` frame and a reference on the VertxStomp::StompClientConnection.

Yields:

- the handler

Returns:

- (`self`)

Raises:

- (`ArgumentError`)

    163
    164
    165
    166
    167
    168
    169
    # File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_client_connection.rb', line 163

    def error_handler
      if block_given?
        @j_del.java_method(:errorHandler, [Java::IoVertxCore::Handler.java_class]).call((Proc.new { |event| yield(event != nil ? JSON.parse(event.toJson.encode) : nil) }))
        return self
      end
      raise ArgumentError, "Invalid arguments when calling error_handler()"
    end

### - (`self`) nack(id = nil, txId = nil) { ... }

Sends a non-acknowledgement for the given frame. It means that the frame has not been handled by the client. The sent non-acknowledgement is part of the transaction identified by the given id.

Parameters:

- id (`String`) (defaults to: `nil`) —
  the message id of the message to acknowledge
- txId (`String`) (defaults to: `nil`) —
  the transaction id

Yields:

- the handler invoked when the `RECEIPT` frame associated with the non-acknowledgment has been processed by the server. The handler receives the sent frame (`NACK`).

Returns:

- (`self`)

Raises:

- (`ArgumentError`)

    315
    316
    317
    318
    319
    320
    321
    322
    323
    324
    325
    326
    327
    328
    329
    330
    # File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_client_connection.rb', line 315

    def nack(id=nil,txId=nil)
      if id.class == String && !block_given? && txId == nil
        @j_del.java_method(:nack, [Java::java.lang.String.java_class]).call(id)
        return self
      elsif id.class == String && block_given? && txId == nil
        @j_del.java_method(:nack, [Java::java.lang.String.java_class,Java::IoVertxCore::Handler.java_class]).call(id,(Proc.new { |event| yield(event != nil ? JSON.parse(event.toJson.encode) : nil) }))
        return self
      elsif id.class == String && txId.class == String && !block_given?
        @j_del.java_method(:nack, [Java::java.lang.String.java_class,Java::java.lang.String.java_class]).call(id,txId)
        return self
      elsif id.class == String && txId.class == String && block_given?
        @j_del.java_method(:nack, [Java::java.lang.String.java_class,Java::java.lang.String.java_class,Java::IoVertxCore::Handler.java_class]).call(id,txId,(Proc.new { |event| yield(event != nil ? JSON.parse(event.toJson.encode) : nil) }))
        return self
      end
      raise ArgumentError, "Invalid arguments when calling nack(id,txId)"
    end

### - (`self`) ping_handler { ... }

Sets a handler that let customize the behavior when a ping needs to be sent to the server. Be aware that changing the default behavior may break the compliance with the STOMP specification.

Yields:

- the handler

Returns:

- (`self`)

Raises:

- (`ArgumentError`)

    196
    197
    198
    199
    200
    201
    202
    # File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_client_connection.rb', line 196

    def ping_handler
      if block_given?
        @j_del.java_method(:pingHandler, [Java::IoVertxCore::Handler.java_class]).call((Proc.new { |event| yield(::Vertx::Util::Utils.safe_create(event,::VertxStomp::StompClientConnection)) }))
        return self
      end
      raise ArgumentError, "Invalid arguments when calling ping_handler()"
    end

### - (`self`) received_frame_handler { ... }

Configures a received handler that get notified when a STOMP frame is received by the client. This handler can be used for logging, debugging or ad-hoc behavior. The frame can still be modified by the handler.

Unlike VertxStomp::StompClient#received_frame_handler, the given handler won't receive the `CONNECTED` frame. If a received frame handler is set on the VertxStomp::StompClient, it will be used by all clients connection, so calling this method is useless, except if you want to use a different handler.

Yields:

- the handler

Returns:

- (`self`)

Raises:

- (`ArgumentError`)

    338
    339
    340
    341
    342
    343
    344
    # File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_client_connection.rb', line 338

    def received_frame_handler
      if block_given?
        @j_del.java_method(:receivedFrameHandler, [Java::IoVertxCore::Handler.java_class]).call((Proc.new { |event| yield(event != nil ? JSON.parse(event.toJson.encode) : nil) }))
        return self
      end
      raise ArgumentError, "Invalid arguments when calling received_frame_handler()"
    end

### - (`self`) send(frame) - (`self`) send(headers, body) - (`self`) send(destination, body) - (`self`) send(frame, receiptHandler) { ... } - (`self`) send(headers, body, receiptHandler) { ... } - (`self`) send(destination, body, receiptHandler) { ... } - (`self`) send(destination, headers, body) - (`self`) send(destination, headers, body, receiptHandler) { ... }

Sends a `SEND` frame to the server to the given destination.

Overloads:

- - (`self`) send(frame)

  Parameters:

  - frame (`Hash`) —
    the frame
- - (`self`) send(headers, body)

  Parameters:

  - headers (`Hash{String => String}`) —
    the headers, must not be `null`
  - body (`::Vertx::Buffer`) —
    the body, may be `null`
- - (`self`) send(destination, body)

  Parameters:

  - destination (`String`) —
    the destination, must not be `null`
  - body (`::Vertx::Buffer`) —
    the body, may be `null`
- - (`self`) send(frame, receiptHandler) { ... }

  Parameters:

  - frame (`Hash`) —
    the frame

  Yields:

  - the handler invoked when the `RECEIPT` frame associated with the sent frame has been received. The handler receives the sent frame.
- - (`self`) send(headers, body, receiptHandler) { ... }

  Parameters:

  - headers (`Hash{String => String}`) —
    the headers, must not be `null`
  - body (`::Vertx::Buffer`) —
    the body, may be `null`

  Yields:

  - the handler invoked when the `RECEIPT` frame associated with the sent frame has been received. The handler receives the sent frame.
- - (`self`) send(destination, body, receiptHandler) { ... }

  Parameters:

  - destination (`String`) —
    the destination, must not be `null`
  - body (`::Vertx::Buffer`) —
    the body, may be `null`

  Yields:

  - the handler invoked when the `RECEIPT` frame associated with the sent frame has been received. The handler receives the sent frame.
- - (`self`) send(destination, headers, body)

  Parameters:

  - destination (`String`) —
    the destination, must not be `null`
  - headers (`Hash{String => String}`) —
    the header. The `destination` header is replaced by the value given to the `destination` parameter
  - body (`::Vertx::Buffer`) —
    the body, may be `null`
- - (`self`) send(destination, headers, body, receiptHandler) { ... }

  Parameters:

  - destination (`String`) —
    the destination, must not be `null`
  - headers (`Hash{String => String}`) —
    the header. The `destination` header is replaced by the value given to the `destination` parameter
  - body (`::Vertx::Buffer`) —
    the body, may be `null`

  Yields:

  - the handler invoked when the `RECEIPT` frame associated with the sent frame has been received. The handler receives the sent frame.

Returns:

- (`self`)

Raises:

- (`ArgumentError`)

    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    # File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_client_connection.rb', line 80

    def send(param_1=nil,param_2=nil,param_3=nil)
      if param_1.class == Hash && !block_given? && param_2 == nil && param_3 == nil
        @j_del.java_method(:send, [Java::IoVertxExtStomp::Frame.java_class]).call(Java::IoVertxExtStomp::Frame.new(::Vertx::Util::Utils.to_json_object(param_1)))
        return self
      elsif param_1.class == Hash && param_2.class.method_defined?(:j_del) && !block_given? && param_3 == nil
        @j_del.java_method(:send, [Java::JavaUtil::Map.java_class,Java::IoVertxCoreBuffer::Buffer.java_class]).call(Hash[param_1.map { |k,v| [k,v] }],param_2.j_del)
        return self
      elsif param_1.class == String && param_2.class.method_defined?(:j_del) && !block_given? && param_3 == nil
        @j_del.java_method(:send, [Java::java.lang.String.java_class,Java::IoVertxCoreBuffer::Buffer.java_class]).call(param_1,param_2.j_del)
        return self
      elsif param_1.class == Hash && block_given? && param_2 == nil && param_3 == nil
        @j_del.java_method(:send, [Java::IoVertxExtStomp::Frame.java_class,Java::IoVertxCore::Handler.java_class]).call(Java::IoVertxExtStomp::Frame.new(::Vertx::Util::Utils.to_json_object(param_1)),(Proc.new { |event| yield(event != nil ? JSON.parse(event.toJson.encode) : nil) }))
        return self
      elsif param_1.class == Hash && param_2.class.method_defined?(:j_del) && block_given? && param_3 == nil
        @j_del.java_method(:send, [Java::JavaUtil::Map.java_class,Java::IoVertxCoreBuffer::Buffer.java_class,Java::IoVertxCore::Handler.java_class]).call(Hash[param_1.map { |k,v| [k,v] }],param_2.j_del,(Proc.new { |event| yield(event != nil ? JSON.parse(event.toJson.encode) : nil) }))
        return self
      elsif param_1.class == String && param_2.class.method_defined?(:j_del) && block_given? && param_3 == nil
        @j_del.java_method(:send, [Java::java.lang.String.java_class,Java::IoVertxCoreBuffer::Buffer.java_class,Java::IoVertxCore::Handler.java_class]).call(param_1,param_2.j_del,(Proc.new { |event| yield(event != nil ? JSON.parse(event.toJson.encode) : nil) }))
        return self
      elsif param_1.class == String && param_2.class == Hash && param_3.class.method_defined?(:j_del) && !block_given?
        @j_del.java_method(:send, [Java::java.lang.String.java_class,Java::JavaUtil::Map.java_class,Java::IoVertxCoreBuffer::Buffer.java_class]).call(param_1,Hash[param_2.map { |k,v| [k,v] }],param_3.j_del)
        return self
      elsif param_1.class == String && param_2.class == Hash && param_3.class.method_defined?(:j_del) && block_given?
        @j_del.java_method(:send, [Java::java.lang.String.java_class,Java::JavaUtil::Map.java_class,Java::IoVertxCoreBuffer::Buffer.java_class,Java::IoVertxCore::Handler.java_class]).call(param_1,Hash[param_2.map { |k,v| [k,v] }],param_3.j_del,(Proc.new { |event| yield(event != nil ? JSON.parse(event.toJson.encode) : nil) }))
        return self
      end
      raise ArgumentError, "Invalid arguments when calling send(param_1,param_2,param_3)"
    end

### - (`String`) server

@return the server name.

Returns:

- (`String`)

Raises:

- (`ArgumentError`)

    44
    45
    46
    47
    48
    49
    # File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_client_connection.rb', line 44

    def server
      if !block_given?
        return @j_del.java_method(:server, []).call()
      end
      raise ArgumentError, "Invalid arguments when calling server()"
    end

### - (`String`) session

@return the session id.

Returns:

- (`String`)

Raises:

- (`ArgumentError`)

    20
    21
    22
    23
    24
    25
    # File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_client_connection.rb', line 20

    def session
      if !block_given?
        return @j_del.java_method(:session, []).call()
      end
      raise ArgumentError, "Invalid arguments when calling session()"
    end

### - (`String`) subscribe(destination, handler) { ... } - (`String`) subscribe(destination, handler, receiptHandler) { ... } - (`String`) subscribe(destination, headers, handler) { ... } - (`String`) subscribe(destination, headers, handler, receiptHandler) { ... }

Subscribes to the given destination.

Overloads:

- - (`String`) subscribe(destination, handler) { ... }

  Parameters:

  - destination (`String`) —
    the destination, must not be `null`

  Yields:

  - the handler invoked when a message is received on the given destination. Must not be `null`.
- - (`String`) subscribe(destination, handler, receiptHandler) { ... }

  Parameters:

  - destination (`String`) —
    the destination, must not be `null`
  - handler (`Proc`) —
    the handler invoked when a message is received on the given destination. Must not be `null`.

  Yields:

  - the handler invoked when the `RECEIPT` frame associated with the subscription has been received. The handler receives the sent frame (`SUBSCRIBE`).
- - (`String`) subscribe(destination, headers, handler) { ... }

  Parameters:

  - destination (`String`) —
    the destination, must not be `null`.
  - headers (`Hash{String => String}`) —
    the headers to configure the subscription. It may contain the `ack` header to configure the acknowledgment policy. If the given set of headers contains the `id` header, this value is used as subscription id.

  Yields:

  - the handler invoked when a message is received on the given destination. Must not be `null`.
- - (`String`) subscribe(destination, headers, handler, receiptHandler) { ... }

  Parameters:

  - destination (`String`) —
    the destination, must not be `null`
  - headers (`Hash{String => String}`) —
    the headers to configure the subscription. It may contain the `ack` header to configure the acknowledgment policy. If the given set of headers contains the `id` header, this value is used as subscription id.
  - handler (`Proc`) —
    the handler invoked when a message is received on the given destination. Must not be `null`.

  Yields:

  - the handler invoked when the `RECEIPT` frame associated with the subscription has been received. The handler receives the sent frame (`SUBSCRIBE`).

Returns:

- (`String`) —
  the subscription id, which can either be the destination or the id set in the headers.

Raises:

- (`ArgumentError`)

    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    # File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_client_connection.rb', line 126

    def subscribe(param_1=nil,param_2=nil,param_3=nil)
      if param_1.class == String && block_given? && param_2 == nil && param_3 == nil
        return @j_del.java_method(:subscribe, [Java::java.lang.String.java_class,Java::IoVertxCore::Handler.java_class]).call(param_1,(Proc.new { |event| yield(event != nil ? JSON.parse(event.toJson.encode) : nil) }))
      elsif param_1.class == String && param_2.class == Proc && block_given? && param_3 == nil
        return @j_del.java_method(:subscribe, [Java::java.lang.String.java_class,Java::IoVertxCore::Handler.java_class,Java::IoVertxCore::Handler.java_class]).call(param_1,(Proc.new { |event| param_2.call(event != nil ? JSON.parse(event.toJson.encode) : nil) }),(Proc.new { |event| yield(event != nil ? JSON.parse(event.toJson.encode) : nil) }))
      elsif param_1.class == String && param_2.class == Hash && block_given? && param_3 == nil
        return @j_del.java_method(:subscribe, [Java::java.lang.String.java_class,Java::JavaUtil::Map.java_class,Java::IoVertxCore::Handler.java_class]).call(param_1,Hash[param_2.map { |k,v| [k,v] }],(Proc.new { |event| yield(event != nil ? JSON.parse(event.toJson.encode) : nil) }))
      elsif param_1.class == String && param_2.class == Hash && param_3.class == Proc && block_given?
        return @j_del.java_method(:subscribe, [Java::java.lang.String.java_class,Java::JavaUtil::Map.java_class,Java::IoVertxCore::Handler.java_class,Java::IoVertxCore::Handler.java_class]).call(param_1,Hash[param_2.map { |k,v| [k,v] }],(Proc.new { |event| param_3.call(event != nil ? JSON.parse(event.toJson.encode) : nil) }),(Proc.new { |event| yield(event != nil ? JSON.parse(event.toJson.encode) : nil) }))
      end
      raise ArgumentError, "Invalid arguments when calling subscribe(param_1,param_2,param_3)"
    end

### - (`self`) unsubscribe(destination = nil, headers = nil) { ... }

Un-subscribes from the given destination. This method computes the subscription id as follows. If the given headers contains the `id` header, the header value is used. Otherwise the destination is used.

Parameters:

- destination (`String`) (defaults to: `nil`) —
  the destination
- headers (`Hash{String => String}`) (defaults to: `nil`) —
  the headers

Yields:

- the handler invoked when the `RECEIPT` frame associated with the un-subscription has been received. The handler receives the sent frame (`UNSUBSCRIBE`).

Returns:

- (`self`)

Raises:

- (`ArgumentError`)

    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    # File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_client_connection.rb', line 144

    def unsubscribe(destination=nil,headers=nil)
      if destination.class == String && !block_given? && headers == nil
        @j_del.java_method(:unsubscribe, [Java::java.lang.String.java_class]).call(destination)
        return self
      elsif destination.class == String && block_given? && headers == nil
        @j_del.java_method(:unsubscribe, [Java::java.lang.String.java_class,Java::IoVertxCore::Handler.java_class]).call(destination,(Proc.new { |event| yield(event != nil ? JSON.parse(event.toJson.encode) : nil) }))
        return self
      elsif destination.class == String && headers.class == Hash && !block_given?
        @j_del.java_method(:unsubscribe, [Java::java.lang.String.java_class,Java::JavaUtil::Map.java_class]).call(destination,Hash[headers.map { |k,v| [k,v] }])
        return self
      elsif destination.class == String && headers.class == Hash && block_given?
        @j_del.java_method(:unsubscribe, [Java::java.lang.String.java_class,Java::JavaUtil::Map.java_class,Java::IoVertxCore::Handler.java_class]).call(destination,Hash[headers.map { |k,v| [k,v] }],(Proc.new { |event| yield(event != nil ? JSON.parse(event.toJson.encode) : nil) }))
        return self
      end
      raise ArgumentError, "Invalid arguments when calling unsubscribe(destination,headers)"
    end

### - (`String`) version

@return the STOMP protocol version negotiated with the server.

Returns:

- (`String`)

Raises:

- (`ArgumentError`)

    28
    29
    30
    31
    32
    33
    # File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_client_connection.rb', line 28

    def version
      if !block_given?
        return @j_del.java_method(:version, []).call()
      end
      raise ArgumentError, "Invalid arguments when calling version()"
    end

### - (`self`) writing_frame_handler { ... }

Configures a handler notified when a frame is going to be written on the wire. This handler can be used from logging, debugging. The handler can modify the received frame. If a writing frame handler is set on the VertxStomp::StompClient, it will be used by all clients connection, so calling this method is useless, except if you want to use a different handler.

Yields:

- the handler

Returns:

- (`self`)

Raises:

- (`ArgumentError`)

    352
    353
    354
    355
    356
    357
    358
    # File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_client_connection.rb', line 352

    def writing_frame_handler
      if block_given?
        @j_del.java_method(:writingFrameHandler, [Java::IoVertxCore::Handler.java_class]).call((Proc.new { |event| yield(event != nil ? JSON.parse(event.toJson.encode) : nil) }))
        return self
      end
      raise ArgumentError, "Invalid arguments when calling writing_frame_handler()"
    end