class Berkshelf::SourceURI

def parse(uri)

Returns:
  • (Berkshelf::SourceURI) -

Raises:
  • (Berkshelf::InvalidSourceURI) -

Parameters:
  • uri (String, Addressable::URI, #to_str) --
def parse(uri)
  parsed_uri = super(uri)
  parsed_uri.send(:validate)
  parsed_uri
rescue TypeError, ArgumentError => ex
  raise InvalidSourceURI.new(uri, ex)
end

def validate

Raises:
  • (Berkshelf::InvalidSourceURI) -
def validate
  super
  unless VALID_SCHEMES.include?(scheme)
    raise InvalidSourceURI.new(self, "invalid URI scheme '#{scheme}'. Valid schemes: #{VALID_SCHEMES}")
  end
rescue Addressable::URI::InvalidURIError => ex
  raise InvalidSourceURI.new(self, ex)
end