Method: ActiveRecord::DatabaseConfigurations::ConnectionUrlResolver#initialize

Defined in:
activerecord/lib/active_record/database_configurations/connection_url_resolver.rb

#initialize(url) ⇒ ConnectionUrlResolver

Example

url = "postgresql://foo:bar@localhost:9000/foo_test?pool=5&timeout=3000"
ConnectionUrlResolver.new(url).to_hash
# => {
  adapter:  "postgresql",
  host:     "localhost",
  port:     9000,
  database: "foo_test",
  username: "foo",
  password: "bar",
  pool:     "5",
  timeout:  "3000"
}


25
26
27
28
29
30
31
32
33
34
35
# File 'activerecord/lib/active_record/database_configurations/connection_url_resolver.rb', line 25

def initialize(url)
  raise "Database URL cannot be empty" if url.blank?
  @uri     = uri_parser.parse(url)
  @adapter = resolved_adapter

  if @uri.opaque
    @uri.opaque, @query = @uri.opaque.split("?", 2)
  else
    @query = @uri.query
  end
end