module ApiMaker::ModelExtensions
Public Class Methods
included(base)
click to toggle source
# File lib/api_maker/model_extensions.rb, line 2 def self.included(base) base.extend(ClassMethods) end
Public Instance Methods
api_maker_broadcast_create()
click to toggle source
# File lib/api_maker/model_extensions.rb, line 51 def api_maker_broadcast_create serializer = ApiMaker::Serializer.new(model: self) data_to_broadcast = ApiMaker::ResultParser.parse( model: self, model_class_name: self.class.name, model_id: id, model_type: serializer.resource.collection_name, type: :create ) ActionCable.server.broadcast(self.class.api_maker_broadcast_create_channel_name, data_to_broadcast) end
api_maker_broadcast_destroy()
click to toggle source
# File lib/api_maker/model_extensions.rb, line 63 def api_maker_broadcast_destroy serializer = ApiMaker::Serializer.new(model: self) data_to_broadcast = ApiMaker::ResultParser.parse( model: self, model_id: id, model_type: serializer.resource.collection_name, type: :destroy ) ActionCable.server.broadcast(api_maker_broadcast_destroy_channel_name, data_to_broadcast) end
api_maker_broadcast_destroy_channel_name()
click to toggle source
# File lib/api_maker/model_extensions.rb, line 74 def api_maker_broadcast_destroy_channel_name @api_maker_broadcast_destroy_channel_name ||= "api_maker_destroys_#{api_maker_resource.short_name}_#{id}" end
api_maker_broadcast_update()
click to toggle source
# File lib/api_maker/model_extensions.rb, line 78 def api_maker_broadcast_update serializer = ApiMaker::Serializer.new(model: self) data_to_broadcast = ApiMaker::ResultParser.parse( model: self, model_id: id, model_type: serializer.resource.collection_name, type: :update ) ActionCable.server.broadcast(api_maker_broadcast_update_channel_name, data_to_broadcast) end
api_maker_broadcast_update_channel_name()
click to toggle source
# File lib/api_maker/model_extensions.rb, line 89 def api_maker_broadcast_update_channel_name @api_maker_broadcast_update_channel_name ||= "api_maker_updates_#{api_maker_resource.short_name}_#{id}" end
api_maker_event(event_name, args = {})
click to toggle source
# File lib/api_maker/model_extensions.rb, line 34 def api_maker_event(event_name, args = {}) channel_name = api_maker_event_channel_name(event_name) serializer = ApiMaker::Serializer.new(model: self) data_to_broadcast = ApiMaker::ResultParser.parse( args: args, event_name: event_name, model_id: id, model_type: serializer.resource.collection_name, type: :event ) ActionCable.server.broadcast(channel_name, data_to_broadcast) end
api_maker_event_channel_name(event_name)
click to toggle source
# File lib/api_maker/model_extensions.rb, line 47 def api_maker_event_channel_name(event_name) "api_maker_events_#{api_maker_resource.short_name}_#{id}_#{event_name}" end
api_maker_resource()
click to toggle source
# File lib/api_maker/model_extensions.rb, line 93 def api_maker_resource @api_maker_resource ||= self.class.api_maker_resource end