1
0
Fork 0
mirror of https://github.com/fog/fog.git synced 2022-11-09 13:51:43 -05:00

[elb] consolidate to use AWS.indexed_params

This commit is contained in:
geemus 2010-05-27 17:14:07 -07:00
parent 333de24eb5
commit bfe11b9046
8 changed files with 9 additions and 18 deletions

View file

@ -33,15 +33,6 @@ 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

View file

@ -31,9 +31,9 @@ module Fog
listener_instance_port.push(listener['InstancePort'])
end
params.merge!(ELB.indexed_param('Listeners.member.%.Protocol', listener_protocol, 1))
params.merge!(ELB.indexed_param('Listeners.member.%.LoadBalancerPort', listener_lb_port, 1))
params.merge!(ELB.indexed_param('Listeners.member.%.InstancePort', listener_instance_port, 1))
params.merge!(AWS.indexed_param('Listeners.member.%.Protocol', listener_protocol, 1))
params.merge!(AWS.indexed_param('Listeners.member.%.LoadBalancerPort', listener_lb_port, 1))
params.merge!(AWS.indexed_param('Listeners.member.%.InstancePort', listener_instance_port, 1))
request({
'Action' => 'CreateLoadBalancer',

View file

@ -18,7 +18,7 @@ module Fog
# * 'Instances'<~Array> - array of hashes describing instances currently enabled
# * 'InstanceId'<~String>
def deregister_instances_from_load_balancer(instance_ids, lb_name)
params = ELB.indexed_param('Instances.member.%.InstanceId', [*instance_ids], 1)
params = AWS.indexed_param('Instances.member.%.InstanceId', [*instance_ids], 1)
request({
'Action' => 'DeregisterInstancesFromLoadBalancer',
'LoadBalancerName' => lb_name,

View file

@ -21,7 +21,7 @@ module Fog
# * 'InstanceId'<~String>
# * 'ReasonCode'<~String>
def describe_instance_health(lb_name, instance_ids = [])
params = ELB.indexed_param('Instances.member.%.InstanceId', [*instance_ids], 1)
params = AWS.indexed_param('Instances.member.%.InstanceId', [*instance_ids], 1)
request({
'Action' => 'DescribeInstanceHealth',
'LoadBalancerName' => lb_name,

View file

@ -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 = ELB.indexed_param('LoadBalancerNames.member', [*lb_name], 1)
params = AWS.indexed_param('LoadBalancerNames.member', [*lb_name], 1)
request({
'Action' => 'DescribeLoadBalancers',
:parser => Fog::Parsers::AWS::ELB::DescribeLoadBalancers.new

View file

@ -17,7 +17,7 @@ module Fog
# * 'DisableAvailabilityZonesForLoadBalancerResult'<~Hash>:
# * 'AvailabilityZones'<~Array> - array of strings describing instances currently enabled
def disable_availability_zones_for_load_balancer(availability_zones, lb_name)
params = ELB.indexed_param('AvailabilityZones.member', [*availability_zones], 1)
params = AWS.indexed_param('AvailabilityZones.member', [*availability_zones], 1)
request({
'Action' => 'DisableAvailabilityZonesForLoadBalancer',
'LoadBalancerName' => lb_name,

View file

@ -17,7 +17,7 @@ module Fog
# * 'EnableAvailabilityZonesForLoadBalancerResult'<~Hash>:
# * 'AvailabilityZones'<~Array> - array of strings describing instances currently enabled
def enable_availability_zones_for_load_balancer(availability_zones, lb_name)
params = ELB.indexed_param('AvailabilityZones.member', [*availability_zones], 1)
params = AWS.indexed_param('AvailabilityZones.member', [*availability_zones], 1)
request({
'Action' => 'EnableAvailabilityZonesForLoadBalancer',
'LoadBalancerName' => lb_name,

View file

@ -18,7 +18,7 @@ module Fog
# * 'Instances'<~Array> - array of hashes describing instances currently enabled
# * 'InstanceId'<~String>
def register_instances_with_load_balancer(instance_ids, lb_name)
params = ELB.indexed_param('Instances.member.%.InstanceId', [*instance_ids], 1)
params = AWS.indexed_param('Instances.member.%.InstanceId', [*instance_ids], 1)
request({
'Action' => 'RegisterInstancesWithLoadBalancer',
'LoadBalancerName' => lb_name,