class CliApplication::Config
Attributes
Public Class Methods
Конструктор. Вызывается при создании класса приложения. Данный класс доступен в главной функции приложения (main) через переменную config
@param [Array] folders директории, в которых расположены базовый класс проекта и класс приложения
# File lib/cli_application/config.rb, line 19 def initialize(folders) super(nil) return if folders.nil? @folders = folders @filenames = Array.new @config_filename = File.join([folders[:class], 'config.yml']) @filename = @config_filename load_config(@config_filename) end
Public Instance Methods
Метод загружает конфиг и делает его доступным через единый интерфейс настроек конфигурации приложения (CliApplication::Config
) При каждом вызове данного метода все конфиги перечитываются заново.
@param [Sym] type параметр используется для указания местоположения конфига. Если указано :app или :class,
то имя файла с конфигом будет дополнено папкой класса или приложения
@option type [Sym] :app папка, из которой запущено приложение @option type [Sym] :class папка, в которой хранится базовый класс @option type [Sym] :absolute указывает на необходимость брать имя файла как задано разработчиком @return [Nil] нет
# File lib/cli_application/config.rb, line 38 def add(filename, type) if @folders.keys.include?(type) load_config(File.join(@folders[type], filename)) elsif type == :absolute load_config(filename) else warn "Предупреждение: попытка загрузить конфиг неизвестного типа (#{type.inspect}). Допустимы #{@folders.keys.inspect}" end end