Class: Sidekiq::Cron::Namespace

Inherits:
Object
  • Object
show all
Defined in:
lib/sidekiq/cron/namespace.rb

Class Method Summary collapse

Class Method Details

.allObject



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# File 'lib/sidekiq/cron/namespace.rb', line 4

def self.all
  namespaces = case (available_namespaces = Sidekiq::Cron.configuration.available_namespaces)
    when NilClass then []
    when Array then available_namespaces
    when :auto
      Sidekiq.redis do |conn|
        conn.keys('cron_jobs:*').collect do |key|
          key.split(':').last
        end
      end
    else
      raise ArgumentError, "Unexpected value provided for `available_namespaces`: #{available_namespaces.inspect}"
    end

  namespaces | [Sidekiq::Cron.configuration.default_namespace]
end

.all_with_countObject



21
22
23
24
25
26
27
28
# File 'lib/sidekiq/cron/namespace.rb', line 21

def self.all_with_count
  all.map do |namespace_name|
    {
      count: count(namespace_name),
      name: namespace_name
    }
  end
end

.available_namespaces_provided?Boolean

Returns:

  • (Boolean)


36
37
38
39
40
# File 'lib/sidekiq/cron/namespace.rb', line 36

def self.available_namespaces_provided?
  available_namespaces = Sidekiq::Cron.configuration.available_namespaces

  available_namespaces != nil && available_namespaces != :auto
end

.count(name = Sidekiq::Cron.configuration.default_namespace) ⇒ Object



30
31
32
33
34
# File 'lib/sidekiq/cron/namespace.rb', line 30

def self.count(name = Sidekiq::Cron.configuration.default_namespace)
  Sidekiq.redis do |conn|
    conn.scard("cron_jobs:#{name}")
  end
end