Class: CliApplication::Mail
- Inherits:
-
Object
- Object
- CliApplication::Mail
- Defined in:
- lib/cli_application/mail.rb
Overview
:nodoc:
Class Method Summary collapse
- .check(config) ⇒ Object
-
.new(config, folders) ⇒ Object
Инициализация методов, позволяющих рассылать письма адимнистраторам системы.
- .set_valid_state(state, error_msg) ⇒ Object
Class Method Details
.check(config) ⇒ Object
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
# File 'lib/cli_application/mail.rb', line 24 def self.check(config) methods = ['log', 'sendmail', 'smtp'] return self.set_valid_state(false, 'Отсутствует секция mail') if config.nil? return self.set_valid_state(false, 'Отсутствует параметр enable в секции mail') if config.enable.nil? return self.set_valid_state(false, 'Отсутствует параметр from в секции mail') if config.from.nil? return self.set_valid_state(false, 'Параметр from в секции mail не должен быть пустым') if config.from.strip == '' warn "Внимание: передача почтовых сообщений отключена" unless config.enable return self.set_valid_state(false, "Метод доставки должен быть один из: #{methods.inspect}") unless methods.include?(config.delivery_method.to_s) res = Hash.new res[:valid] = true res[:delivery_method] = config.delivery_method.to_sym res[:error_msg] = '' res end |
.new(config, folders) ⇒ Object
Инициализация методов, позволяющих рассылать письма адимнистраторам системы
9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
# File 'lib/cli_application/mail.rb', line 9 def self.new(config, folders) res = self.check(config) case res[:delivery_method] when :log ::CliApplication::MailLib::Log.new(config, folders) when :smtp ::CliApplication::MailLib::SMTP.new(config, folders) when :sendmail ::CliApplication::MailLib::Sendmail.new(config, folders) else ::CliApplication::MailLib::Error.new(config, folders) end end |
.set_valid_state(state, error_msg) ⇒ Object
41 42 43 44 45 46 47 |
# File 'lib/cli_application/mail.rb', line 41 def self.set_valid_state(state, error_msg) res = Hash.new res[:valid] = false res[:delivery_method] = :error res[:error_msg] = error_msg res end |