class SidekiqRepeatingJobs::Middleware::Server::RepeatingJobs

Public Instance Methods

call(*args) { || ... } click to toggle source
# File lib/sidekiq_repeating_jobs/middleware/server/repeating_jobs.rb, line 11
def call(*args)
  worker_class=eval(args[1]['class'])
  if SidekiqRepeatingJobs::Config.active?(worker_class)
    arguments=args[1]['args'].slice!(-1)
    if valid_arguments?(worker_class, arguments)
      begin
        yield
      ensure
        worker_class.perform_in(SidekiqRepeatingJobs::Config.repeat_interval(worker_class), *args[1]['args'], arguments)
        self.log_message(arguments, "scheduled in #{SidekiqRepeatingJobs::Config.repeat_interval(worker_class)} seconds")
      end
    end
  else
    yield
  end
end
log_name() click to toggle source
# File lib/sidekiq_repeating_jobs/middleware/server/repeating_jobs.rb, line 7
def log_name
  "RepeatingJobServer"
end