class Fog::Parsers::AWS::Compute::DescribeInstanceStatus

Public Instance Methods

end_element(name) click to toggle source
# File lib/fog/aws/parsers/compute/describe_instance_status.rb, line 39
def end_element(name)
  case name
  #Simple closers
  when 'instanceId', 'availabilityZone'
    @instance[name] = value
  when 'nextToken', 'requestId'
    @response[name] = value
  when 'systemStatus', 'instanceState', 'instanceStatus', 'eventsSet'
    @inside = nil
  when 'item'
    case @inside
    when :eventsSet
      @instance['eventsSet'] << @item
    when :systemStatus, :instanceStatus
      @instance[@inside.to_s]['details'] << @item
    when nil
      @response['instanceStatusSet'] << @instance
    end
    @item = nil
  when 'code'
    case @inside
    when :eventsSet
      @item[name] = value
    when :instanceState
      @instance[@inside.to_s][name] = value.to_i
    end
  when 'description', 'notBefore', 'notAfter', 'name', 'status'
    @item.nil? ? (@instance[@inside.to_s][name] = value) : (@item[name] = value)
  end
end
new_instance!() click to toggle source
# File lib/fog/aws/parsers/compute/describe_instance_status.rb, line 6
def new_instance!
  @instance = { 'instanceState' => {}, 'systemStatus' => { 'details' => [] }, 'instanceStatus' => { 'details' => [] }, 'eventsSet' => [] }
end
new_item!() click to toggle source
# File lib/fog/aws/parsers/compute/describe_instance_status.rb, line 10
def new_item!
  @item = {}
end
reset() click to toggle source
# File lib/fog/aws/parsers/compute/describe_instance_status.rb, line 14
def reset
  @response = { 'instanceStatusSet' => [] }
  @inside = nil
end
start_element(name, attrs=[]) click to toggle source
Calls superclass method
# File lib/fog/aws/parsers/compute/describe_instance_status.rb, line 19
def start_element(name, attrs=[])
  super
  case name
  when 'item'
    if @inside
      new_item!
    else
      new_instance!
    end
  when 'systemStatus'
    @inside = :systemStatus
  when 'instanceState'
    @inside = :instanceState
  when 'instanceStatus'
    @inside = :instanceStatus
  when 'eventsSet'
    @inside = :eventsSet
  end
end