Class: BrandLogo::Strategies::Scraping::UrlNormalizer

Inherits:
Object
  • Object
show all
Extended by:
T::Sig
Defined in:
lib/brand_logo/strategies/scraping/url_normalizer.rb

Overview

Resolves favicon href values into absolute URLs. Pure string manipulation — no network calls (SRP). HTTP verification of the default favicon is handled by DefaultFaviconChecker.

Instance Method Summary collapse

Constructor Details

#initialize(base_url) ⇒ UrlNormalizer

Returns a new instance of UrlNormalizer.



16
17
18
# File 'lib/brand_logo/strategies/scraping/url_normalizer.rb', line 16

def initialize(base_url)
  @base_url = T.let(base_url, String)
end

Instance Method Details

#default_favicon_urlObject



30
31
32
# File 'lib/brand_logo/strategies/scraping/url_normalizer.rb', line 30

def default_favicon_url
  "#{@base_url}#{Config::DEFAULT_FAVICON_PATH}"
end

#normalize(href) ⇒ Object



22
23
24
25
26
# File 'lib/brand_logo/strategies/scraping/url_normalizer.rb', line 22

def normalize(href)
  return href if absolute_url?(href)

  join_with_base_url(href)
end