def describe_vpn_gateways(*list_and_filters)
list, filters = vpc__split_list_and_filters(list_and_filters)
cache_for = (list.empty? && filters.empty?) ? :describe_vpn_gateways : nil
request_hash = {}
request_hash.merge!(amazonize_list('VpnGatewayId', list))
request_hash.merge!(amazonize_list(['Filter.?.Key','Filter.?.Value.?'], filters))
link = generate_request("DescribeVpnGateways", request_hash)
request_cache_or_info cache_for, link, QEc2DescribeVpnGatewaysParser, @@bench, cache_for
rescue Exception
on_exception
end