diff options
| author | Rick Bradley <rick@rickbradley.com> | 2007-10-04 13:00:13 -0500 |
|---|---|---|
| committer | Rick Bradley <rick@rickbradley.com> | 2007-10-04 13:00:13 -0500 |
| commit | fd841b33a2920f26d472f4f38a559d8f2aa48a0c (patch) | |
| tree | 52b653806ccd9bf1d7b47aeda102db88ed7f5c0f /lib/puppet | |
| parent | a073639bac47c6b1f5638bb0e7a131ae75dff128 (diff) | |
| download | puppet-fd841b33a2920f26d472f4f38a559d8f2aa48a0c.tar.gz puppet-fd841b33a2920f26d472f4f38a559d8f2aa48a0c.tar.xz puppet-fd841b33a2920f26d472f4f38a559d8f2aa48a0c.zip | |
Updating first portion of the Network RESTServer spec with example code, getting the added examples to pass.
Diffstat (limited to 'lib/puppet')
| -rw-r--r-- | lib/puppet/network/rest_server.rb | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/lib/puppet/network/rest_server.rb b/lib/puppet/network/rest_server.rb index e415e8bcb..0ffa8ff16 100644 --- a/lib/puppet/network/rest_server.rb +++ b/lib/puppet/network/rest_server.rb @@ -1,2 +1,20 @@ class Puppet::Network::RESTServer # :nodoc: + @@routes = {} + + def self.register(*indirections) + raise ArgumentError, "indirection names are required" if indirections.empty? + indirections.flatten.each { |i| @@routes[i.to_sym] = true } + end + + def self.unregister(*indirections) + raise ArgumentError, "indirection names are required" if indirections.empty? + indirections.flatten.each do |i| + raise(ArgumentError, "indirection [%s] is not known" % i) unless @@routes[i.to_sym] + @@routes.delete(i.to_sym) + end + end + + def self.reset + self.unregister(@@routes.keys) unless @@routes.keys.empty? + end end |
