Class: OfflineBroadcaster::Adapter
- Inherits:
-
Object
- Object
- OfflineBroadcaster::Adapter
- Defined in:
- lib/offline_broadcaster/adapter.rb
Class Method Summary collapse
-
.collect(channel:, receiver:, data:) ⇒ Object
Should be overloaded by specified adapter, So we can customize behaviour on delivering the ‘data`.
-
.deliver(channel:, receiver:, data:) ⇒ Object
Delivers the ‘data` to receiver if it is online, else save into DB.
Class Method Details
.collect(channel:, receiver:, data:) ⇒ Object
Should be overloaded by specified adapter,
So we can customize behaviour on delivering the `data`.
17 18 19 |
# File 'lib/offline_broadcaster/adapter.rb', line 17 def self.collect(channel:, receiver:, data:) raise NotImplementedError end |
.deliver(channel:, receiver:, data:) ⇒ Object
Delivers the ‘data` to receiver if it is online,
else save into DB.
6 7 8 9 10 11 12 13 |
# File 'lib/offline_broadcaster/adapter.rb', line 6 def self.deliver(channel:, receiver:, data:) config = receiver.offline_broadcaster_config if receiver.send(config.online_attribute) config.adapter.collect(channel: channel, receiver: receiver, data: data) return end Record.create!(channel: channel, receiver: receiver, data: data) end |