Class: SafeRequestTimeout::ActiveRecordHook

Inherits:
Object
  • Object
show all
Defined in:
lib/safe_request_timeout/active_record_hook.rb

Class Method Summary collapse

Class Method Details

.add_timeout!(connection_class = nil) ⇒ void

This method returns an undefined value.

Add the timeout hook to the connection class.

Parameters:

  • connection_class (Class) (defaults to: nil)

    The class to add the timeout hook to.



10
11
12
13
14
15
16
17
# File 'lib/safe_request_timeout/active_record_hook.rb', line 10

def add_timeout!(connection_class = nil)
  connection_class ||= ::ActiveRecord::Base.connection.class
  exec_method = (connection_class.instance_methods.include?(:internal_exec_query) ? :internal_exec_query : :exec_query)

  SafeRequestTimeout::Hooks.add_timeout!(connection_class, [exec_method])

  SafeRequestTimeout::Hooks.clear_timeout!(connection_class, [:commit_db_transaction])
end