# File lib/elb/elb_interface.rb, line 91
    def create_load_balancer(name, availability_zones, listeners)
      params = hash_params('AvailabilityZones.member', availability_zones)
      i      = 1
      listeners.each do |l|
        params["Listeners.member.#{i}.Protocol"]         = "#{l[:protocol]}"
        params["Listeners.member.#{i}.LoadBalancerPort"] = "#{l[:load_balancer_port]}"
        params["Listeners.member.#{i}.InstancePort"]     = "#{l[:instance_port]}"
        i                                                += 1
      end
      params['LoadBalancerName'] = name

      @logger.info("Creating LoadBalancer called #{params['LoadBalancerName']}")

      link = generate_request("CreateLoadBalancer", params)
      resp = request_info(link, QElbCreateParser.new(:logger => @logger))

    rescue Exception
      on_exception
    end