Module: Sidekiq::Dejavu::Helper

Included in:
Manager, Middleware::Server::Scheduler
Defined in:
lib/sidekiq/dejavu/helper.rb

Instance Method Summary collapse

Instance Method Details

#next_randomized_timestamp(interval, time = Time.now) ⇒ Object



19
20
21
22
23
24
# File 'lib/sidekiq/dejavu/helper.rb', line 19

def next_randomized_timestamp(interval, time = Time.now)
  diff = CronParser.new(interval).next(time).to_f - time.to_f
  time.to_f + Random.rand(diff)
rescue ArgumentError
  time.to_f + Random.rand(interval.to_f)
end

#next_timestamp(interval, time = Time.now) ⇒ Object



13
14
15
16
17
# File 'lib/sidekiq/dejavu/helper.rb', line 13

def next_timestamp(interval, time = Time.now)
  CronParser.new(interval).next(time).to_f
rescue ArgumentError
  time.to_f + interval.to_f
end

#valid_cron?(interval) ⇒ Boolean

Returns:

  • (Boolean)


6
7
8
9
10
11
# File 'lib/sidekiq/dejavu/helper.rb', line 6

def valid_cron?(interval)
  CronParser.new(interval)
  true
rescue ArgumentError
  false
end