Class: Pgbus::QueueState
- Defined in:
- app/models/pgbus/queue_state.rb
Class Method Summary collapse
- .pause!(queue_name, reason: nil) ⇒ Object
- .paused?(queue_name) ⇒ Boolean
- .resume!(queue_name) ⇒ Object
Class Method Details
.pause!(queue_name, reason: nil) ⇒ Object
13 14 15 16 17 |
# File 'app/models/pgbus/queue_state.rb', line 13 def self.pause!(queue_name, reason: nil) record = find_or_initialize_by(queue_name: queue_name) record.update!(paused: true, paused_reason: reason, paused_at: Time.current, circuit_breaker_resume_at: nil) record end |
.paused?(queue_name) ⇒ Boolean
9 10 11 |
# File 'app/models/pgbus/queue_state.rb', line 9 def self.paused?(queue_name) where(queue_name: queue_name, paused: true).exists? end |
.resume!(queue_name) ⇒ Object
19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'app/models/pgbus/queue_state.rb', line 19 def self.resume!(queue_name) record = find_by(queue_name: queue_name) return unless record record.update!( paused: false, paused_reason: nil, paused_at: nil, circuit_breaker_trip_count: 0, circuit_breaker_resume_at: nil ) record end |