class Notifiable::Notification

Public Instance Methods

add_device_token(d) click to toggle source
# File lib/notifiable/notification.rb, line 22
def add_device_token(d)
  provider = d.provider.to_sym

  unless notifiers[provider]
    clazz = Notifiable.notifier_class(self, d)
    raise "Notifier #{provider} not configured" unless clazz
    notifier = clazz.new(Rails.env, self)
    self.app.configure(provider, notifier)
    @notifiers[provider] = notifier
  end
  
            notifiers[provider].send_notification(d)
end
batch() { |self| ... } click to toggle source
# File lib/notifiable/notification.rb, line 11
def batch 
  begin 
    yield(self)
    update(last_error_message: nil)
  rescue Exception => e
    update(last_error_message: e.message)
  ensure
    close
  end
end
send_params() click to toggle source
# File lib/notifiable/notification.rb, line 36
def send_params
  @send_params ||= (self.parameters ? self.parameters : {}).merge({:n_id => self.id})
end

Private Instance Methods

close() click to toggle source
# File lib/notifiable/notification.rb, line 45
def close
  notifiers.each_value {|n| n.close}
  @notifiers = nil
end
notifiers() click to toggle source
# File lib/notifiable/notification.rb, line 41
def notifiers
  @notifiers ||= {}
end