class OmniAuth::Strategies::Uoc::Configuration

Constants

DEFAULT_SESSION_URL
IS_NOT_URL_ERROR_MESSAGE

Attributes

session_url[R]

Public Class Methods

new(params) click to toggle source
# File lib/omniauth/strategies/uoc/configuration.rb, line 11
def initialize(params)
  parse_params params
end

Private Instance Methods

parse_params(options) click to toggle source
# File lib/omniauth/strategies/uoc/configuration.rb, line 18
def parse_params(options)
  unless options.include?(:uoc_server_url)
    raise ArgumentError.new('Either :uoc_server_url MUST be provided')
  end

  @session_url = options[:uoc_session_url] || DEFAULT_SESSION_URL % options[:uoc_server_url]

  validate_is_url 'session URL', @session_url
end
validate_is_url(name, possibly_a_url) click to toggle source
# File lib/omniauth/strategies/uoc/configuration.rb, line 28
def validate_is_url(name, possibly_a_url)
  url = URI.parse(possibly_a_url) rescue nil
  raise ArgumentError.new(IS_NOT_URL_ERROR_MESSAGE % name) unless url.kind_of?(URI::HTTP)
end