diff --git a/lib/puppet/interface/action.rb b/lib/puppet/interface/action.rb index 1c19bd08c..1a5730d1b 100644 --- a/lib/puppet/interface/action.rb +++ b/lib/puppet/interface/action.rb @@ -1,26 +1,26 @@ require 'puppet/interface' class Puppet::Interface::Action attr_reader :name def initialize(interface, name, attrs = {}) name = name.to_s raise "'#{name}' is an invalid action name" unless name =~ /^[a-z]\w*$/ - attrs.each do |k,v| send("#{k}=", v) end @interface = interface - @name = name + @name = name + attrs.each do |k,v| send("#{k}=", v) end end def invoke(*args, &block) @interface.method(name).call(*args,&block) end def invoke=(block) if @interface.is_a?(Class) @interface.define_method(@name, &block) else @interface.meta_def(@name, &block) end end end