Class: ActionDispatch::Request::Session::Options

Inherits:
Object
  • Object
show all
Defined in:
actionpack/lib/action_dispatch/request/session.rb

Overview

:nodoc:

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(by, env, default_options) ⇒ Options

Returns a new instance of Options.



40
41
42
43
44
# File 'actionpack/lib/action_dispatch/request/session.rb', line 40

def initialize(by, env, default_options)
  @by       = by
  @env      = env
  @delegate = default_options.dup
end

Class Method Details

.find(env) ⇒ Object



36
37
38
# File 'actionpack/lib/action_dispatch/request/session.rb', line 36

def self.find(env)
  env[ENV_SESSION_OPTIONS_KEY]
end

.set(env, options) ⇒ Object



32
33
34
# File 'actionpack/lib/action_dispatch/request/session.rb', line 32

def self.set(env, options)
  env[ENV_SESSION_OPTIONS_KEY] = options
end

Instance Method Details

#[](key) ⇒ Object



46
47
48
49
50
51
52
53
54
# File 'actionpack/lib/action_dispatch/request/session.rb', line 46

def [](key)
  if key == :id
    @delegate.fetch(key) {
      @delegate[:id] = @by.send(:extract_session_id, @env)
    }
  else
    @delegate[key]
  end
end

#[]=(k, v) ⇒ Object



56
# File 'actionpack/lib/action_dispatch/request/session.rb', line 56

def []=(k,v);         @delegate[k] = v; end

#to_hashObject



57
# File 'actionpack/lib/action_dispatch/request/session.rb', line 57

def to_hash;          @delegate.dup; end

#values_at(*args) ⇒ Object



58
# File 'actionpack/lib/action_dispatch/request/session.rb', line 58

def values_at(*args); @delegate.values_at(*args); end