Class: SidekiqScheduler::SidekiqAdapter
- Inherits:
-
Object
- Object
- SidekiqScheduler::SidekiqAdapter
- Defined in:
- lib/sidekiq-scheduler/sidekiq_adapter.rb
Constant Summary collapse
- SIDEKIQ_GTE_7_3_0 =
Gem::Version.new(Sidekiq::VERSION) >= Gem::Version.new('7.3.0')
- SIDEKIQ_GTE_8_0_0 =
Gem::Version.new(Sidekiq::VERSION) >= Gem::Version.new('8.0.0')
Class Method Summary collapse
- .fetch_scheduler_config_from_sidekiq(sidekiq_config) ⇒ Object
- .redis_key_exists?(key_name) ⇒ Boolean
- .redis_zrangebyscore(key, from, to) ⇒ Object
- .sidekiq_queues(sidekiq_config) ⇒ Object
- .start_schedule_manager(sidekiq_config:, schedule_manager:) ⇒ Object
- .stop_schedule_manager(sidekiq_config:) ⇒ Object
Class Method Details
.fetch_scheduler_config_from_sidekiq(sidekiq_config) ⇒ Object
6 7 8 9 10 |
# File 'lib/sidekiq-scheduler/sidekiq_adapter.rb', line 6 def self.fetch_scheduler_config_from_sidekiq(sidekiq_config) return {} if sidekiq_config.nil? sidekiq_config.fetch(:scheduler, {}) end |
.redis_key_exists?(key_name) ⇒ Boolean
29 30 31 32 33 |
# File 'lib/sidekiq-scheduler/sidekiq_adapter.rb', line 29 def self.redis_key_exists?(key_name) Sidekiq.redis do |r| r.exists(key_name) > 0 end end |
.redis_zrangebyscore(key, from, to) ⇒ Object
35 36 37 38 39 |
# File 'lib/sidekiq-scheduler/sidekiq_adapter.rb', line 35 def self.redis_zrangebyscore(key, from, to) Sidekiq.redis do |r| r.zrange(key, from, to, "BYSCORE") end end |
.sidekiq_queues(sidekiq_config) ⇒ Object
21 22 23 24 25 26 27 |
# File 'lib/sidekiq-scheduler/sidekiq_adapter.rb', line 21 def self.sidekiq_queues(sidekiq_config) if sidekiq_config.nil? || (sidekiq_config.respond_to?(:empty?) && sidekiq_config.empty?) Sidekiq.instance_variable_get(:@config).queues.map(&:to_s) else sidekiq_config.queues.map(&:to_s) end end |
.start_schedule_manager(sidekiq_config:, schedule_manager:) ⇒ Object
12 13 14 15 |
# File 'lib/sidekiq-scheduler/sidekiq_adapter.rb', line 12 def self.start_schedule_manager(sidekiq_config:, schedule_manager:) sidekiq_config[:schedule_manager] = schedule_manager sidekiq_config[:schedule_manager].start end |
.stop_schedule_manager(sidekiq_config:) ⇒ Object
17 18 19 |
# File 'lib/sidekiq-scheduler/sidekiq_adapter.rb', line 17 def self.stop_schedule_manager(sidekiq_config:) sidekiq_config[:schedule_manager].stop end |