lib/metrojobb/category.rb in metrojobb-0.3.0 vs lib/metrojobb/category.rb in metrojobb-0.4.0

- old
+ new

@@ -11,31 +11,39 @@ ID_NAME_MAP = NAME_ID_MAP.invert.freeze validate :validate_known_category + def self.names + NAME_ID_MAP.keys + end + + def self.ids + NAME_ID_MAP.values + end + def self.name_id_map NAME_ID_MAP end def self.id_name_map - ID_NAME_MAP + NAME_ID_MAP.invert end def to_xml(builder: Builder::XmlMarkup.new(indent: DEFAULT_INDENT)) builder.category do |node| node.id(category_id.to_s) end end def category_id - NAME_ID_MAP[name.presence || id.presence] || + self.class.name_id_map[name.presence || id.presence] || id.presence || name.presence end def validate_known_category - return if ID_NAME_MAP[category_id] + return if self.class.id_name_map[category_id] errors.add(:category_id, :inclusion) end end end