Module: ColdStorage::Jobs
- Defined in:
- lib/cold_storage/jobs.rb
Overview
ActiveJob entry points.
The classes are built on first use (or when ActiveJob loads) so that the
gem does not force ActiveJob on applications that do not use it, and so
that config.job_parent_class is honoured.
ColdStorage::ArchiveModelJob.perform_later('Payroll')
ColdStorage::ArchiveAllJob.perform_later
Constant Summary collapse
- JOBS =
%i[ArchiveModelJob ArchiveAllJob].freeze
Class Method Summary collapse
-
.define! ⇒ Boolean
Whether the job classes exist now.
Class Method Details
.define! ⇒ Boolean
Returns whether the job classes exist now.
17 18 19 20 21 22 23 24 25 |
# File 'lib/cold_storage/jobs.rb', line 17 def define! return false unless defined?(ActiveJob::Base) return true if ColdStorage.const_defined?(:ArchiveModelJob, false) parent = ColdStorage.config.job_parent_class.constantize ColdStorage.const_set(:ArchiveModelJob, build_model_job(parent)) ColdStorage.const_set(:ArchiveAllJob, build_all_job(parent)) true end |