Module: Julewire::Rails::LifecycleHooks

Defined in:
lib/julewire/rails/lifecycle_hooks.rb

Class Method Summary collapse

Class Method Details

.after_fork!Object



27
28
29
30
# File 'lib/julewire/rails/lifecycle_hooks.rb', line 27

def after_fork!
  RequestSummaryTimeoutScheduler.after_fork!
  RequestErrorOwnership.clear
end

.drain!(timeout:) ⇒ Object



21
22
23
24
25
# File 'lib/julewire/rails/lifecycle_hooks.rb', line 21

def drain!(timeout:)
  Julewire.flush(timeout: timeout)
ensure
  Julewire.close(timeout: timeout)
end

.install!(configuration, registrar: Kernel, fork_tracker: active_support_fork_tracker) ⇒ Object



11
12
13
14
15
16
17
18
19
# File 'lib/julewire/rails/lifecycle_hooks.rb', line 11

def install!(configuration, registrar: Kernel, fork_tracker: active_support_fork_tracker)
  return unless configuration.lifecycle_hooks?

  @mutex.synchronize do
    install_at_exit!(registrar, configuration)
    register_after_fork!
    install_fork_tracker!(fork_tracker)
  end
end