class Hello::RequestManager::Abstract

Public Class Methods

new(request) click to toggle source
# File lib/hello/request_manager/abstract.rb, line 4
def initialize(request)
  @request = request
end

Public Instance Methods

clear_cache() click to toggle source
# File lib/hello/request_manager/abstract.rb, line 8
def clear_cache
  @current_access = @current_accesses = nil
end
current_access() click to toggle source
# File lib/hello/request_manager/abstract.rb, line 32
def current_access
  fail NotImplementedError
end
current_accesses() click to toggle source
# File lib/hello/request_manager/abstract.rb, line 28
def current_accesses
  fail NotImplementedError
end
current_user() click to toggle source
# File lib/hello/request_manager/abstract.rb, line 24
def current_user
  current_access && current_access.user
end
env() click to toggle source
# File lib/hello/request_manager/abstract.rb, line 72
def env
  request.env
end
is_current_access?(access) click to toggle source
# File lib/hello/request_manager/abstract.rb, line 20
def is_current_access?(access)
  current_access == access
end
is_current_user?(user) click to toggle source
# File lib/hello/request_manager/abstract.rb, line 16
def is_current_user?(user)
  current_user == user
end
remote_ip() click to toggle source
# File lib/hello/request_manager/abstract.rb, line 64
def remote_ip
  request.remote_ip
end
request() click to toggle source
# File lib/hello/request_manager/abstract.rb, line 68
def request
  @request
end
sign_in!(user, expires_at = nil, sudo_expires_at = nil) click to toggle source
# File lib/hello/request_manager/abstract.rb, line 40
def sign_in!(user, expires_at = nil, sudo_expires_at = nil)
  expires_at ||= 30.minutes.from_now

  attrs = {
    user:               user,
    user_agent_string:  user_agent,
    expires_at:         expires_at,
    ip:                 remote_ip
  }
  attrs[:sudo_expires_at] = sudo_expires_at if sudo_expires_at
  ::Access.create!(attrs)
end
sign_out!(access = current_access) click to toggle source
# File lib/hello/request_manager/abstract.rb, line 53
def sign_out!(access = current_access)
  access && access.destroy!
  clear_cache
end
signed_in?() click to toggle source
# File lib/hello/request_manager/abstract.rb, line 12
def signed_in?
  !!current_user
end
stateful?() click to toggle source
# File lib/hello/request_manager/abstract.rb, line 36
def stateful?
  fail NotImplementedError
end
user_agent() click to toggle source

protected

# File lib/hello/request_manager/abstract.rb, line 60
def user_agent
  request.user_agent || 'blank_user_agent'
end