Class: MailRoom::Configuration
- Inherits:
-
Object
- Object
- MailRoom::Configuration
- Defined in:
- lib/mail_room/configuration.rb
Overview
Wraps configuration for a set of individual mailboxes with global config
Instance Attribute Summary collapse
-
#health_check ⇒ Object
Returns the value of attribute health_check.
-
#log_path ⇒ Object
Returns the value of attribute log_path.
-
#mailboxes ⇒ Object
Returns the value of attribute mailboxes.
-
#quiet ⇒ Object
Returns the value of attribute quiet.
Instance Method Summary collapse
-
#initialize(options = {}) ⇒ Configuration
constructor
Initialize a new configuration of mailboxes.
-
#set_health_check(health_check_config) ⇒ Object
Builds the health checker from YAML configuration.
-
#set_mailboxes(mailboxes_config) ⇒ Object
Builds individual mailboxes from YAML configuration.
Constructor Details
#initialize(options = {}) ⇒ Configuration
Initialize a new configuration of mailboxes
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
# File 'lib/mail_room/configuration.rb', line 10 def initialize(={}) self.mailboxes = [] self.quiet = .fetch(:quiet, false) if .has_key?(:config_path) begin erb = ERB.new(File.read([:config_path])) erb.filename = [:config_path] config_file = YAML.load(erb.result) set_mailboxes(config_file[:mailboxes]) set_health_check(config_file[:health_check]) rescue => e raise e unless quiet end end end |
Instance Attribute Details
#health_check ⇒ Object
Returns the value of attribute health_check.
7 8 9 |
# File 'lib/mail_room/configuration.rb', line 7 def health_check @health_check end |
#log_path ⇒ Object
Returns the value of attribute log_path.
7 8 9 |
# File 'lib/mail_room/configuration.rb', line 7 def log_path @log_path end |
#mailboxes ⇒ Object
Returns the value of attribute mailboxes.
7 8 9 |
# File 'lib/mail_room/configuration.rb', line 7 def mailboxes @mailboxes end |
#quiet ⇒ Object
Returns the value of attribute quiet.
7 8 9 |
# File 'lib/mail_room/configuration.rb', line 7 def quiet @quiet end |
Instance Method Details
#set_health_check(health_check_config) ⇒ Object
Builds the health checker from YAML configuration
40 41 42 43 44 |
# File 'lib/mail_room/configuration.rb', line 40 def set_health_check(health_check_config) return unless health_check_config self.health_check = HealthCheck.new(health_check_config) end |
#set_mailboxes(mailboxes_config) ⇒ Object
Builds individual mailboxes from YAML configuration
31 32 33 34 35 |
# File 'lib/mail_room/configuration.rb', line 31 def set_mailboxes(mailboxes_config) mailboxes_config.each do |attributes| self.mailboxes << Mailbox.new(attributes) end end |