Class: ActiveRecord::ConnectionAdapters::ConnectionHandler

Inherits:
Object
  • Object
show all
Defined in:
lib/active_record/connection_adapters/pool_class.rb

Direct Known Subclasses

Bogacs::ConnectionHandler

Constant Summary collapse

@@connection_pool_class =
ConnectionAdapters::ConnectionPool

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.connection_pool_class=(klass) ⇒ Object



18
# File 'lib/active_record/connection_adapters/pool_class.rb', line 18

def self.connection_pool_class=(klass); @@connection_pool_class = klass end

Instance Method Details

#connection_pool_classObject



17
# File 'lib/active_record/connection_adapters/pool_class.rb', line 17

def connection_pool_class; @@connection_pool_class end

#establish_connection(name, spec) ⇒ Object

2.3/3.0/3.1



53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
# File 'lib/active_record/connection_adapters/pool_class.rb', line 53

def establish_connection(config)
  resolver = ConnectionSpecification::Resolver.new(Base.configurations)
  spec = resolver.spec(config)

  remove_connection(spec.name)

  message_bus = ActiveSupport::Notifications.instrumenter
  payload = {
    connection_id: object_id
  }
  if spec
    payload[:spec_name] = spec.name
    payload[:config] = spec.config
  end

  message_bus.instrument("!connection.active_record", payload) do
    owner_to_pool[spec.name] = connection_pool_class.new(spec) # changed
  end

  owner_to_pool[spec.name]
end