diff --git a/lib/fog/aws/elb.rb b/lib/fog/aws/elb.rb index 15df342ef..59f739b57 100644 --- a/lib/fog/aws/elb.rb +++ b/lib/fog/aws/elb.rb @@ -19,12 +19,21 @@ module Fog Fog::AWS::ELB::Real.new(options) end + def self.indexed_param(key, values, idx_offset = 0) + params = {} + key.concat(".%") unless key.include?("%") + [*values].each_with_index do |value, index| + params["#{key.gsub("%", (index + idx_offset).to_s)}"] = value + end + return params + end + class Real # Initialize connection to ELB # # ==== Notes - # options parameter must include values for :aws_access_key_id and + # options parameter must include values for :aws_access_key_id and # :aws_secret_access_key in order to create a connection # # ==== Examples diff --git a/lib/fog/aws/requests/elb/describe_load_balancers.rb b/lib/fog/aws/requests/elb/describe_load_balancers.rb index 32c0d6833..72a79796a 100644 --- a/lib/fog/aws/requests/elb/describe_load_balancers.rb +++ b/lib/fog/aws/requests/elb/describe_load_balancers.rb @@ -36,7 +36,7 @@ module Fog # * 'AvailabilityZones'<~Array> - list of availability zones covered by this load balancer # * 'Instances'<~Array> - list of instances that the load balancer balances between def describe_load_balancers(lb_name = []) - params = AWS.indexed_param('LoadBalancerNames.member', [*lb_name]) + params = ELB.indexed_param('LoadBalancerNames.member', [*lb_name], 1) request({ 'Action' => 'DescribeLoadBalancers', :parser => Fog::Parsers::AWS::ELB::DescribeLoadBalancers.new