class DeviceCloud::PushNotification

Attributes

messages[R]

Public Class Methods

new(response_body) click to toggle source
# File lib/device_cloud/push_notification.rb, line 5
def initialize(response_body)
  @messages = DeviceCloud::PushNotification::Message.parse_raw_messages(response_body)
end

Public Instance Methods

handle_each!() click to toggle source
# File lib/device_cloud/push_notification.rb, line 9
def handle_each!
  messages.each do |message|
    next unless message.valid?

    klass = class_type(message.topic_type)

    message.no_content? ? klass.handle_no_content!(message.parsed_file_data) : klass.handle!(message.parsed_file_data)
  end
end

Private Instance Methods

class_type(class_name) click to toggle source
# File lib/device_cloud/push_notification.rb, line 19
def class_type(class_name)
  DeviceCloud.constantize "DeviceCloud::PushNotification::#{class_name.capitalize}Notification"
end