class Gem::UriFormatter
The UriFormatter handles URIs from user-input and escaping.
uf = Gem::UriFormatter.new 'example.com' p uf.normalize #=> 'http://example.com'
Attributes
The URI to be formatted.
Public Class Methods
Source
# File lib/rubygems/uri_formatter.rb, line 19 def initialize(uri) require "cgi/escape" require "cgi/util" unless defined?(CGI::EscapeExt) @uri = uri end
Creates a new URI formatter for uri.
Public Instance Methods
Source
# File lib/rubygems/uri_formatter.rb, line 29 def escape return unless @uri CGI.escape @uri end
Escapes the uri for use as a CGI parameter
Source
# File lib/rubygems/uri_formatter.rb, line 37 def normalize /^(https?|ftp|file):/i.match?(@uri) ? @uri : "http://#{@uri}" end
Normalize the URI by adding “http://” if it is missing.
Source
# File lib/rubygems/uri_formatter.rb, line 44 def unescape return unless @uri CGI.unescape @uri end
Unescapes the uri which came from a CGI parameter