Class: LangFactory
- Inherits:
-
Object
- Object
- LangFactory
- Includes:
- Singleton
- Defined in:
- lib/asker/lang/lang_factory.rb
Overview
LangFactory singleton class.
-
Read all language codes defined into configuration file
-
and load every language
Lang objects are reused
Instance Method Summary collapse
-
#default ⇒ Object
Return default Lang object.
-
#get(code) ⇒ Object
Return Lang object associated to code.
-
#initialize ⇒ LangFactory
constructor
Read all language codes from configuration file and load every language.
Constructor Details
#initialize ⇒ LangFactory
Read all language codes from configuration file and load every language
17 18 19 20 21 22 23 24 25 26 |
# File 'lib/asker/lang/lang_factory.rb', line 17 def initialize @default = Application.instance.config['languages']['default'].downcase @langs = {} Application.instance.config['languages'].each_pair do |key, value| code = key.downcase next if code == 'default' @langs[code] = Lang.new(code) if value.downcase == 'yes' end end |
Instance Method Details
#default ⇒ Object
Return default Lang object
43 44 45 |
# File 'lib/asker/lang/lang_factory.rb', line 43 def default get(@default) end |
#get(code) ⇒ Object
Return Lang object associated to code
31 32 33 34 35 36 37 38 39 |
# File 'lib/asker/lang/lang_factory.rb', line 31 def get(code) return @langs[code] unless @langs[code].nil? puts Rainbow("[ERROR] Unkown Lang code: #{code}").bright puts Rainbow(' => Change input file code lang').bright puts Rainbow(' => Revise configuration from config.ini').bright puts Rainbow(' => Revise template files').bright exit 1 end |