Class: Fme::EnterpriseBus::Jobs::BusJob
- Inherits:
-
ActiveJob::Base
- Object
- ActiveJob::Base
- Fme::EnterpriseBus::Jobs::BusJob
- Defined in:
- lib/fme/enterprise_bus/jobs/bus_job.rb
Instance Method Summary collapse
- #matching_job_hashes(message) ⇒ Object
- #matching_jobs(message) ⇒ Object
- #perform(message) ⇒ Object
- #run_in_matching_jobs(message) ⇒ Object
Instance Method Details
#matching_job_hashes(message) ⇒ Object
23 24 25 26 27 |
# File 'lib/fme/enterprise_bus/jobs/bus_job.rb', line 23 def matching_job_hashes() Jobs.registered_jobs.select do |message_pattern:, **| (.with_indifferent_access.to_a - .as_json.to_a).empty? end end |
#matching_jobs(message) ⇒ Object
17 18 19 20 21 |
# File 'lib/fme/enterprise_bus/jobs/bus_job.rb', line 17 def matching_jobs() matching_job_hashes().map do |job_klass:, **| job_klass end end |
#perform(message) ⇒ Object
7 8 9 |
# File 'lib/fme/enterprise_bus/jobs/bus_job.rb', line 7 def perform() run_in_matching_jobs end |
#run_in_matching_jobs(message) ⇒ Object
11 12 13 14 15 |
# File 'lib/fme/enterprise_bus/jobs/bus_job.rb', line 11 def run_in_matching_jobs() matching_jobs().each do |job| job.perform_later end end |