Class: Fog::Parsers::Redshift::AWS::DescribeReservedNodes

Inherits:
Base
  • Object
show all
Defined in:
lib/fog/aws/parsers/redshift/describe_reserved_nodes.rb

Instance Method Summary collapse

Instance Method Details

#end_element(name) ⇒ Object



41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
# File 'lib/fog/aws/parsers/redshift/describe_reserved_nodes.rb', line 41

def end_element(name)
  super
  case name
  when 'Marker'
    @response[name] = value
  when 'Duration', 'NodeCount'
    @reserved_node[name] = value.to_i
  when 'StartTime'
    @reserved_node[name] = Time.parse(value)
  when 'FixedPrice', 'UsagePrice'
    @reserved_node[name] = value.to_f
  when 'CurrencyCode', 'OfferingType', 'NodeType', 'ReservedNodeOfferingId', 'ReservedNodeId', 'State'
    @reserved_node[name] = value
  when 'RecurringChargeAmount'
    @recurring_charge[name] = value.to_f
  when 'RecurringChargeFrequency'
    @recurring_charge[name] = value
  when 'RecurringCharge'
    @reserved_node['RecurringCharges'] << {name => @recurring_charge}
    @recurring_charge = {}
  when 'ReservedNode'
    @response['ReservedNodes'] << {name => @reserved_node}
    @reserved_node = fresh_reserved_nodes
  end
end

#fresh_reserved_nodesObject



27
28
29
# File 'lib/fog/aws/parsers/redshift/describe_reserved_nodes.rb', line 27

def fresh_reserved_nodes
 {'RecurringCharges' => []}
end

#resetObject

:marker - (String) :reserved_nodes - (Array)

:reserved_node_id - (String)
:reserved_node_offering_id - (String)
:node_type - (String)
:start_time - (Time)
:duration - (Integer)
:fixed_price - (Numeric)
:usage_price - (Numeric)
:currency_code - (String)
:node_count - (Integer)
:state - (String)
:offering_type - (String)
:recurring_charges - (Array)
  :recurring_charge_amount - (Numeric)
  :recurring_charge_frequency - (String)


23
24
25
# File 'lib/fog/aws/parsers/redshift/describe_reserved_nodes.rb', line 23

def reset
  @response = { 'ReservedNodes' => [] }
end

#start_element(name, attrs = []) ⇒ Object



31
32
33
34
35
36
37
38
39
# File 'lib/fog/aws/parsers/redshift/describe_reserved_nodes.rb', line 31

def start_element(name, attrs = [])
  super
  case name
  when 'ReservedNodes'
    @reserved_node = fresh_reserved_nodes
  when 'RecurringCharges'
    @recurring_charge = {}
  end
end