Class: FrozenRecord::Base::ThreadSafeStorage

Inherits:
Object
  • Object
show all
Defined in:
lib/frozen_record/base.rb

Instance Method Summary collapse

Constructor Details

#initialize(key) ⇒ ThreadSafeStorage

Returns a new instance of ThreadSafeStorage.



34
35
36
# File 'lib/frozen_record/base.rb', line 34

def initialize(key)
  @thread_key = "#{ self.object_id }-#{ key }"
end

Instance Method Details

#[](key) ⇒ Object



38
39
40
41
# File 'lib/frozen_record/base.rb', line 38

def [](key)
  Thread.current[@thread_key] ||= {}
  Thread.current[@thread_key][key]
end

#[]=(key, value) ⇒ Object



43
44
45
46
# File 'lib/frozen_record/base.rb', line 43

def []=(key, value)
  Thread.current[@thread_key] ||= {}
  Thread.current[@thread_key][key] = value
end