Class: DispatchRider::ScheduledJob
- Inherits:
-
ActiveRecord::Base
- Object
- ActiveRecord::Base
- DispatchRider::ScheduledJob
- Defined in:
- lib/dispatch-rider/scheduled_job.rb
Defined Under Namespace
Modules: Migration
Class Method Summary collapse
-
.publish_due_jobs(every: nil) ⇒ Object
@example: DispatchRider::ScheduledJob.publish_due_jobs every 1.minute.
- .publisher ⇒ Object
Instance Method Summary collapse
Class Method Details
.publish_due_jobs(every: nil) ⇒ Object
@example: DispatchRider::ScheduledJob.publish_due_jobs every 1.minute
19 20 21 22 23 24 25 26 |
# File 'lib/dispatch-rider/scheduled_job.rb', line 19 def publish_due_jobs(every: nil) loop { claim_stub = get_new_claim_stub due.unclaimed.update_all claim_stub due.claimed_by(claim_stub[:claim_id]).find_each(&:publish) every ? sleep(every) : break # until the next loop } end |
Instance Method Details
#publish ⇒ Object
47 48 49 50 51 |
# File 'lib/dispatch-rider/scheduled_job.rb', line 47 def publish publisher.publish(destinations: destinations, message: ) destroy # once published end |