dohruby 0.3.2 → 0.3.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -60,9 +60,9 @@ def self.activate_logger
60
60
  acceptor_cfg = logger_cfg['notify_acceptor']
61
61
  require 'doh/logger/email_acceptor'
62
62
  mail_server = root_cfg['mail_server'] || 'mail.' + get_required_config_value('domain_name', 'mail_server or domain_name required for mail server')
63
- from_address = acceptor_cfg['from_address'] || 'notify@' + get_required_config_value('domain_name', 'from_address or domain_name required for notification email address')
63
+ from_address = root_cfg['smtp_from'] || acceptor_cfg['from_address'] || 'notify@' + get_required_config_value('domain_name', 'from_address or domain_name required for notification email address')
64
64
  to_address_list = acceptor_cfg['to_address_list'] || ['root@localhost']
65
- notify_acceptor = DohLogger::EmailAcceptor.new(mail_server, from_address, to_address_list, logfile_name, nil, DohLogger::exceptionless_email_format)
65
+ notify_acceptor = DohLogger::EmailAcceptor.new(mail_server, root_cfg['smtp_port'], from_address, to_address_list, logfile_name, nil, DohLogger::exceptionless_email_format)
66
66
  Doh::log.add_acceptor(DohLogger::NOTIFY, notify_acceptor, true, acceptor_cfg['locations_to_exclude'], acceptor_cfg['include_only_locations'])
67
67
  end
68
68
 
@@ -70,9 +70,9 @@ def self.activate_logger
70
70
  acceptor_cfg = logger_cfg['error_acceptor']
71
71
  require 'doh/logger/email_acceptor'
72
72
  mail_server = root_cfg['mail_server'] || 'mail.' + get_required_config_value('domain_name', 'mail_server or domain_name required for mail server')
73
- from_address = acceptor_cfg['from_address'] || 'error@' + get_required_config_value('domain_name', 'from_address or domain_name required for notification email address')
73
+ from_address = root_cfg['smtp_from'] || acceptor_cfg['from_address'] || 'error@' + get_required_config_value('domain_name', 'from_address or domain_name required for notification email address')
74
74
  to_address_list = acceptor_cfg['to_address_list'] || ['root@localhost']
75
- error_acceptor = DohLogger::EmailAcceptor.new(mail_server, from_address, to_address_list, logfile_name)
75
+ error_acceptor = DohLogger::EmailAcceptor.new(mail_server, root_cfg['smtp_port'], from_address, to_address_list, logfile_name)
76
76
  Doh::log.add_acceptor(DohLogger::ERROR, error_acceptor, nil, acceptor_cfg['locations_to_exclude'], acceptor_cfg['include_only_locations'])
77
77
  end
78
78
  end
@@ -16,7 +16,7 @@ class Options
16
16
  # set allow_unknown_options to true to allow for filename specification, etc..
17
17
  # if the default value is :required for a field, then if that field isn't
18
18
  # specified, an exception will be raised
19
- def initialize(param_definition_hash_or_array, allow_unknown_options = false, explanation_text = '', unknown_options_name = 'file')
19
+ def initialize(param_definition_hash_or_array, allow_unknown_options = false, explanation_text = '', unknown_options_name = 'file', allow_no_prefix = false)
20
20
  @vals = OpenStruct.new
21
21
 
22
22
  @opts = OptionParser.new
@@ -37,6 +37,13 @@ class Options
37
37
  param_definition_hash = param_definition_hash_or_array
38
38
  end
39
39
 
40
+ param_definition_array.each do |elem|
41
+ keyname = elem.to_a[0][1][2]
42
+ if keyname =~ /^--no-/
43
+ raise "key name: #{keyname} will not behave as desired if meant to be a boolean, rename it, or pass in allow_no_prefix flag as 5th param"
44
+ end
45
+ end
46
+
40
47
  param_definition_array.each do |elem|
41
48
  key = elem.to_a[0][0]
42
49
  val = elem.to_a[0][1]
@@ -12,8 +12,9 @@ def self.exceptionless_email_format
12
12
  end
13
13
 
14
14
  class EmailAcceptor
15
- def initialize(smtp_server, from_address, to_addresses, logfile_name, subject_format = nil, body_format = DohLogger::exception_email_format)
15
+ def initialize(smtp_server, smtp_port, from_address, to_addresses, logfile_name, subject_format = nil, body_format = DohLogger::exception_email_format)
16
16
  @smtp_server = smtp_server
17
+ @smtp_port = smtp_port || 25
17
18
  @from_address = from_address
18
19
  @to_addresses = to_addresses
19
20
  @logfile_name = logfile_name
@@ -3,10 +3,11 @@ module DohEmail
3
3
 
4
4
  @@mail_server = DohApp::config['mail_server'] || 'mail.' + DohApp::get_required_config_value('domain_name', 'mail_server or domain_name required for mail server')
5
5
  @@from_address = DohApp::config['from_address'] || 'admin@' + DohApp::get_required_config_value('domain_name', 'from_address or domain_name required for notification email address')
6
+ @@smtp_port = DohApp::config['smtp_port'] || 25
6
7
 
7
8
  def self.send_email(subject, body, recipients, from_address = @@from_address)
8
9
  msg = "Subject:#{subject}\nFrom:#{from_address}\nTo:#{recipients.join(', ')}\nContent-Type: text/plain\n\n#{body}"
9
- Net::SMTP.start(@@mail_server) do |smtp|
10
+ Net::SMTP.start(@@mail_server, @@smtp_port) do |smtp|
10
11
  begin
11
12
  smtp.send_message(msg, from_address, recipients)
12
13
  rescue Exception => excpt
@@ -5,8 +5,8 @@ scheduler = DohLogger::DirectScheduler.new
5
5
  console_acceptor = DohLogger::IOStreamAcceptor.new
6
6
  logfile_name = "logger_sample_app.log"
7
7
  file_acceptor = DohLogger::IOStreamAcceptor.new(File.new(logfile_name, "wb"))
8
- error_acceptor = DohLogger::EmailAcceptor.new('localhost', 'from@somebody.com', ['bulbous@gmail.com'], logfile_name)
9
- notify_acceptor = DohLogger::EmailAcceptor.new('localhost', 'from@somebody.com', ['bulbous@gmail.com'], logfile_name, nil, DohLogger::exceptionless_email_format)
8
+ error_acceptor = DohLogger::EmailAcceptor.new('localhost', 25, 'from@somebody.com', ['bulbous@gmail.com'], logfile_name)
9
+ notify_acceptor = DohLogger::EmailAcceptor.new('localhost', 25, 'from@somebody.com', ['bulbous@gmail.com'], logfile_name, nil, DohLogger::exceptionless_email_format)
10
10
  intrfc = DohLogger::StandardInterface.new(scheduler)
11
11
  intrfc.add_acceptor(DohLogger::DEBUG, console_acceptor)
12
12
  intrfc.add_acceptor(DohLogger::ERROR, error_acceptor)
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 0
7
7
  - 3
8
- - 2
9
- version: 0.3.2
8
+ - 3
9
+ version: 0.3.3
10
10
  platform: ruby
11
11
  authors:
12
12
  - Makani & Kem Mason
@@ -14,7 +14,7 @@ autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
16
 
17
- date: 2010-06-16 00:00:00 +12:00
17
+ date: 2010-07-01 00:00:00 +12:00
18
18
  default_executable:
19
19
  dependencies: []
20
20