Module: Booth::Core::Cooldowns::Strategies::Result

Defined in:
lib/booth/core/cooldowns/strategies/result.rb

Overview

All strategies quack the same way. They respond an immutable Tron Data object with additional information.

Class Method Summary collapse

Class Method Details

.failure(number_of_incidents:, public_message:, cooldown_at:, attempts_left:) ⇒ Object



10
11
12
13
14
15
# File 'lib/booth/core/cooldowns/strategies/result.rb', line 10

def self.failure(number_of_incidents:, public_message:, cooldown_at:, attempts_left:)
  Tron.failure :hot, public_message:,
                     cooldown_at:,
                     attempts_left:,
                     number_of_incidents:
end

.success(public_message:, number_of_incidents:, attempts_left:) ⇒ Object



17
18
19
20
21
22
# File 'lib/booth/core/cooldowns/strategies/result.rb', line 17

def self.success(public_message:, number_of_incidents:, attempts_left:)
  Tron.success :cool, number_of_incidents:,
                      cooldown_at: nil,
                      public_message:,
                      attempts_left:
end