Class: RackCAS::Configuration

Inherits:
Object
  • Object
show all
Defined in:
lib/rack-cas/configuration.rb

Constant Summary collapse

SETTINGS =
[:fake, :server_url, :session_store, :exclude_path, :exclude_paths, :extra_attributes_filter, :verify_ssl_cert, :renew, :use_saml_validation]

Instance Method Summary collapse

Constructor Details

#initializeConfiguration

Returns a new instance of Configuration.



13
14
15
# File 'lib/rack-cas/configuration.rb', line 13

def initialize
  @verify_ssl_cert = true
end

Instance Method Details

#extra_attributes_filterObject



17
18
19
# File 'lib/rack-cas/configuration.rb', line 17

def extra_attributes_filter
  Array(@extra_attributes_filter)
end

#update(settings_hash) ⇒ Object

Raises:

  • (ArgumentError)


21
22
23
24
25
26
27
28
29
30
31
32
33
34
# File 'lib/rack-cas/configuration.rb', line 21

def update(settings_hash)
  settings_hash.each do |setting, value|
    unless SETTINGS.include? setting.to_sym
      raise ArgumentError, "invalid setting: #{setting}"
    end

    self.public_send "#{setting}=", value
  end

  raise ArgumentError, 'server_url is required' unless server_url?
  if session_store? && !session_store.respond_to?(:destroy_session_by_cas_ticket)
    raise ArgumentError, 'session_store does not support single-sign-out'
  end
end