Permalink
Browse files

Wrap everything in class << self.

  • Loading branch information...
1 parent 78afe68 commit 226ea0e9e817a2e449d989d925c36cf6a4cfd67b @josevalim josevalim committed Dec 3, 2010
Showing with 37 additions and 42 deletions.
  1. +37 −42 actionpack/lib/action_dispatch/http/url.rb
@@ -4,55 +4,54 @@ module URL
mattr_accessor :tld_length
self.tld_length = 1
- def self.extract_domain(host, tld_length = @@tld_length)
- return nil unless named_host?(host)
-
- host.split('.').last(1 + tld_length).join('.')
- end
-
- def self.extract_subdomains(host, tld_length = @@tld_length)
- return [] unless named_host?(host)
- parts = host.split('.')
- parts[0..-(tld_length+2)]
- end
-
- def self.extract_subdomain(host, tld_length = @@tld_length)
- extract_subdomains(host, tld_length).join('.')
- end
+ class << self
+ def extract_domain(host, tld_length = @@tld_length)
+ return nil unless named_host?(host)
+ host.split('.').last(1 + tld_length).join('.')
+ end
- def self.named_host?(host)
- !(host.nil? || /\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/.match(host))
- end
+ def extract_subdomains(host, tld_length = @@tld_length)
+ return [] unless named_host?(host)
+ parts = host.split('.')
+ parts[0..-(tld_length+2)]
+ end
- def self.url_for(options = {})
- unless options[:host].present? || options[:only_path].present?
- raise ArgumentError, 'Missing host to link to! Please provide the :host parameter, set default_url_options[:host], or set :only_path to true'
+ def extract_subdomain(host, tld_length = @@tld_length)
+ extract_subdomains(host, tld_length).join('.')
end
- rewritten_url = ""
+ def url_for(options = {})
+ unless options[:host].present? || options[:only_path].present?
+ raise ArgumentError, 'Missing host to link to! Please provide the :host parameter, set default_url_options[:host], or set :only_path to true'
+ end
- unless options[:only_path]
- rewritten_url << (options[:protocol] || "http")
- rewritten_url << "://" unless rewritten_url.match("://")
- rewritten_url << rewrite_authentication(options)
- rewritten_url << host_or_subdomain_and_domain(options)
- rewritten_url << ":#{options.delete(:port)}" if options[:port]
- end
+ rewritten_url = ""
- path = options.delete(:path) || ''
+ unless options[:only_path]
+ rewritten_url << (options[:protocol] || "http")
+ rewritten_url << "://" unless rewritten_url.match("://")
+ rewritten_url << rewrite_authentication(options)
+ rewritten_url << host_or_subdomain_and_domain(options)
+ rewritten_url << ":#{options.delete(:port)}" if options[:port]
+ end
- params = options[:params] || {}
- params.reject! {|k,v| !v }
+ path = options.delete(:path) || ''
- rewritten_url << (options[:trailing_slash] ? path.sub(/\?|\z/) { "/" + $& } : path)
- rewritten_url << "?#{params.to_query}" unless params.empty?
- rewritten_url << "##{Rack::Mount::Utils.escape_uri(options[:anchor].to_param.to_s)}" if options[:anchor]
- rewritten_url
- end
+ params = options[:params] || {}
+ params.reject! {|k,v| !v }
+
+ rewritten_url << (options[:trailing_slash] ? path.sub(/\?|\z/) { "/" + $& } : path)
+ rewritten_url << "?#{params.to_query}" unless params.empty?
+ rewritten_url << "##{Rack::Mount::Utils.escape_uri(options[:anchor].to_param.to_s)}" if options[:anchor]
+ rewritten_url
+ end
- class << self
private
+ def named_host?(host)
+ !(host.nil? || /\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/.match(host))
+ end
+
def rewrite_authentication(options)
if options[:user] && options[:password]
"#{Rack::Utils.escape(options[:user])}:#{Rack::Utils.escape(options[:password])}@"
@@ -72,11 +71,8 @@ def host_or_subdomain_and_domain(options)
host << (options[:domain] || extract_domain(options[:host], tld_length))
host
end
-
end
-
-
# Returns the complete URL used for this request.
def url
protocol + host_with_port + fullpath
@@ -168,7 +164,6 @@ def subdomains(tld_length = @@tld_length)
def subdomain(tld_length = @@tld_length)
subdomains(tld_length)
end
-
end
end
end

0 comments on commit 226ea0e

Please sign in to comment.