module Dynamoid::IdentityMap
Public Class Methods
clear()
click to toggle source
# File lib/dynamoid/identity_map.rb, line 7 def self.clear Dynamoid.included_models.each { |m| m.identity_map.clear } end
Public Instance Methods
delete()
click to toggle source
@private
Calls superclass method
# File lib/dynamoid/identity_map.rb, line 77 def delete return super if self.class.identity_map_off? identity_map.delete(identity_map_key) super end
identity_map()
click to toggle source
# File lib/dynamoid/identity_map.rb, line 62 def identity_map self.class.identity_map end
identity_map_key()
click to toggle source
@private
# File lib/dynamoid/identity_map.rb, line 85 def identity_map_key key = hash_key.to_s key += "::#{range_value}" if self.class.range_key key end
save(*args)
click to toggle source
@private
Calls superclass method
# File lib/dynamoid/identity_map.rb, line 67 def save(*args) return super if self.class.identity_map_off? if result = super identity_map[identity_map_key] = self end result end