Class: GorgService::Consumer::MessageHandler::Base
- Inherits:
-
Object
- Object
- GorgService::Consumer::MessageHandler::Base
show all
- Defined in:
- lib/gorg_service/consumer/message_handler/base.rb
Class Method Summary
collapse
Instance Method Summary
collapse
Constructor Details
#initialize(message) ⇒ Base
Returns a new instance of Base.
Class Method Details
.handle_error(*errorClasses, &block) ⇒ Object
.listen_to(routing_key) ⇒ Object
92
93
94
|
# File 'lib/gorg_service/consumer/message_handler/base.rb', line 92
def listen_to(routing_key)
MessageRouter.register_route(routing_key, self)
end
|
.raise_hardfail(error_message, message: nil, error: nil, data: nil) ⇒ Object
64
65
66
67
68
69
70
71
72
73
74
|
# File 'lib/gorg_service/consumer/message_handler/base.rb', line 64
def raise_hardfail(error_message,message:nil, error: nil, data: nil)
if message
reply_to(message,{
status: 'hardfail',
error_message: error_message,
debug_message: error&&error.inspect,
error_data: data
})
end
raise HardfailError.new(error_message, error)
end
|
.raise_softfail(error_message, message: nil, error: nil, data: nil) ⇒ Object
76
77
78
79
80
81
82
83
84
85
86
|
# File 'lib/gorg_service/consumer/message_handler/base.rb', line 76
def raise_softfail(error_message,message:nil, error: nil, data: nil)
if message
reply_to(message,{
status: 'softfail',
error_message: error_message,
debug_message: error&&error.inspect,
error_data: data
})
end
raise SoftfailError.new(error_message, error)
end
|
.reply_to(message, data) ⇒ Object
49
50
51
52
53
54
55
56
57
58
59
60
61
62
|
# File 'lib/gorg_service/consumer/message_handler/base.rb', line 49
def reply_to(message,data)
if message.expect_reply?
reply=GorgService::Message.new(
event: message.reply_routing_key,
data: data,
correlation_id: message.id,
type: "reply"
)
replier=GorgService::Producer.new
replier.publish_message(reply,exchange: message.reply_to)
end
end
|
.reset_listen_to! ⇒ Object
Instance Method Details
#message ⇒ Object
Also known as:
msg
30
31
32
|
# File 'lib/gorg_service/consumer/message_handler/base.rb', line 30
def message
@message
end
|
#process ⇒ Object
26
27
28
|
# File 'lib/gorg_service/consumer/message_handler/base.rb', line 26
def process
GorgService.logger.warn "WARNING : You must define your MessageHandler behavior in #process"
end
|
#raise_hardfail(error_message, error: nil, data: nil) ⇒ Object
39
40
41
|
# File 'lib/gorg_service/consumer/message_handler/base.rb', line 39
def raise_hardfail(error_message, error: nil, data: nil)
self.class.raise_hardfail(error_message, error: error, message:message, data:data)
end
|
#raise_softfail(error_message, error: nil, data: nil) ⇒ Object
43
44
45
|
# File 'lib/gorg_service/consumer/message_handler/base.rb', line 43
def raise_softfail(error_message, error: nil, data: nil)
self.class.raise_softfail(error_message, error: error, message:message, data:data)
end
|
#reply_with(data) ⇒ Object
35
36
37
|
# File 'lib/gorg_service/consumer/message_handler/base.rb', line 35
def reply_with(data)
self.class.reply_to(message, data)
end
|
#validate ⇒ Object
22
23
24
|
# File 'lib/gorg_service/consumer/message_handler/base.rb', line 22
def validate
GorgService.logger.warn "WARNING : No message schema validation in #{self.class.name}, implement it in #validate(message) "
end
|