Class: SessionAuthentication::Configuration

Inherits:
Object
  • Object
show all
Defined in:
lib/session_authentication/configuration.rb

Constant Summary collapse

REQUIRED_OPTIONS =
[].freeze
DEFAULT_OPTIONS =
{
  user_model_name: "User",
  session_key: :user_id,
  active_for_authentication_proc: nil
}.freeze

Instance Method Summary collapse

Constructor Details

#initializeConfiguration

Returns a new instance of Configuration.



13
14
15
# File 'lib/session_authentication/configuration.rb', line 13

def initialize
  set_default_values
end

Instance Method Details

#[](opt_name) ⇒ Object



17
18
19
# File 'lib/session_authentication/configuration.rb', line 17

def [](opt_name)
  public_send(opt_name)
end

#user_modelObject



28
29
30
# File 'lib/session_authentication/configuration.rb', line 28

def user_model
  @user_model ||= user_model_name.constantize
end

#validate!Object



21
22
23
24
25
26
# File 'lib/session_authentication/configuration.rb', line 21

def validate!
  missing_options = REQUIRED_OPTIONS.select { |opt| self[opt].nil? }
  return if missing_options.empty?

  fail "Missing configuration options: #{missing_options.join(', ')}"
end