56: def initialize(hash = {})
57: @arguments = nil
58: @parentclass = nil
59: super
60:
61:
62: if @arguments
63: unless @arguments.is_a? Array
64: @arguments = [@arguments]
65: end
66: oldargs = @arguments
67: @arguments = {}
68: oldargs.each do |arg, val|
69: @arguments[arg] = val
70: end
71: else
72: @arguments = {}
73: end
74:
75:
76: @arguments.each do |arg, defvalue|
77: next unless Puppet::Type.metaparamclass(arg)
78: if defvalue
79: warnonce "%s is a metaparam; this value will inherit to all contained resources" % arg
80: else
81: raise Puppet::ParseError, "%s is a metaparameter; please choose another parameter name in the %s definition" % [arg, self.classname]
82: end
83: end
84: end