Class: Metasploit::Model::Configuration::I18n

Inherits:
Child
  • Object
show all
Defined in:
lib/metasploit/model/configuration/i18n.rb

Overview

Defines methods for adding paths to I18n.load_path

Instance Attribute Summary collapse

Attributes inherited from Child

#configuration

Instance Method Summary collapse

Instance Attribute Details

#relative_directoriesArray<String>

Relative paths to I18n directories.

Returns:

  • (Array<String>)

    Defaults to 'config/locales'



# File 'lib/metasploit/model/configuration/i18n.rb', line 9


Instance Method Details

#directoriesArray<String>

Absolute paths to directories under which to find I18n .yml files.

Returns:

  • (Array<String>)


17
18
19
20
21
# File 'lib/metasploit/model/configuration/i18n.rb', line 17

def directories
  @directories ||= relative_directories.collect { |relative_path|
    configuration.root.join(relative_path).to_path
  }
end

#pathsArray<String>

Absolute paths to I18n .yml files.

Returns:

  • (Array<String>)


26
27
28
29
30
31
# File 'lib/metasploit/model/configuration/i18n.rb', line 26

def paths
  @paths ||= directories.flat_map { |directory|
    glob = File.join(directory, '*.yml')
    Dir.glob(glob)
  }
end

#setupvoid

This method returns an undefined value.

Adds #paths to I18n.load_path if they are not already there.



47
48
49
50
51
52
53
# File 'lib/metasploit/model/configuration/i18n.rb', line 47

def setup
  paths.each do |path|
    unless ::I18n.load_path.include? path
      ::I18n.load_path << path
    end
  end
end