Sha256: c487dcc0bcaa6c680399f7bc58e852474809b435059dacb4ba035b1f8f29ebfc

Contents?: true

Size: 725 Bytes

Versions: 1

Compression:

Stored size: 725 Bytes

Contents

module Mousecop
  class Player
    attr_accessor :name, :id, :image, :conference

    def self.all
      data = PlayerSource.new.fetch_data('/players')
      data.collect do |player|
	self.create(name: player["name"],
		    id: player["id"],
		    image: player["image"])
      end
    end

    def self.sample
      player = PlayerSource.new.fetch_data('/player').first
      self.create(name: player["name"], id: player["id"], image: player["image"])
    end

    def self.first
      @all ||= self.all
      @all.first
    end

    def self.create(attributes= {})
      self.new.tap do |player|
	player.name = attributes[:name]
	player.id = attributes[:id]
	player.image = attributes[:image]
      end
    end

  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
mousecop-0.0.3 lib/mousecop/player.rb