1
0
Fork 0
mirror of https://github.com/fog/fog.git synced 2022-11-09 13:51:43 -05:00
fog--fog/lib/fog/aws/parsers/redshift/cluster_subnet_group_parser.rb

51 lines
1.4 KiB
Ruby

module Fog
module Parsers
module Redshift
module AWS
class ClusterSubnetGroupParser < Fog::Parsers::Base
# :cluster_subnet_group_name - (String)
# :description - (String)
# :vpc_id - (String)
# :subnet_group_status - (String)
# :subnets - (Array)
# :subnet_identifier - (String)
# :subnet_availability_zone - (Hash)
# :name - (String)
# :subnet_status - (String)
def reset
@response = { 'Subnets' => [] }
end
def fresh_subnet
{'SubnetAvailabilityZone'=>{}}
end
def start_element(name, attrs = [])
super
case name
when 'Subnets'
@subnet = fresh_subnet
end
end
def end_element(name)
super
case name
when 'ClusterSubnetGroupName', 'Desciption', 'VpcId', 'SubnetGroupStatus'
@response[name] = value
when 'SubnetIdentifier', 'SubnetStatus'
@subnet[name] = value
when 'Name'
@subnet['SubnetAvailabilityZone'][name] = value
when 'Subnet'
@response['Subnets'] << {name => @subnet}
@subnet = fresh_subnet
end
end
end
end
end
end
end