module Croesus::IdentityMap::ClassMethods
Public Instance Methods
get(id, options = nil)
click to toggle source
Calls superclass method
# File lib/croesus/identity_map.rb, line 64 def get(id, options = nil) get_from_identity_map(id) || super end
load(id, attrs)
click to toggle source
Calls superclass method
# File lib/croesus/identity_map.rb, line 73 def load(id, attrs) if IdentityMap.enabled? && instance = IdentityMap.repository[id] instance else super.tap { |doc| doc.add_to_identity_map } end end
Private Instance Methods
get_from_identity_map(id)
click to toggle source
# File lib/croesus/identity_map.rb, line 68 def get_from_identity_map(id) IdentityMap.repository[id] if IdentityMap.enabled? end