Class: Nous::UrlResolver
Defined Under Namespace
Classes: ResolutionError
Instance Method Summary collapse
- #call ⇒ Object
-
#initialize(base_url:, href:) ⇒ UrlResolver
constructor
A new instance of UrlResolver.
Methods inherited from Command
Constructor Details
#initialize(base_url:, href:) ⇒ UrlResolver
Returns a new instance of UrlResolver.
9 10 11 12 |
# File 'lib/nous/url_resolver.rb', line 9 def initialize(base_url:, href:) @base_uri = Addressable::URI.parse(base_url.to_s) @href = href.to_s.strip end |
Instance Method Details
#call ⇒ Object
14 15 16 17 18 19 |
# File 'lib/nous/url_resolver.rb', line 14 def call joined = base_uri.join(href) success(payload: Url.new(joined)) rescue Addressable::URI::InvalidURIError => e failure(ResolutionError.new("cannot resolve #{href.inspect}: #{e.}")) end |