Class: Rhales::Adapters::AuthenticatedSession

Inherits:
BaseSession
  • Object
show all
Defined in:
lib/rhales/adapters/base_session.rb

Overview

Example authenticated session implementation

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(session_data = {}) ⇒ AuthenticatedSession

Returns a new instance of AuthenticatedSession.



61
62
63
# File 'lib/rhales/adapters/base_session.rb', line 61

def initialize(session_data = {})
  @session_data = session_data
end

Instance Attribute Details

#session_dataObject (readonly)

Returns the value of attribute session_data.



59
60
61
# File 'lib/rhales/adapters/base_session.rb', line 59

def session_data
  @session_data
end

Instance Method Details

#authenticated?Boolean

Returns:

  • (Boolean)


65
66
67
# File 'lib/rhales/adapters/base_session.rb', line 65

def authenticated?
  !@session_data.empty? && valid?
end

#created_atObject



84
85
86
# File 'lib/rhales/adapters/base_session.rb', line 84

def created_at
  @session_data[:created_at] || @session_data['created_at']
end

#dataObject



73
74
75
# File 'lib/rhales/adapters/base_session.rb', line 73

def data
  @session_data
end

#last_accessed_atObject



88
89
90
# File 'lib/rhales/adapters/base_session.rb', line 88

def last_accessed_at
  @session_data[:last_accessed_at] || @session_data['last_accessed_at']
end

#session_idObject



69
70
71
# File 'lib/rhales/adapters/base_session.rb', line 69

def session_id
  @session_data[:id] || @session_data['id']
end

#valid?Boolean

Returns:

  • (Boolean)


77
78
79
80
81
82
# File 'lib/rhales/adapters/base_session.rb', line 77

def valid?
  return false unless @session_data[:created_at] || @session_data['created_at']

  # Add session validation logic here (expiry, etc.)
  true
end