inspec/lib/vulcano/plugins/resource.rb
Dominik Richter 17386740c7 dont redefine classmethod on initialize
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 01:23:08 +02:00

41 lines
921 B
Ruby

# encoding: utf-8
module Vulcano
module Plugins
class Resource
def self.name(name)
Vulcano::Plugins::Resource.__register(name, self)
end
def self.__register(name, obj)
cl = Class.new(obj) do
# add some common methods
include Vulcano::Plugins::ResourceCommon
def initialize(backend, *args)
# attach the backend to this instance
@__backend_runner__ = backend
# call the resource initializer
super(*args)
end
def vulcano
@__backend_runner__
end
end
# add the resource to the registry by name
Vulcano::Resource.registry[name] = cl
end
end
module ResourceCommon
def resource_skipped
@resource_skipped
end
def skip_resource(message)
@resource_skipped = message
end
end
end
end