module RealtimeChange::Model::ClassMethods
Private Instance Methods
notifiable_in_realtime()
click to toggle source
# File lib/realtime_change/model/class_methods.rb, line 5 def notifiable_in_realtime after_create :notify_create if respond_to?(:after_create) after_update :notify_update if respond_to?(:after_update) after_destroy :notify_destroy if respond_to?(:after_destroy) # Define an anonymous module for all of the instance methods. instance_methods = Module.new do def resource_content self.attributes end def recipient_uids [] end def notify_create message = { type: 'change', action: 'create', resource: self.class.name, resource_content: resource_content, recipient_uids: recipient_uids } notify message end def notify_update message = { type: 'change', action: 'update', resource: self.class.name, resource_content: resource_content, recipient_uids: recipient_uids } notify message end def notify_destroy message = { type: 'change', action: 'destroy', resource: self.class.name, resource_content: resource_content, recipient_uids: recipient_uids } notify message end def notify(message) RealtimeChange.redis_pub.publish 'server-message', message.to_json end end include instance_methods end
notify(message)
click to toggle source
# File lib/realtime_change/model/class_methods.rb, line 56 def notify(message) RealtimeChange.redis_pub.publish 'server-message', message.to_json end
notify_create()
click to toggle source
# File lib/realtime_change/model/class_methods.rb, line 20 def notify_create message = { type: 'change', action: 'create', resource: self.class.name, resource_content: resource_content, recipient_uids: recipient_uids } notify message end
notify_destroy()
click to toggle source
# File lib/realtime_change/model/class_methods.rb, line 44 def notify_destroy message = { type: 'change', action: 'destroy', resource: self.class.name, resource_content: resource_content, recipient_uids: recipient_uids } notify message end
notify_update()
click to toggle source
# File lib/realtime_change/model/class_methods.rb, line 32 def notify_update message = { type: 'change', action: 'update', resource: self.class.name, resource_content: resource_content, recipient_uids: recipient_uids } notify message end
recipient_uids()
click to toggle source
# File lib/realtime_change/model/class_methods.rb, line 16 def recipient_uids [] end
resource_content()
click to toggle source
# File lib/realtime_change/model/class_methods.rb, line 12 def resource_content self.attributes end