summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEthan Rowe <ethan@endpoint.com>2009-04-10 16:01:25 -0400
committerJames Turnbull <james@lovedthanlost.net>2009-04-22 14:39:37 +1000
commitf7ccaaaf5ee9e4ecc4f99a7c70cac5489ce2b3bf (patch)
treee95c72e7279c887287f6fc78a2f416b35eae00b3
parent75f1923049d5e1edfd3b9e9790a96b487cdef305 (diff)
downloadpuppet-f7ccaaaf5ee9e4ecc4f99a7c70cac5489ce2b3bf.tar.gz
puppet-f7ccaaaf5ee9e4ecc4f99a7c70cac5489ce2b3bf.tar.xz
puppet-f7ccaaaf5ee9e4ecc4f99a7c70cac5489ce2b3bf.zip
Adjusted parameter name and puppet tag classes to use new cache accumulator behavior for storeconfigs.
Removed per-class implementatiosn of accumulate_by_name from affected classes.
-rw-r--r--lib/puppet/rails/param_name.rb12
-rw-r--r--lib/puppet/rails/puppet_tag.rb13
2 files changed, 7 insertions, 18 deletions
diff --git a/lib/puppet/rails/param_name.rb b/lib/puppet/rails/param_name.rb
index 818a90e35..b4eb1df05 100644
--- a/lib/puppet/rails/param_name.rb
+++ b/lib/puppet/rails/param_name.rb
@@ -1,19 +1,13 @@
require 'puppet/util/rails/collection_merger'
require 'puppet/rails/param_value'
+require 'puppet/util/rails/cache_accumulator'
class Puppet::Rails::ParamName < ActiveRecord::Base
include Puppet::Util::CollectionMerger
has_many :param_values, :dependent => :destroy
- def self.accumulate_by_name(name)
- @name_cache ||= {}
- if instance = @name_cache[name]
- return instance
- end
- instance = find_or_create_by_name(name)
- @name_cache[name] = instance
- instance
- end
+ include Puppet::Util::CacheAccumulator
+ accumulates :name
def to_resourceparam(resource, source)
hash = {}
diff --git a/lib/puppet/rails/puppet_tag.rb b/lib/puppet/rails/puppet_tag.rb
index 53c39c5fd..2cc2c135f 100644
--- a/lib/puppet/rails/puppet_tag.rb
+++ b/lib/puppet/rails/puppet_tag.rb
@@ -1,15 +1,10 @@
require 'puppet/rails/resource_tag'
+require 'puppet/util/rails/cache_accumulator'
+
class Puppet::Rails::PuppetTag < ActiveRecord::Base
has_many :resource_tags, :dependent => :destroy
has_many :resources, :through => :resource_tags
- def self.accumulate_by_name(name)
- @name_cache ||= {}
- if instance = @name_cache[name]
- return instance
- end
- instance = find_or_create_by_name(name)
- @name_cache[name] = instance
- instance
- end
+ include Puppet::Util::CacheAccumulator
+ accumulates :name
end