Class: EventPeople::Listener
- Inherits:
-
Object
- Object
- EventPeople::Listener
- Defined in:
- lib/event_people/listener.rb
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
.on(event_name, max_attempts: nil, delay_strategy: nil, dlq_name: nil, &block) ⇒ Object
5 6 7 |
# File 'lib/event_people/listener.rb', line 5 def self.on(event_name, max_attempts: nil, delay_strategy: nil, dlq_name: nil, &block) new.on(event_name, max_attempts: max_attempts, delay_strategy: delay_strategy, dlq_name: dlq_name, &block) end |
Instance Method Details
#on(event_name, max_attempts: nil, delay_strategy: nil, dlq_name: nil, &block) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 |
# File 'lib/event_people/listener.rb', line 9 def on(event_name, max_attempts: nil, delay_strategy: nil, dlq_name: nil, &block) raise(MissingAttributeError, 'Event name must be present') unless event_name&.size&.positive? event_name = consumed_event_name(event_name) retry_config = EventPeople::Config.get_retry_config retry_config[:max_attempts] = max_attempts unless max_attempts.nil? retry_config[:delay_strategy] = delay_strategy unless delay_strategy.nil? retry_config[:dlq_name] = dlq_name unless dlq_name.nil? EventPeople::Config.broker.consume(event_name, retry_config: retry_config, &block) end |