# File lib/AWS/ELB/load_balancers.rb, line 17
17:       def create_load_balancer( options = {} )
18:         raise ArgumentError, "No :availability_zones provided" if options[:availability_zones].nil? || options[:availability_zones].empty?
19:         raise ArgumentError, "No :listeners provided" if options[:listeners].nil? || options[:listeners].empty?
20:         raise ArgumentError, "No :load_balancer_name provided" if options[:load_balancer_name].nil? || options[:load_balancer_name].empty?
21: 
22:         params = {}
23: 
24:         params.merge!(pathlist('AvailabilityZones.member', [options[:availability_zones]].flatten))
25:         params.merge!(pathhashlist('Listeners.member', [options[:listeners]].flatten, {
26:           :protocol => 'Protocol',
27:           :load_balancer_port => 'LoadBalancerPort',
28:           :instance_port => 'InstancePort'
29:         }))
30:         params['LoadBalancerName'] = options[:load_balancer_name]
31: 
32:         return response_generator(:action => "CreateLoadBalancer", :params => params)
33:       end