aboutsummaryrefslogtreecommitdiff
path: root/lib/mauve/configuration_builders
diff options
context:
space:
mode:
authorPatrick J Cherry <patrick@bytemark.co.uk>2012-04-25 17:15:49 +0100
committerPatrick J Cherry <patrick@bytemark.co.uk>2012-04-25 17:15:49 +0100
commite959c0fe4c887154bbe28c31324fef2975cbe467 (patch)
tree3088c7a1f389944d613e57b551b452f7ec83181d /lib/mauve/configuration_builders
parent5fff12fc11cb8b02a44fd40ed78fa9d196f269d7 (diff)
Big update.
* Max acknowledgement time is now specified in the config * Calendar interface improved. * holiday_url no longer used -- replaced by notify_when_on_holiday! * added notify_when_off_sick! * Added ability for the calendar to be queried for a list of bank holdays. * Added ability for Time to be given a list of bank holidays to check against. * PeopleLists can now be a Proc, allowing downloading of lists * Person is no longer a struct * Moved the method_missing bit into ObjectBuilder from various sub classes. * Added tests for the calendar interface * Updated tests in other bits.
Diffstat (limited to 'lib/mauve/configuration_builders')
-rw-r--r--lib/mauve/configuration_builders/notification_method.rb12
-rw-r--r--lib/mauve/configuration_builders/person.rb6
-rw-r--r--lib/mauve/configuration_builders/server.rb25
3 files changed, 4 insertions, 39 deletions
diff --git a/lib/mauve/configuration_builders/notification_method.rb b/lib/mauve/configuration_builders/notification_method.rb
index 3f9283e..7951dee 100644
--- a/lib/mauve/configuration_builders/notification_method.rb
+++ b/lib/mauve/configuration_builders/notification_method.rb
@@ -40,18 +40,6 @@ module Mauve
result.extend(Mauve::Notifiers::Debug)
end
- # This catches all methods available for a provider, as needed.
- #
- # Missing methods / bad arguments etc. are caught in the
- # ObjectBuilder#parse method, via NoMethodError.
- #
- def method_missing(name, value=nil)
- if value
- result.send("#{name}=".to_sym, value)
- else
- result.send(name.to_sym)
- end
- end
end
end
diff --git a/lib/mauve/configuration_builders/person.rb b/lib/mauve/configuration_builders/person.rb
index dff6f85..7a20491 100644
--- a/lib/mauve/configuration_builders/person.rb
+++ b/lib/mauve/configuration_builders/person.rb
@@ -18,12 +18,14 @@ module Mauve
is_block_attribute "urgent"
is_block_attribute "normal"
is_block_attribute "low"
+
is_attribute "password"
is_attribute "sms"
- is_attribute "holiday_url"
is_attribute "email"
is_attribute "xmpp"
- is_attribute "sms"
+
+ is_flag_attribute "notify_when_on_holiday!"
+ is_flag_attribute "notify_when_off_sick!"
# Sets the block for all levels of alert
#
diff --git a/lib/mauve/configuration_builders/server.rb b/lib/mauve/configuration_builders/server.rb
index d22ed87..734fb3b 100644
--- a/lib/mauve/configuration_builders/server.rb
+++ b/lib/mauve/configuration_builders/server.rb
@@ -171,31 +171,6 @@ module Mauve
is_attribute "use_packet_buffer"
is_attribute "use_notification_buffer"
- #
- # This is where the calendar is located. The request paths are hard-coded.
- #
- is_attribute "bytemark_calendar_url"
-
- #
- # This is where the Bytemark authentication server is located.
- #
- is_attribute "bytemark_auth_url"
-
- #
- # This is the level of SSL verification used when making external HTTPS connections.
- #
- is_attribute "remote_https_verify_mode"
-
- #
- # This is the default timeout when making remote HTTP requests
- #
- is_attribute "remote_http_timeout"
-
- #
- # This is the default sleep time after an authentication attempt has failed.
- #
- is_attribute "failed_login_delay"
-
def builder_setup
@result = Mauve::Server.instance
end