diff options
Diffstat (limited to 'lib/puppet/rails/param_name.rb')
-rw-r--r-- | lib/puppet/rails/param_name.rb | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/lib/puppet/rails/param_name.rb b/lib/puppet/rails/param_name.rb new file mode 100644 index 000000000..1b708cacb --- /dev/null +++ b/lib/puppet/rails/param_name.rb @@ -0,0 +1,28 @@ +require 'puppet/util/rails/collection_merger' +require 'puppet/rails/param_value' + +class Puppet::Rails::ParamName < ActiveRecord::Base + include Puppet::Util::CollectionMerger + has_many :param_values, :dependent => :destroy +# def <<(value) +# ParamValue.with_scope(:create => {:value => value}) +# end +## end + belongs_to :resource + + def to_resourceparam(source) + hash = {} + hash[:name] = self.name.to_sym + hash[:source] = source + hash[:value] = self.param_values.find(:all).collect { |v| v.value } + if hash[:value].length == 1 + hash[:value] = hash[:value].shift + end + if hash[:value].empty? + hash[:value] = nil + end + Puppet::Parser::Resource::Param.new hash + end +end + +# $Id$ |