Module: HashPersistent::Resource::InstanceMethods
- Defined in:
- lib/hash-persistent/resource.rb
Instance Attribute Summary collapse
-
#key ⇒ Object
Returns the value of attribute key.
Instance Method Summary collapse
Instance Attribute Details
#key ⇒ Object
Returns the value of attribute key.
45 46 47 |
# File 'lib/hash-persistent/resource.rb', line 45 def key @key end |
Instance Method Details
#delete ⇒ Object
57 58 59 60 61 62 63 64 |
# File 'lib/hash-persistent/resource.rb', line 57 def delete raise RuntimeError unless key return unless self.class.store.has_key?(prefix_key) # TODO concurrency here, the store's delete call should cope, but we don't want the callback if something else got in first? # Alternative: ensure that callback handles this case, which is true of HashPersistent::Collection self.class.store.delete(prefix_key) self.class.on_delete.call(self) if self.class.on_delete end |
#prefix_key ⇒ Object
47 48 49 |
# File 'lib/hash-persistent/resource.rb', line 47 def prefix_key self.class.prefix + key end |
#save ⇒ Object
51 52 53 54 55 |
# File 'lib/hash-persistent/resource.rb', line 51 def save raise RuntimeError unless key self.class.store[prefix_key] = self self.class.on_save.call(self) if self.class.on_save end |