2017-05-05 10:23:01 +10:00
|
|
|
# frozen_string_literal: true
|
|
|
|
require 'sidekiq-scheduler'
|
|
|
|
|
|
|
|
class Scheduler::SubscriptionsScheduler
|
|
|
|
include Sidekiq::Worker
|
|
|
|
|
|
|
|
def perform
|
2017-05-06 21:05:03 +10:00
|
|
|
logger.info 'Queueing PuSH re-subscriptions'
|
2017-05-05 10:23:01 +10:00
|
|
|
|
2017-05-06 21:05:03 +10:00
|
|
|
expiring_accounts.pluck(:id).each do |id|
|
2017-05-05 10:23:01 +10:00
|
|
|
Pubsubhubbub::SubscribeWorker.perform_async(id)
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
private
|
|
|
|
|
|
|
|
def expiring_accounts
|
|
|
|
Account.expiring(1.day.from_now).partitioned
|
|
|
|
end
|
|
|
|
end
|