class BoardGameGem::BGGCollection

Attributes

count[RW]
items[RW]

Public Class Methods

new(xml) click to toggle source
# File lib/bgg_collection.rb, line 6
def initialize(xml)
        if !xml.nil?
                @count = get_integer(xml, "items", "totalitems")
                @items = []
                xml.css("item").each do |item|
                        @items.push(BGGCollectionItem.new(item))
                end
        else
                @count = -1
                @items = []
        end
end

Public Instance Methods

get_for_trade() click to toggle source
# File lib/bgg_collection.rb, line 52
def get_for_trade
        return filter_by(:for_trade)
end
get_owned() click to toggle source
# File lib/bgg_collection.rb, line 24
def get_owned
        return filter_by(:own)
end
get_preordered() click to toggle source
# File lib/bgg_collection.rb, line 48
def get_preordered
        return filter_by(:preordered)
end
get_previously_owned() click to toggle source
# File lib/bgg_collection.rb, line 28
def get_previously_owned
        return filter_by(:prev_owned)
end
get_want_to_buy() click to toggle source
# File lib/bgg_collection.rb, line 40
def get_want_to_buy
        return filter_by(:want_to_buy)
end
get_want_to_play() click to toggle source
# File lib/bgg_collection.rb, line 36
def get_want_to_play
        return filter_by(:want_to_play)
end
get_wants() click to toggle source
# File lib/bgg_collection.rb, line 32
def get_wants
        return filter_by(:want)
end
get_wishlist() click to toggle source
# File lib/bgg_collection.rb, line 44
def get_wishlist
        return filter_by(:wishlist)
end
status_of(id) click to toggle source
# File lib/bgg_collection.rb, line 19
def status_of(id)
        item = @items.find { |x| x.id == id}
        item ? item.status : nil
end

Private Instance Methods

filter_by(key) click to toggle source
# File lib/bgg_collection.rb, line 58
def filter_by(key)
        return @items.select { |x| x.status[key] }
end