class Chef::Resource::ActionClass
Attributes
resource_class[RW]
The Chef::Resource class this ActionClass was declared against.
@return [Class] The Chef::Resource class this ActionClass was declared against.
Public Class Methods
include_resource_dsl?()
click to toggle source
XXX: remove in Chef-14
# File lib/chef/resource/action_class.rb, line 68 def self.include_resource_dsl? true end
inspect()
click to toggle source
# File lib/chef/resource/action_class.rb, line 85 def self.inspect to_s end
to_s()
click to toggle source
# File lib/chef/resource/action_class.rb, line 81 def self.to_s "#{resource_class} action provider" end
Public Instance Methods
load_current_resource()
click to toggle source
If load_current_value! is defined on the resource, use that.
# File lib/chef/resource/action_class.rb, line 35 def load_current_resource if new_resource.respond_to?(:load_current_value!) # dup the resource and then reset desired-state properties. current_resource = new_resource.dup # We clear desired state in the copy, because it is supposed to be actual state. # We keep identity properties and non-desired-state, which are assumed to be # "control" values like `recurse: true` current_resource.class.properties.each_value do |property| if property.desired_state? && !property.identity? && !property.name_property? property.reset(current_resource) end end # Call the actual load_current_value! method. If it raises # CurrentValueDoesNotExist, set current_resource to `nil`. begin # If the user specifies load_current_value do |desired_resource|, we # pass in the desired resource as well as the current one. if current_resource.method(:load_current_value!).arity > 0 current_resource.load_current_value!(new_resource) else current_resource.load_current_value! end rescue Chef::Exceptions::CurrentValueDoesNotExist current_resource = nil end end @current_resource = current_resource end
to_s()
click to toggle source
# File lib/chef/resource/action_class.rb, line 28 def to_s "#{new_resource || "<no resource>"} action #{action ? action.inspect : "<no action>"}" end