51: def create_resource(type, names, arguments = nil)
52: names = [names] unless names.is_a?(Array)
53:
54: arguments ||= {}
55: raise ArgumentError, "Resource arguments must be provided as a hash" unless arguments.is_a?(Hash)
56:
57: names.collect do |name|
58: resource = Puppet::Parser::Resource.new(type, name, :scope => scope)
59: arguments.each do |param, value|
60: resource[param] = value
61: end
62:
63: resource.exported = true if exporting?
64: resource.virtual = true if virtualizing?
65: scope.compiler.add_resource(scope, resource)
66: resource
67: end
68: end