Class: Bulbasaur::NormalizeURL

Inherits:
Object
  • Object
show all
Defined in:
lib/bulbasaur/utils/normalize_url.rb

Instance Method Summary collapse

Constructor Details

#initialize(base_url, context_url) ⇒ NormalizeURL

Returns a new instance of NormalizeURL.



3
4
5
6
# File 'lib/bulbasaur/utils/normalize_url.rb', line 3

def initialize(base_url, context_url)
  @base_url = clean_url(base_url)
  @context_url = context_url
end

Instance Method Details

#callObject



8
9
10
11
12
13
# File 'lib/bulbasaur/utils/normalize_url.rb', line 8

def call
  url = (@context_url =~ /^https?:\/\//) ? @context_url : URI::join(@base_url, @context_url).to_s
  URI::encode URI::decode url
rescue
  raise ArgumentError, "Unable to normalize URL. Params: [base_url: #{@base_url}, context_url: #{@context_url}]."
end