Class: Server::MessageHandler
- Inherits:
-
SimpleChannelInboundHandler
- Object
- SimpleChannelInboundHandler
- Server::MessageHandler
- Includes:
- ChannelFutureListener, ChannelHandler
- Defined in:
- lib/server/message_handler.rb
Overview
The MessageHandler class
Instance Method Summary collapse
-
#channelRead0(ctx, msg) ⇒ Object
Please keep in mind that this method will be renamed to messageReceived(ChannelHandlerContext, I) in 5.0.
- #handle_message(ctx, message) ⇒ Object
-
#initialize(&handler) ⇒ MessageHandler
constructor
A new instance of MessageHandler.
- #messageReceived(ctx, msg) ⇒ Object
Constructor Details
#initialize(&handler) ⇒ MessageHandler
Returns a new instance of MessageHandler.
27 28 29 30 |
# File 'lib/server/message_handler.rb', line 27 def initialize(&handler) super() @handler = handler end |
Instance Method Details
#channelRead0(ctx, msg) ⇒ Object
Please keep in mind that this method will be renamed to messageReceived(ChannelHandlerContext, I) in 5.0.
java_signature ‘protected abstract void channelRead0(ChannelHandlerContext ctx, I msg) throws Exception’
36 37 38 39 |
# File 'lib/server/message_handler.rb', line 36 def channelRead0(ctx, msg) log.trace "##{__method__} channel: #{ctx.channel}, message: #{msg.inspect}" (ctx, msg) end |
#handle_message(ctx, message) ⇒ Object
49 50 51 52 53 54 |
# File 'lib/server/message_handler.rb', line 49 def (ctx, ) request = .to_s.strip response = @handler.call(ctx.channel, request).to_s.chomp log.debug "##{__method__} response: #{response}" ctx.channel.writeAndFlush("#{response}\n") end |
#messageReceived(ctx, msg) ⇒ Object
41 42 43 44 45 46 47 |
# File 'lib/server/message_handler.rb', line 41 def (ctx, msg) log.trace "##{__method__} channel: #{ctx.channel}, message: #{msg.inspect}" msg&.chomp! log.info "Received message: #{msg}" return super(ctx, msg) unless respond_to?(:handle_message) && @handler&.arity == 2 (ctx, msg) end |