class RubiLive::Idol

Constants

ConfigPath

Public Class Methods

config() click to toggle source
# File lib/rubi_live/idol.rb, line 19
def config
  @config ||= YAML.load_file(ConfigPath).deep_symbolize_keys
end
find(name) click to toggle source
# File lib/rubi_live/idol.rb, line 23
def find(name)
  idol_name = name.to_sym
  raise "unknown idol: #{name}" unless valid?(idol_name)

  @cache ||= {}
  unless @cache[idol_name]
    idol_config = config[idol_name]
    @cache[idol_name] = RubiLive::Idol[idol_config]
  end

  @cache[idol_name]
end
names() click to toggle source
# File lib/rubi_live/idol.rb, line 36
def names
  config.keys
end
valid?(idol_name) click to toggle source
# File lib/rubi_live/idol.rb, line 40
def valid?(idol_name)
  names.include?(idol_name)
end

Public Instance Methods

==(other) click to toggle source
# File lib/rubi_live/idol.rb, line 5
def ==(other)
  other.is_a?(self.class) && self.name == other.name
end
birthday?(date = Date.today) click to toggle source
# File lib/rubi_live/idol.rb, line 9
def birthday?(date = Date.today)
  month, day = birthday.split("/")
  birthday_date = Date.new(date.year, month.to_i, day.to_i)
  birthday_date == date
end