class AdLint::MessageCatalog
DESCRIPTION¶ ↑
Message
catalog.
Public Class Methods
new(traits)
click to toggle source
# File lib/adlint/message.rb, line 448 def initialize(traits) @traits = traits @hash = Hash.new message_definition_files.each { |def_file| def_file.read_into(self) } end
Public Instance Methods
lookup(msg_id)
click to toggle source
# File lib/adlint/message.rb, line 454 def lookup(msg_id) @hash[msg_id] or raise InvalidMessageIdError.new(msg_id) end
merge!(pkg_name, msg_def)
click to toggle source
# File lib/adlint/message.rb, line 458 def merge!(pkg_name, msg_def) msg_def.each do |msg_name_str, cont| msg_id = MessageId.new(pkg_name, msg_name_str.to_sym) if changed = @traits.of_message.change_list[msg_id] cont = changed end @hash[msg_id] = MessageTemplate.new(msg_id, cont["classes"], cont["format"]) end end
Private Instance Methods
message_definition_files()
click to toggle source
# File lib/adlint/message.rb, line 470 def message_definition_files lang_name = @traits.of_message.language [CoreMessageDefinitionFile.new(lang_name)] + @traits.exam_packages.map { |pkg| ExamMessageDefinitionFile.new(pkg, lang_name) } end