110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
|
# File 'lib/messaging/handle.rb', line 110
def define_handler_method(message_class, &blk)
handler_method_name = handler_name(message_class)
if blk.nil?
error_msg = "Handler for #{message_class.name} is not correctly defined. It must have a block."
handler_logger.error(tag: :handle) { error_msg }
raise Error, error_msg
end
send(:define_method, handler_method_name, &blk)
handler_method = instance_method(handler_method_name)
unless handler_method.arity == 1
error_msg = "Handler for #{message_class.name} is not correctly defined. It can only have a single parameter."
handler_logger.error(tag: :handle) { error_msg }
raise Error, error_msg
end
handler_method_name
end
|