1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
ruby--ruby/lib/rubygems/uri_formatter.rb
drbrain 47f0248b08 * lib/rubygems: Import RubyGems 2.1
* test/rubygems:  Ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41873 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-09 23:21:36 +00:00

39 lines
530 B
Ruby

require 'uri'
class Gem::UriFormatter
attr_reader :uri
def initialize uri
@uri = uri
end
def escape
return unless @uri
escaper.escape @uri
end
##
# Normalize the URI by adding "http://" if it is missing.
def normalize
(@uri =~ /^(https?|ftp|file):/i) ? @uri : "http://#{@uri}"
end
def unescape
return unless @uri
escaper.unescape @uri
end
private
def escaper
@uri_parser ||=
begin
URI::Parser.new
rescue NameError
URI
end
end
end