5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
# File 'lib/arjdbc/postgresql/adapter_hash_config.rb', line 5
def build_connection_config(config)
config = config.deep_dup
load_jdbc_driver
config[:driver] ||= database_driver_name
host = (config[:host] ||= config[:hostaddr] || ENV["PGHOST"] || "localhost")
port = (config[:port] ||= ENV["PGPORT"] || 5432)
database = config[:database] || config[:dbname] || ENV["PGDATABASE"]
app = config[:application_name] || config[:appname] || config[:application]
config[:url] ||= if app
"jdbc:postgresql://#{host}:#{port}/#{database}?ApplicationName=#{app}"
else
"jdbc:postgresql://#{host}:#{port}/#{database}"
end
config[:url] << config[:pg_params] if config[:pg_params]
config[:username] ||= config[:user] || ENV["PGUSER"] || ENV_JAVA["user.name"]
config[:password] ||= ENV["PGPASSWORD"] unless config.key?(:password)
config[:properties] = build_properties(config)
config
end
|