Class: ActiveRecord::Base
- Inherits:
-
Object
- Object
- ActiveRecord::Base
- Defined in:
- lib/delayed_job_groups/active_record_groups.rb
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
.has_job_groups? ⇒ Boolean
7 8 9 |
# File 'lib/delayed_job_groups/active_record_groups.rb', line 7 def has_job_groups? !!@lock_group_factory end |
.job_group(&block) ⇒ Object
3 4 5 |
# File 'lib/delayed_job_groups/active_record_groups.rb', line 3 def job_group(&block) @lock_group_factory = block end |
.lock_group(payload) ⇒ Object
11 12 13 |
# File 'lib/delayed_job_groups/active_record_groups.rb', line 11 def lock_group(payload) @lock_group_factory.call(payload) end |
Instance Method Details
#enqueue(job) ⇒ Object
16 17 18 19 20 21 22 |
# File 'lib/delayed_job_groups/active_record_groups.rb', line 16 def enqueue(job) target = job.payload_object.class == ::Delayed::PerformableMethod ? job.payload_object.object : job.payload_object if target.class.has_job_groups? job.lock_group = target.class.lock_group(target) job.save end end |