Module: Travis::Config::Heroku::Url

Defined in:
lib/travis/config/heroku/url.rb

Defined Under Namespace

Classes: Amqp, Amqps, Base

Constant Summary collapse

Generic =
Class.new(Base)
Postgres =
Class.new(Base)
Redis =
Class.new(Base)
Mock =

e.g. mock:// used for Sequel::Mock

Class.new(Base)

Class Method Summary collapse

Class Method Details

.camelize(string) ⇒ Object



46
47
48
# File 'lib/travis/config/heroku/url.rb', line 46

def camelize(string)
  string.to_s.split('_').collect(&:capitalize).join
end

.parse(url) ⇒ Object



39
40
41
42
43
44
# File 'lib/travis/config/heroku/url.rb', line 39

def parse(url)
  return Generic.new if url.nil? || url.empty?
  uri   = URI.parse(url)
  const = const_get(camelize(uri.scheme))
  const.new(uri.user, uri.password, uri.host, uri.port, uri.path[1..-1])
end