Sha256: d19b1ce95d3c926fe3d65da75d58f8e22c4bb0af8d6ebb84e21d3f9f58b0bf16
Contents?: true
Size: 811 Bytes
Versions: 1
Compression:
Stored size: 811 Bytes
Contents
require 'cassandra_mapper/support/observing' module CassandraMapper module Observable CALLBACKS = [ :after_load, :before_create, :after_create, :before_update, :after_update, :before_save, :after_save, :before_destroy, :after_destroy, ] CALLBACKS.each do |cb| name = cb.to_s module_eval <<-cbnotify def _notify_observer_#{name}; notify_observers(:#{name}); true; end cbnotify end def self.included(klass) klass.module_eval do include CassandraMapper::Support::Observing CALLBACKS.each do |callback| name = callback.to_s send(callback, :"_notify_observer_#{name}") end end end end class Observer < CassandraMapper::Support::Observer end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
cassandra_mapper-0.0.1 | lib/cassandra_mapper/observable.rb |