class MemoryDictionary::Translator

Public Class Methods

add_word(dictionary, word, translation, &block) click to toggle source
# File lib/memory_dictionary/translator.rb, line 26
def self.add_word(dictionary, word, translation, &block)
  translator = MemoryDictionary::Translator.new(dictionary)
  translator.add_word(word, translation, &block)
end
new(dictionary_name) click to toggle source
# File lib/memory_dictionary/translator.rb, line 2
def initialize(dictionary_name)
  begin
    @dictionary = MemoryDictionary::Dictionary.find_by(name: dictionary_name)  
  rescue Mongoid::Errors::DocumentNotFound => e
    MemoryDictionary.logger.debug e
    raise MemoryDictionary::Errors::DictionaryNotFoundException
  end
end

Public Instance Methods

add_word(word, translation, &block) click to toggle source
# File lib/memory_dictionary/translator.rb, line 21
def add_word(word, translation, &block)
  @dictionary.words << MemoryDictionary::Word.new(name: word, translation: translation)
  block.call if block_given?
end
translate(word) click to toggle source
# File lib/memory_dictionary/translator.rb, line 11
def translate(word)
  begin
    word = @dictionary.words.find_by(name: word)
    word.translation
  rescue Mongoid::Errors::DocumentNotFound => e
    MemoryDictionary.logger.debug e
    raise MemoryDictionary::Errors::WordNotFoundException
  end
end