Class: Inspec::Input::Event
- Inherits:
- 
      Object
      
        - Object
- Inspec::Input::Event
 
- Defined in:
- lib/inspec/objects/input.rb
Overview
Information about how the input obtained its value. Each time it changes, an Input::Event is added to the #events array.
Constant Summary collapse
- EVENT_PROPERTIES =
- [ :action, # :create, :set, :fetch :provider, # Name of the plugin :priority, # Priority of this plugin for resolving conflicts. 1-100, higher numbers win. :value, # New value, if provided. :file, # File containing the input-changing action, if known :line, # Line in file containing the input-changing action, if known :hit, # if action is :fetch, true if the remote source had the input ].freeze 
Instance Attribute Summary collapse
- 
  
    
      #value  ⇒ Object 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    Returns the value of attribute value. 
Class Method Summary collapse
Instance Method Summary collapse
- #diagnostic_string ⇒ Object
- 
  
    
      #initialize(properties = {})  ⇒ Event 
    
    
  
  
  
    constructor
  
  
  
  
  
  
  
    A new instance of Event. 
- #to_h ⇒ Object
- #value_has_been_set? ⇒ Boolean
Constructor Details
#initialize(properties = {}) ⇒ Event
Returns a new instance of Event.
| 39 40 41 42 43 44 45 46 47 48 49 50 | # File 'lib/inspec/objects/input.rb', line 39 def initialize(properties = {}) @value_has_been_set = false properties.each do |prop_name, prop_value| if EVENT_PROPERTIES.include? prop_name # OK, save the property send((prop_name.to_s + "=").to_sym, prop_value) else raise "Unrecognized property to Input::Event: #{prop_name}" end end end | 
Instance Attribute Details
#value ⇒ Object
Returns the value of attribute value.
| 37 38 39 | # File 'lib/inspec/objects/input.rb', line 37 def value @value end | 
Class Method Details
.probe_stack ⇒ Object
| 72 73 74 75 76 | # File 'lib/inspec/objects/input.rb', line 72 def self.probe_stack frames = caller_locations(2, 40) frames.reject! { |f| f.path && f.path.include?("/lib/inspec/") } frames.first end | 
Instance Method Details
#diagnostic_string ⇒ Object
| 62 63 64 | # File 'lib/inspec/objects/input.rb', line 62 def diagnostic_string to_h.reject { |_, val| val.nil? }.to_a.map { |pair| "#{pair[0]}: '#{pair[1]}'" }.join(", ") end | 
#to_h ⇒ Object
| 66 67 68 69 70 | # File 'lib/inspec/objects/input.rb', line 66 def to_h EVENT_PROPERTIES.each_with_object({}) do |prop, hash| hash[prop] = send(prop) end end | 
#value_has_been_set? ⇒ Boolean
| 58 59 60 | # File 'lib/inspec/objects/input.rb', line 58 def value_has_been_set? @value_has_been_set end |