Class: Julewire::ActiveJob::Subscribers::Event
- Inherits:
-
Object
- Object
- Julewire::ActiveJob::Subscribers::Event
- Extended by:
- Core::Integration::SubscriberInstall
- Includes:
- Core::Integration::EventSubscriber
- Defined in:
- lib/julewire/active_job/subscribers/event.rb
Constant Summary collapse
- STRUCTURED_EVENT_FILE =
"active_job/structured_event_subscriber"- ERROR_EVENTS =
%w[ active_job.retry_stopped active_job.discarded ].freeze
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
.install!(configuration, event_reporter: nil) ⇒ Object
20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/julewire/active_job/subscribers/event.rb', line 20 def install!(configuration, event_reporter: nil) return reset! unless configuration.structured_events? Core::Integration::Lifecycle.require_optional(STRUCTURED_EVENT_FILE) reporter = event_reporter || Julewire::RailsSupport::EventReporter.default return unless Julewire::RailsSupport::EventReporter.subscribable?(reporter) install_subscriber(configuration, enabled: true) do |subscriber| Julewire::RailsSupport::EventReporter.subscribe(reporter, subscriber) { subscriber.accept?(it) } end end |
Instance Method Details
#accept?(event) ⇒ Boolean
33 34 35 36 37 38 39 40 41 |
# File 'lib/julewire/active_job/subscribers/event.rb', line 33 def accept?(event) return false unless @configuration.structured_events? prefixes = @configuration.event_prefixes return true if prefixes.nil? name = event[:name].to_s Array(prefixes).any? { name.start_with?(it.to_s) } end |