Class: RabbitRPC::RequestHandler
- Inherits:
-
Object
- Object
- RabbitRPC::RequestHandler
- Includes:
- Logging
- Defined in:
- lib/rabbit_rpc/request_handler.rb
Instance Attribute Summary collapse
-
#one_way ⇒ Object
readonly
Returns the value of attribute one_way.
Instance Method Summary collapse
- #execute ⇒ Object
-
#initialize(serialized_message) ⇒ RequestHandler
constructor
A new instance of RequestHandler.
Methods included from Logging
included, log_exception, logger
Constructor Details
#initialize(serialized_message) ⇒ RequestHandler
Returns a new instance of RequestHandler.
7 8 9 |
# File 'lib/rabbit_rpc/request_handler.rb', line 7 def initialize() @message = Message.unpack end |
Instance Attribute Details
#one_way ⇒ Object (readonly)
Returns the value of attribute one_way.
5 6 7 |
# File 'lib/rabbit_rpc/request_handler.rb', line 5 def one_way @one_way end |
Instance Method Details
#execute ⇒ Object
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
# File 'lib/rabbit_rpc/request_handler.rb', line 11 def execute parser = MessageParser.new(@message) parser.parse @one_way = parser.one_way? logger.info "Received message #{@message}" Kernel.const_get(parser.service_name).send(parser.method_name, *@message['args'] ) rescue ArgumentError => e log_exception(e) { ok: false, message: e. } rescue Exception => e log_exception(e) exception_response end |