Sha256: a16d2523d6aa9df9e200cca0c97fc989224a5731da573e8e48951063a63dc30d
Contents?: true
Size: 1.1 KB
Versions: 6
Compression:
Stored size: 1.1 KB
Contents
# frozen_string_literal: true module GoodJob # :nodoc: class Notifier # :nodoc: # Extends the Notifier to register the process in the database. module ProcessHeartbeat extend ActiveSupport::Concern included do set_callback :listen, :after, :register_process set_callback :tick, :before, :refresh_process set_callback :unlisten, :after, :deregister_process end # Registers the current process. def register_process GoodJob::Process.with_connection(connection) do GoodJob::Process.cleanup @process = GoodJob::Process.register end end def refresh_process Rails.application.executor.wrap do GoodJob::Process.with_connection(connection) do GoodJob::Process.logger.silence do @process&.refresh_if_stale(cleanup: true) end end end end # Deregisters the current process. def deregister_process GoodJob::Process.with_connection(connection) do @process&.deregister end end end end end
Version data entries
6 entries across 6 versions & 1 rubygems