summaryrefslogtreecommitdiffstats
path: root/lib/puppet/node
diff options
context:
space:
mode:
authorLuke Kanies <luke@reductivelabs.com>2010-01-06 16:03:33 -0800
committertest branch <puppet-dev@googlegroups.com>2010-02-17 06:50:53 -0800
commitcb169082ea4d8764c25e81183754c862fd170492 (patch)
tree16d546b9cbf7b3a99ad5172f3914acf079270345 /lib/puppet/node
parent201889bd30260698478d8469517299b290053189 (diff)
downloadpuppet-cb169082ea4d8764c25e81183754c862fd170492.tar.gz
puppet-cb169082ea4d8764c25e81183754c862fd170492.tar.xz
puppet-cb169082ea4d8764c25e81183754c862fd170492.zip
Adding 'known_resource_types' to Environment
Each environment now has its own known collection of resource types, and it is responsible for caching as necessary. Signed-off-by: Luke Kanies <luke@reductivelabs.com>
Diffstat (limited to 'lib/puppet/node')
-rw-r--r--lib/puppet/node/environment.rb8
1 files changed, 8 insertions, 0 deletions
diff --git a/lib/puppet/node/environment.rb b/lib/puppet/node/environment.rb
index 395d50657..a6e33703b 100644
--- a/lib/puppet/node/environment.rb
+++ b/lib/puppet/node/environment.rb
@@ -42,6 +42,14 @@ class Puppet::Node::Environment
@name = name
end
+ def known_resource_types
+ if @known_resource_types.nil? or @known_resource_types.stale?
+ @known_resource_types = Puppet::Parser::ResourceTypeCollection.new(self)
+ @known_resource_types.perform_initial_import
+ end
+ @known_resource_types
+ end
+
def module(name)
mod = Puppet::Module.new(name, self)
return nil unless mod.exist?