class OfflineBroadcaster::Adapter
Public Class Methods
collect(channel:, receiver:, data:)
click to toggle source
Should be overloaded by specified adapter,
So we can customize behaviour on delivering the `data`.
# File lib/offline_broadcaster/adapter.rb, line 17 def self.collect(channel:, receiver:, data:) raise NotImplementedError end
deliver(channel:, receiver:, data:)
click to toggle source
Delivers the `data` to receiver if it is online,
else save into DB.
# 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