Module: ApiMaker::ModelExtensions
- Defined in:
- lib/api_maker/model_extensions.rb
Defined Under Namespace
Modules: ClassMethods
Class Method Summary collapse
Instance Method Summary collapse
- #api_maker_broadcast_create ⇒ Object
- #api_maker_broadcast_destroy ⇒ Object
- #api_maker_broadcast_destroy_channel_name ⇒ Object
- #api_maker_broadcast_update ⇒ Object
- #api_maker_broadcast_update_channel_name ⇒ Object
- #api_maker_event(event_name, args = {}) ⇒ Object
- #api_maker_event_channel_name(event_name) ⇒ Object
- #api_maker_resource ⇒ Object
Class Method Details
.included(base) ⇒ Object
2 3 4 |
# File 'lib/api_maker/model_extensions.rb', line 2 def self.included(base) base.extend(ClassMethods) end |
Instance Method Details
#api_maker_broadcast_create ⇒ Object
87 88 89 90 91 92 93 94 95 96 97 |
# File 'lib/api_maker/model_extensions.rb', line 87 def api_maker_broadcast_create serializer = ApiMaker::Serializer.new(model: self) data_to_broadcast = ApiMaker::ResultParser.parse( m: self, mcn: self.class.name, mi: id, mt: serializer.resource.collection_name, t: :c ) ActionCable.server.broadcast(self.class.api_maker_broadcast_create_channel_name, data_to_broadcast) end |
#api_maker_broadcast_destroy ⇒ Object
99 100 101 102 103 104 105 106 107 108 |
# File 'lib/api_maker/model_extensions.rb', line 99 def api_maker_broadcast_destroy serializer = ApiMaker::Serializer.new(model: self) data_to_broadcast = ApiMaker::ResultParser.parse( m: self, mi: id, mt: serializer.resource.collection_name, t: :d ) ActionCable.server.broadcast(api_maker_broadcast_destroy_channel_name, data_to_broadcast) end |
#api_maker_broadcast_destroy_channel_name ⇒ Object
110 111 112 |
# File 'lib/api_maker/model_extensions.rb', line 110 def api_maker_broadcast_destroy_channel_name @api_maker_broadcast_destroy_channel_name ||= self.class.api_maker_broadcast_destroy_channel_name(id) end |
#api_maker_broadcast_update ⇒ Object
114 115 116 117 118 119 120 121 122 123 |
# File 'lib/api_maker/model_extensions.rb', line 114 def api_maker_broadcast_update serializer = ApiMaker::Serializer.new(model: self) data_to_broadcast = ApiMaker::ResultParser.parse( m: self, mi: id, mt: serializer.resource.collection_name, t: :u ) ActionCable.server.broadcast(api_maker_broadcast_update_channel_name, data_to_broadcast) end |
#api_maker_broadcast_update_channel_name ⇒ Object
125 126 127 |
# File 'lib/api_maker/model_extensions.rb', line 125 def api_maker_broadcast_update_channel_name self.class.api_maker_broadcast_update_channel_name(id) end |
#api_maker_event(event_name, args = {}) ⇒ Object
70 71 72 73 74 75 76 77 78 79 80 81 |
# File 'lib/api_maker/model_extensions.rb', line 70 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( a: args, e: event_name, mi: id, mt: serializer.resource.collection_name, t: :e ) ActionCable.server.broadcast(channel_name, data_to_broadcast) end |
#api_maker_event_channel_name(event_name) ⇒ Object
83 84 85 |
# File 'lib/api_maker/model_extensions.rb', line 83 def api_maker_event_channel_name(event_name) self.class.api_maker_event_channel_name(id, event_name) end |
#api_maker_resource ⇒ Object
129 130 131 |
# File 'lib/api_maker/model_extensions.rb', line 129 def api_maker_resource @api_maker_resource ||= self.class.api_maker_resource end |