class RichterCatalogue::Year

Attributes

name[RW]
paintings[RW]

Public Class Methods

all() click to toggle source
# File lib/richter_catalogue/year.rb, line 10
def self.all
  @@all
end
create(name) click to toggle source
# File lib/richter_catalogue/year.rb, line 14
def self.create(name)
  new_year = RichterCatalogue::Year.new(name)
  self.all << new_year
  new_year
end
find_by_name(name) click to toggle source
# File lib/richter_catalogue/year.rb, line 25
def self.find_by_name(name)
  self.all.detect{|obj| obj.name == name}
end
find_or_create_by_name(name) click to toggle source
# File lib/richter_catalogue/year.rb, line 29
def self.find_or_create_by_name(name)
  self.find_by_name(name) || self.create(name)
end
new(name) click to toggle source
# File lib/richter_catalogue/year.rb, line 5
def initialize(name)
  @name = name
  @paintings = []
end

Public Instance Methods

add_painting(painting) click to toggle source
# File lib/richter_catalogue/year.rb, line 20
def add_painting(painting)
  painting.artist = self unless painting.artist == self
  @paintings << painting unless @paintings.include?(painting)
end