Class: SidekiqScheduler::SidekiqAdapter

Inherits:
Object
  • Object
show all
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

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

Returns:

  • (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