Sha256: c975b8826c014ee87083b6ad795ef32432ea591d1321ab27ba0d23cd2b2e3e64

Contents?: true

Size: 795 Bytes

Versions: 3

Compression:

Stored size: 795 Bytes

Contents

module Majestic
  module Api
    class ItemInfoResponse < Response
      
      def initialize(response)
        super(response)
        
        raise_exceptions_if_necessary
        parse_item_info_objects
      end
      
      def raise_exceptions_if_necessary
        case self.code
          when 'InsufficientIndexItemInfoUnits'
            raise Majestic::Api::InsufficientIndexItemInfoUnitsException.new(self.error_message)
        end unless success?
      end
      
      def parse_item_info_objects
        self.parsed_items.each do |parsed_item|
          item_info   =   Majestic::Api::ItemInfo.new(parsed_item)
          self.items <<   item_info unless self.items.include?(item_info)
        end if self.parsed_items && self.parsed_items.any?
      end
      
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
majestic-api-1.4.2 lib/majestic/api/item_info_response.rb
majestic-api-1.4.1 lib/majestic/api/item_info_response.rb
majestic-api-1.4.0 lib/majestic/api/item_info_response.rb