class FastGettext::TranslationRepository::Base

Responsibility:

- base for all repositories
- fallback as empty repository, that cannot translate anything but does not crash

Attributes

name[R]
options[R]

Public Class Methods

new(name, options = {}) click to toggle source
# File lib/fast_gettext/translation_repository/base.rb, line 11
def initialize(name, options = {})
  @name = name
  @options = options
end

Public Instance Methods

[](key) click to toggle source
# File lib/fast_gettext/translation_repository/base.rb, line 24
def [](key)
  current_translations[key]
end
available_locales() click to toggle source
# File lib/fast_gettext/translation_repository/base.rb, line 20
def available_locales
  []
end
plural(*keys) click to toggle source
# File lib/fast_gettext/translation_repository/base.rb, line 28
def plural(*keys)
  current_translations.plural(*keys)
end
pluralisation_rule() click to toggle source
# File lib/fast_gettext/translation_repository/base.rb, line 16
def pluralisation_rule
  nil
end
reload() click to toggle source
# File lib/fast_gettext/translation_repository/base.rb, line 32
def reload
  true
end

Protected Instance Methods

current_translations() click to toggle source
# File lib/fast_gettext/translation_repository/base.rb, line 38
def current_translations
  MoFile.empty
end
find_files_in_locale_folders(relative_file_path, path) { |locale, file| ... } click to toggle source
# File lib/fast_gettext/translation_repository/base.rb, line 42
def find_files_in_locale_folders(relative_file_path, path)
  path ||= "locale"
  raise "path #{path} could not be found!" unless File.exist?(path)

  @files = {}
  Dir[File.join(path, '*')].each do |locale_folder|
    next unless File.basename(locale_folder) =~ LOCALE_REX

    file = File.join(locale_folder, relative_file_path)
    next unless File.exist? file

    locale = File.basename(locale_folder)
    @files[locale] = yield(locale, file)
  end
end