Module: Twingly::URL
- Defined in:
- lib/version.rb,
lib/twingly/url.rb,
lib/twingly/url/hasher.rb,
lib/twingly/url/utilities.rb,
lib/twingly/url/normalizer.rb
Defined Under Namespace
Modules: Hasher, Normalizer, Utilities
Classes: UrlObject
Constant Summary
collapse
- VERSION =
'1.3.4'
Class Method Summary
collapse
Class Method Details
.extract_url_and_domain(potential_url) ⇒ Object
23
24
25
26
27
28
29
30
|
# File 'lib/twingly/url.rb', line 23
def extract_url_and_domain(potential_url)
url = Addressable::URI.heuristic_parse(potential_url)
domain = PublicSuffix.parse(url.host) if url
[url, domain]
rescue PublicSuffix::DomainInvalid, Addressable::URI::InvalidURIError
[]
end
|
.parse(potential_url) ⇒ Object
18
19
20
21
|
# File 'lib/twingly/url.rb', line 18
def parse(potential_url)
url, domain = extract_url_and_domain(potential_url)
UrlObject.new(url, domain)
end
|
.validate(potential_url) ⇒ Object
32
33
34
|
# File 'lib/twingly/url.rb', line 32
def validate(potential_url)
parse(potential_url).valid?
end
|