class ItamaeMitsurin::Resource::Base::EvalContext
Attributes
attributes[R]
not_if_command[R]
notifications[R]
only_if_command[R]
subscriptions[R]
verify_commands[R]
Public Class Methods
new(resource)
click to toggle source
# File lib/itamae-mitsurin/resource/base.rb, line 16 def initialize(resource) @resource = resource @attributes = Hashie::Mash.new @notifications = [] @subscriptions = [] @verify_commands = [] end
Public Instance Methods
method_missing(method, *args, &block)
click to toggle source
Calls superclass method
# File lib/itamae-mitsurin/resource/base.rb, line 29 def method_missing(method, *args, &block) if @resource.class.defined_attributes[method] if args.size == 1 return @attributes[method] = args.first elsif args.size == 0 && block_given? return @attributes[method] = block elsif args.size == 0 return @attributes[method] end end super end
node()
click to toggle source
# File lib/itamae-mitsurin/resource/base.rb, line 59 def node @resource.recipe.runner.node end
not_if(command)
click to toggle source
# File lib/itamae-mitsurin/resource/base.rb, line 55 def not_if(command) @not_if_command = command end
notifies(action, resource_desc, timing = :delay)
click to toggle source
# File lib/itamae-mitsurin/resource/base.rb, line 43 def notifies(action, resource_desc, timing = :delay) @notifications << Notification.create(@resource, action, resource_desc, timing) end
only_if(command)
click to toggle source
# File lib/itamae-mitsurin/resource/base.rb, line 51 def only_if(command) @only_if_command = command end
respond_to_missing?(method, include_private = false)
click to toggle source
Calls superclass method
# File lib/itamae-mitsurin/resource/base.rb, line 25 def respond_to_missing?(method, include_private = false) @resource.class.defined_attributes.has_key?(method) || super end
run_command(*args)
click to toggle source
# File lib/itamae-mitsurin/resource/base.rb, line 63 def run_command(*args) @resource.recipe.runner.backend.run_command(*args) end
subscribes(action, resource_desc, timing = :delay)
click to toggle source
# File lib/itamae-mitsurin/resource/base.rb, line 47 def subscribes(action, resource_desc, timing = :delay) @subscriptions << Subscription.create(@resource, action, resource_desc, timing) end
verify(command)
click to toggle source
Experimental
# File lib/itamae-mitsurin/resource/base.rb, line 68 def verify(command) @verify_commands << command end