Module: ArJdbc::MysqlConfig

Included in:
ActiveRecord::ConnectionAdapters::Mysql2Adapter
Defined in:
lib/arjdbc/mysql/adapter_hash_config.rb

Instance Method Summary collapse

Instance Method Details

#build_connection_config(config) ⇒ Object



5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# File 'lib/arjdbc/mysql/adapter_hash_config.rb', line 5

def build_connection_config(config)
  config = config.deep_dup

  load_jdbc_driver

  # don't set driver if it's explicitly set to false
  # allow Java's service discovery mechanism (with connector/j 8.0)
  config[:driver] ||= database_driver_name if config[:driver] != false

  host = (config[:host] ||= "localhost")
  port = (config[:port] ||= 3306)

  # jdbc:mysql://[host][,failoverhost...][:port]/[database]
  # - alternate fail-over syntax: [host:port],[host:port]/[database]
  config[:url] ||= "jdbc:mysql://#{host}:#{port}/#{config[:database]}"

  config[:properties] = build_properties(config)

  config
end