Class: VertxStomp::StompServerHandler
- Inherits:
-
Object
- Object
- VertxStomp::StompServerHandler
- Defined in:
- /Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_server_handler.rb
Overview
STOMP server handler implements the behavior of the STOMP server when a specific event occurs. For instance, if
let customize the behavior when specific STOMP frames arrives or when a connection is closed. This class has been
designed to let you customize the server behavior. The default implementation is compliant with the STOMP
specification. In this default implementation, not acknowledge frames are dropped.
Class Method Summary (collapse)
-
+ (::VertxStomp::StompServerHandler) create(vertx = nil)
Creates an instance of StompServerHandler using the default (compliant) implementation.
Instance Method Summary (collapse)
-
- (self) abort_handler { ... }
Configures the action to execute when a ABORT frame is received.
-
- (self) ack_handler { ... }
Configures the action to execute when a ACK frame is received.
-
- (self) auth_provider(handler = nil)
Configures the to be used to authenticate the user.
-
- (self) begin_handler { ... }
Configures the action to execute when a BEGIN frame is received.
-
- (self) bridge(options = nil)
Configures the STOMP server to act as a bridge with the Vert.x event bus.
-
- (self) close_handler { ... }
Configures the action to execute when a connection with the client is closed.
-
- (self) commit_handler { ... }
Configures the action to execute when a COMMIT frame is received.
-
- (self) connect_handler { ... }
Configures the action to execute when a CONNECT frame is received.
-
- (self) destination_factory(factory = nil)
Configures the DestinationFactory used to create Destination objects.
-
- (self) disconnect_handler { ... }
Configures the action to execute when a DISCONNECT frame is received.
-
- (::VertxStomp::Destination) get_destination(destination = nil)
Gets the destination with the given name.
-
- (Array<::VertxStomp::Destination>) get_destinations
@return the list of destination managed by the STOMP server.
-
- (::VertxStomp::Destination) get_or_create_destination(destination = nil)
Gets a Destination object if existing, or create a new one.
- - (void) handle(arg0 = nil)
-
- (self) nack_handler { ... }
Configures the action to execute when a NACK frame is received.
-
- (self) on_ack(connection = nil, subscribe = nil, messages = nil)
Method called by single message (client-individual policy) or a set of message (client policy) are acknowledged.
-
- (self) on_ack_handler { ... }
Configures the action to execute when messages are acknowledged.
-
- (self) on_authentication_request(server = nil, login = nil, passcode = nil) { ... }
Called when the client connects to a server requiring authentication.
-
- (void) on_close(connection = nil)
Called when the connection is closed.
-
- (self) on_nack(connection = nil, subscribe = nil, messages = nil)
Method called by single message (client-individual policy) or a set of message (client policy) are not acknowledged.
-
- (self) on_nack_handler { ... }
Configures the action to execute when messages are not acknowledged.
-
- (self) ping_handler { ... }
Allows customizing the action to do when the server needs to send a `PING` to the client.
-
- (self) received_frame_handler { ... }
Configures a handler that get notified when a STOMP frame is received by the server.
-
- (self) send_handler { ... }
Configures the action to execute when a SEND frame is received.
-
- (self) stomp_handler { ... }
Configures the action to execute when a STOMP frame is received.
-
- (self) subscribe_handler { ... }
Configures the action to execute when a SUBSCRIBE frame is received.
-
- (self) unsubscribe_handler { ... }
Configures the action to execute when a UNSUBSCRIBE frame is received.
Class Method Details
+ (::VertxStomp::StompServerHandler) create(vertx = nil)
Creates an instance of VertxStomp::StompServerHandler using the default (compliant) implementation.
38 39 40 41 42 43 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_server_handler.rb', line 38 def self.create(vertx=nil) if vertx.class.method_defined?(:j_del) && !block_given? return ::Vertx::Util::Utils.safe_create(Java::IoVertxExtStomp::StompServerHandler.java_method(:create, [Java::IoVertxCore::Vertx.java_class]).call(vertx.j_del),::VertxStomp::StompServerHandler) end raise ArgumentError, "Invalid arguments when calling create(vertx)" end |
Instance Method Details
- (self) abort_handler { ... }
Configures the action to execute when a
ABORT
frame is received.
138 139 140 141 142 143 144 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_server_handler.rb', line 138 def abort_handler if block_given? @j_del.java_method(:abortHandler, [Java::IoVertxCore::Handler.java_class]).call((Proc.new { |event| yield(::Vertx::Util::Utils.safe_create(event,::VertxStomp::ServerFrame)) })) return self end raise ArgumentError, "Invalid arguments when calling abort_handler()" end |
- (self) ack_handler { ... }
Configures the action to execute when a
ACK
frame is received.
168 169 170 171 172 173 174 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_server_handler.rb', line 168 def ack_handler if block_given? @j_del.java_method(:ackHandler, [Java::IoVertxCore::Handler.java_class]).call((Proc.new { |event| yield(::Vertx::Util::Utils.safe_create(event,::VertxStomp::ServerFrame)) })) return self end raise ArgumentError, "Invalid arguments when calling ack_handler()" end |
- (self) auth_provider(handler = nil)
Configures the to be used to authenticate the user.
202 203 204 205 206 207 208 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_server_handler.rb', line 202 def auth_provider(handler=nil) if handler.class.method_defined?(:j_del) && !block_given? @j_del.java_method(:authProvider, [Java::IoVertxExtAuth::AuthProvider.java_class]).call(handler.j_del) return self end raise ArgumentError, "Invalid arguments when calling auth_provider(handler)" end |
- (self) begin_handler { ... }
Configures the action to execute when a
BEGIN
frame is received.
148 149 150 151 152 153 154 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_server_handler.rb', line 148 def begin_handler if block_given? @j_del.java_method(:beginHandler, [Java::IoVertxCore::Handler.java_class]).call((Proc.new { |event| yield(::Vertx::Util::Utils.safe_create(event,::VertxStomp::ServerFrame)) })) return self end raise ArgumentError, "Invalid arguments when calling begin_handler()" end |
- (self) bridge(options = nil)
Configures the STOMP server to act as a bridge with the Vert.x event bus.
312 313 314 315 316 317 318 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_server_handler.rb', line 312 def bridge(=nil) if .class == Hash && !block_given? @j_del.java_method(:bridge, [Java::IoVertxExtStomp::BridgeOptions.java_class]).call(Java::IoVertxExtStomp::BridgeOptions.new(::Vertx::Util::Utils.to_json_object())) return self end raise ArgumentError, "Invalid arguments when calling bridge(options)" end |
- (self) close_handler { ... }
Configures the action to execute when a connection with the client is closed.
108 109 110 111 112 113 114 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_server_handler.rb', line 108 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::StompServerConnection)) })) return self end raise ArgumentError, "Invalid arguments when calling close_handler()" end |
- (self) commit_handler { ... }
Configures the action to execute when a
COMMIT
frame is received.
128 129 130 131 132 133 134 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_server_handler.rb', line 128 def commit_handler if block_given? @j_del.java_method(:commitHandler, [Java::IoVertxCore::Handler.java_class]).call((Proc.new { |event| yield(::Vertx::Util::Utils.safe_create(event,::VertxStomp::ServerFrame)) })) return self end raise ArgumentError, "Invalid arguments when calling commit_handler()" end |
- (self) connect_handler { ... }
Configures the action to execute when a
CONNECT
frame is received.
58 59 60 61 62 63 64 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_server_handler.rb', line 58 def connect_handler if block_given? @j_del.java_method(:connectHandler, [Java::IoVertxCore::Handler.java_class]).call((Proc.new { |event| yield(::Vertx::Util::Utils.safe_create(event,::VertxStomp::ServerFrame)) })) return self end raise ArgumentError, "Invalid arguments when calling connect_handler()" end |
- (self) destination_factory(factory = nil)
Configures the DestinationFactory used to create Destination objects.
302 303 304 305 306 307 308 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_server_handler.rb', line 302 def destination_factory(factory=nil) if factory.class.method_defined?(:j_del) && !block_given? @j_del.java_method(:destinationFactory, [Java::IoVertxExtStomp::DestinationFactory.java_class]).call(factory.j_del) return self end raise ArgumentError, "Invalid arguments when calling destination_factory(factory)" end |
- (self) disconnect_handler { ... }
Configures the action to execute when a
DISCONNECT
frame is received.
158 159 160 161 162 163 164 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_server_handler.rb', line 158 def disconnect_handler if block_given? @j_del.java_method(:disconnectHandler, [Java::IoVertxCore::Handler.java_class]).call((Proc.new { |event| yield(::Vertx::Util::Utils.safe_create(event,::VertxStomp::ServerFrame)) })) return self end raise ArgumentError, "Invalid arguments when calling disconnect_handler()" end |
- (::VertxStomp::Destination) get_destination(destination = nil)
Gets the destination with the given name.
221 222 223 224 225 226 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_server_handler.rb', line 221 def get_destination(destination=nil) if destination.class == String && !block_given? return ::Vertx::Util::Utils.safe_create(@j_del.java_method(:getDestination, [Java::java.lang.String.java_class]).call(destination),::VertxStomp::Destination) end raise ArgumentError, "Invalid arguments when calling get_destination(destination)" end |
- (Array<::VertxStomp::Destination>) get_destinations
@return the list of destination managed by the STOMP server. Don't forget the STOMP interprets destination as
opaque Strings.
212 213 214 215 216 217 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_server_handler.rb', line 212 def get_destinations if !block_given? return @j_del.java_method(:getDestinations, []).call().to_a.map { |elt| ::Vertx::Util::Utils.safe_create(elt,::VertxStomp::Destination) } end raise ArgumentError, "Invalid arguments when calling get_destinations()" end |
- (::VertxStomp::Destination) get_or_create_destination(destination = nil)
Gets a Destination object if existing, or create a new one. The creation is delegated to the
DestinationFactory.
293 294 295 296 297 298 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_server_handler.rb', line 293 def get_or_create_destination(destination=nil) if destination.class == String && !block_given? return ::Vertx::Util::Utils.safe_create(@j_del.java_method(:getOrCreateDestination, [Java::java.lang.String.java_class]).call(destination),::VertxStomp::Destination) end raise ArgumentError, "Invalid arguments when calling get_or_create_destination(destination)" end |
- (void) handle(arg0 = nil)
This method returns an undefined value.
29 30 31 32 33 34 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_server_handler.rb', line 29 def handle(arg0=nil) if arg0.class.method_defined?(:j_del) && !block_given? return @j_del.java_method(:handle, [Java::IoVertxExtStomp::ServerFrame.java_class]).call(arg0.j_del) end raise ArgumentError, "Invalid arguments when calling handle(arg0)" end |
- (self) nack_handler { ... }
Configures the action to execute when a
NACK
frame is received.
178 179 180 181 182 183 184 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_server_handler.rb', line 178 def nack_handler if block_given? @j_del.java_method(:nackHandler, [Java::IoVertxCore::Handler.java_class]).call((Proc.new { |event| yield(::Vertx::Util::Utils.safe_create(event,::VertxStomp::ServerFrame)) })) return self end raise ArgumentError, "Invalid arguments when calling nack_handler()" end |
- (self) on_ack(connection = nil, subscribe = nil, messages = nil)
Method called by single message (client-individual policy) or a set of message (client policy) are acknowledged.
Implementations must call the handler configured using #on_ack_handler.
233 234 235 236 237 238 239 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_server_handler.rb', line 233 def on_ack(connection=nil,subscribe=nil,=nil) if connection.class.method_defined?(:j_del) && subscribe.class == Hash && .class == Array && !block_given? @j_del.java_method(:onAck, [Java::IoVertxExtStomp::StompServerConnection.java_class,Java::IoVertxExtStomp::Frame.java_class,Java::JavaUtil::List.java_class]).call(connection.j_del,Java::IoVertxExtStomp::Frame.new(::Vertx::Util::Utils.to_json_object(subscribe)),.map { |element| Java::IoVertxExtStomp::Frame.new(::Vertx::Util::Utils.to_json_object(element)) }) return self end raise ArgumentError, "Invalid arguments when calling on_ack(connection,subscribe,messages)" end |
- (self) on_ack_handler { ... }
Configures the action to execute when messages are acknowledged.
258 259 260 261 262 263 264 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_server_handler.rb', line 258 def on_ack_handler if block_given? @j_del.java_method(:onAckHandler, [Java::IoVertxCore::Handler.java_class]).call((Proc.new { |event| yield(::Vertx::Util::Utils.safe_create(event,::VertxStomp::Acknowledgement)) })) return self end raise ArgumentError, "Invalid arguments when calling on_ack_handler()" end |
- (self) on_authentication_request(server = nil, login = nil, passcode = nil) { ... }
Called when the client connects to a server requiring authentication. It invokes the configured
using #auth_provider.
192 193 194 195 196 197 198 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_server_handler.rb', line 192 def on_authentication_request(server=nil,login=nil,passcode=nil) if server.class.method_defined?(:j_del) && login.class == String && passcode.class == String && block_given? @j_del.java_method(:onAuthenticationRequest, [Java::IoVertxExtStomp::StompServer.java_class,Java::java.lang.String.java_class,Java::java.lang.String.java_class,Java::IoVertxCore::Handler.java_class]).call(server.j_del,login,passcode,(Proc.new { |ar| yield(ar.failed ? ar.cause : nil, ar.succeeded ? ar.result : nil) })) return self end raise ArgumentError, "Invalid arguments when calling on_authentication_request(server,login,passcode)" end |
- (void) on_close(connection = nil)
This method returns an undefined value.
Called when the connection is closed. This method executes a default behavior and must calls the configured #close_handler if any.
119 120 121 122 123 124 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_server_handler.rb', line 119 def on_close(connection=nil) if connection.class.method_defined?(:j_del) && !block_given? return @j_del.java_method(:onClose, [Java::IoVertxExtStomp::StompServerConnection.java_class]).call(connection.j_del) end raise ArgumentError, "Invalid arguments when calling on_close(connection)" end |
- (self) on_nack(connection = nil, subscribe = nil, messages = nil)
Method called by single message (client-individual policy) or a set of message (client policy) are
not acknowledged. Not acknowledgment can result from a
NACK
frame or from a timeout (no
ACK
frame received in a given time. Implementations must call the handler configured using
#on_nack_handler.
248 249 250 251 252 253 254 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_server_handler.rb', line 248 def on_nack(connection=nil,subscribe=nil,=nil) if connection.class.method_defined?(:j_del) && subscribe.class == Hash && .class == Array && !block_given? @j_del.java_method(:onNack, [Java::IoVertxExtStomp::StompServerConnection.java_class,Java::IoVertxExtStomp::Frame.java_class,Java::JavaUtil::List.java_class]).call(connection.j_del,Java::IoVertxExtStomp::Frame.new(::Vertx::Util::Utils.to_json_object(subscribe)),.map { |element| Java::IoVertxExtStomp::Frame.new(::Vertx::Util::Utils.to_json_object(element)) }) return self end raise ArgumentError, "Invalid arguments when calling on_nack(connection,subscribe,messages)" end |
- (self) on_nack_handler { ... }
Configures the action to execute when messages are not acknowledged.
268 269 270 271 272 273 274 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_server_handler.rb', line 268 def on_nack_handler if block_given? @j_del.java_method(:onNackHandler, [Java::IoVertxCore::Handler.java_class]).call((Proc.new { |event| yield(::Vertx::Util::Utils.safe_create(event,::VertxStomp::Acknowledgement)) })) return self end raise ArgumentError, "Invalid arguments when calling on_nack_handler()" end |
- (self) ping_handler { ... }
Allows customizing the action to do when the server needs to send a `PING` to the client. By default it send a
frame containing
EOL
(specification). However, you can customize this and send another frame. However,
be aware that this may requires a custom client.
The handler will only be called if the connection supports heartbeats.
282 283 284 285 286 287 288 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_server_handler.rb', line 282 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::StompServerConnection)) })) return self end raise ArgumentError, "Invalid arguments when calling ping_handler()" end |
- (self) received_frame_handler { ... }
Configures a handler that get notified when a STOMP frame is received by the server.
This handler can be used for logging, debugging or ad-hoc behavior.
48 49 50 51 52 53 54 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_server_handler.rb', line 48 def received_frame_handler if block_given? @j_del.java_method(:receivedFrameHandler, [Java::IoVertxCore::Handler.java_class]).call((Proc.new { |event| yield(::Vertx::Util::Utils.safe_create(event,::VertxStomp::ServerFrame)) })) return self end raise ArgumentError, "Invalid arguments when calling received_frame_handler()" end |
- (self) send_handler { ... }
Configures the action to execute when a
SEND
frame is received.
98 99 100 101 102 103 104 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_server_handler.rb', line 98 def send_handler if block_given? @j_del.java_method(:sendHandler, [Java::IoVertxCore::Handler.java_class]).call((Proc.new { |event| yield(::Vertx::Util::Utils.safe_create(event,::VertxStomp::ServerFrame)) })) return self end raise ArgumentError, "Invalid arguments when calling send_handler()" end |
- (self) stomp_handler { ... }
Configures the action to execute when a
STOMP
frame is received.
68 69 70 71 72 73 74 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_server_handler.rb', line 68 def stomp_handler if block_given? @j_del.java_method(:stompHandler, [Java::IoVertxCore::Handler.java_class]).call((Proc.new { |event| yield(::Vertx::Util::Utils.safe_create(event,::VertxStomp::ServerFrame)) })) return self end raise ArgumentError, "Invalid arguments when calling stomp_handler()" end |
- (self) subscribe_handler { ... }
Configures the action to execute when a
SUBSCRIBE
frame is received.
78 79 80 81 82 83 84 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_server_handler.rb', line 78 def subscribe_handler if block_given? @j_del.java_method(:subscribeHandler, [Java::IoVertxCore::Handler.java_class]).call((Proc.new { |event| yield(::Vertx::Util::Utils.safe_create(event,::VertxStomp::ServerFrame)) })) return self end raise ArgumentError, "Invalid arguments when calling subscribe_handler()" end |
- (self) unsubscribe_handler { ... }
Configures the action to execute when a
UNSUBSCRIBE
frame is received.
88 89 90 91 92 93 94 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-stomp/stomp_server_handler.rb', line 88 def unsubscribe_handler if block_given? @j_del.java_method(:unsubscribeHandler, [Java::IoVertxCore::Handler.java_class]).call((Proc.new { |event| yield(::Vertx::Util::Utils.safe_create(event,::VertxStomp::ServerFrame)) })) return self end raise ArgumentError, "Invalid arguments when calling unsubscribe_handler()" end |