Sha256: 2d9c8571a44f7aabfccd7916796a32b857d89a5ffbd86f196f65c0761614e110

Contents?: true

Size: 793 Bytes

Versions: 4

Compression:

Stored size: 793 Bytes

Contents

module FoodInfo
  module Adapters
    class FatSecret
      module Data
      
        class FoodItem < Hashie::Trash
          property :servings
          property :id,    :from => :food_id
          property :name,  :from => :food_name
          property :kind,  :from => :food_type
          property :url,   :from => :food_url
          property :brand, :from => :brand_name

          def initialize(*args)
            super(*args)

            # Can't use Array(), as that turns internals of the hash into array pairs as well
            serving_info = self[:servings]['serving']
            serving_info = [serving_info] if serving_info.is_a?(Hash)
            self[:servings] = serving_info.collect{|s| FoodServing.new(s) }
          end
        end
      
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
food_info-0.0.7 lib/food_info/adapters/fat_secret/data/food_item.rb
food_info-0.0.6 lib/food_info/adapters/fat_secret/data/food_item.rb
food_info-0.0.5 lib/food_info/adapters/fat_secret/data/food_item.rb
food_info-0.0.4 lib/food_info/adapters/fat_secret/data/food_item.rb