Module: Maestrano::Connector::Rails::Concerns::SynchronizationJob::ClassMethods
- Defined in:
- app/jobs/maestrano/connector/rails/concerns/synchronization_job.rb
Instance Method Summary collapse
- #enqueued?(organization_id) ⇒ Boolean
- #find_job(organization_id) ⇒ Object
- #find_running_job(organization_id) ⇒ Object
Instance Method Details
#enqueued?(organization_id) ⇒ Boolean
9 10 11 |
# File 'app/jobs/maestrano/connector/rails/concerns/synchronization_job.rb', line 9 def enqueued?(organization_id) Maestrano::Connector::Rails::SynchronizationJob.find_job(organization_id).present? || Maestrano::Connector::Rails::SynchronizationJob.find_running_job(organization_id).present? end |
#find_job(organization_id) ⇒ Object
13 14 15 16 17 18 19 20 21 22 23 |
# File 'app/jobs/maestrano/connector/rails/concerns/synchronization_job.rb', line 13 def find_job(organization_id) queue = Sidekiq::Queue.new(:default) queue.find do |job| job_organization_id = begin job.item['args'][0]['arguments'].first rescue false end organization_id == job_organization_id end end |
#find_running_job(organization_id) ⇒ Object
25 26 27 28 29 30 31 32 33 34 35 36 |
# File 'app/jobs/maestrano/connector/rails/concerns/synchronization_job.rb', line 25 def find_running_job(organization_id) Sidekiq::Workers.new.find do |_, _, work| job_organization_id = begin work['payload']['args'][0]['arguments'].first rescue false end work['queue'] == 'default' && organization_id == job_organization_id end rescue nil end |