summaryrefslogtreecommitdiffstats
path: root/lib/puppet/file_collection.rb
diff options
context:
space:
mode:
authorLuke Kanies <luke@madstop.com>2009-02-13 00:29:07 -0600
committerJames Turnbull <james@lovedthanlost.net>2009-02-28 09:16:42 +1100
commitfa6494b69ad1b01a9c587c86aa1731f4702f5509 (patch)
tree5a8aaa6c15aca51fdcb6fde067aa4d7cb73f30e2 /lib/puppet/file_collection.rb
parent373d505c381696f880c305a9357a6e50342079b8 (diff)
downloadpuppet-fa6494b69ad1b01a9c587c86aa1731f4702f5509.tar.gz
puppet-fa6494b69ad1b01a9c587c86aa1731f4702f5509.tar.xz
puppet-fa6494b69ad1b01a9c587c86aa1731f4702f5509.zip
Using the FileCollection where appropriate.
This commit just replaces the :file and :line accessors with the use of the new FileCollection Lookup module. This should mean that we've normalized all file names in a given process, which *might* have drastic RAM improvements. For initial simplicity, I've gone with a single global collection of file names, but it's built so it's easy to use individual file collections instead. Signed-off-by: Luke Kanies <luke@madstop.com>
Diffstat (limited to 'lib/puppet/file_collection.rb')
-rw-r--r--lib/puppet/file_collection.rb8
1 files changed, 8 insertions, 0 deletions
diff --git a/lib/puppet/file_collection.rb b/lib/puppet/file_collection.rb
index 451b496a1..69f59ffdf 100644
--- a/lib/puppet/file_collection.rb
+++ b/lib/puppet/file_collection.rb
@@ -1,6 +1,12 @@
# A simple way to turn file names into singletons,
# so we don't have tons of copies of each file path around.
class Puppet::FileCollection
+ require 'puppet/file_collection/lookup'
+
+ def self.collection
+ @collection
+ end
+
def initialize
@paths = []
end
@@ -17,4 +23,6 @@ class Puppet::FileCollection
def path(index)
@paths[index]
end
+
+ @collection = self.new
end