def set_load_balancer_policies_for_backend_server(lb_name, instance_port, policy_names)
if load_balancer = self.data[:load_balancers][lb_name]
policy_names.each do |policy_name|
unless load_balancer['Policies']['Proper'].find { |p| p['PolicyName'] == policy_name }
raise Fog::AWS::ELB::PolicyNotFound, "There is no policy with name #{policy_name} for load balancer #{lb_name}"
end
end
description = load_balancer['BackendServerDescriptionsRemote'].find{|d| d["InstancePort"] == instance_port } || {}
description["InstancePort"] = instance_port
description["PolicyNames"] = policy_names
load_balancer['BackendServerDescriptionsRemote'].delete_if{|d| d["InstancePort"] == instance_port }
load_balancer['BackendServerDescriptionsRemote'] << description
Excon::Response.new.tap do |response|
response.status = 200
response.body = {
'ResponseMetadata' => {
'RequestId' => Fog::AWS::Mock.request_id
}
}
end
else
raise Fog::AWS::ELB::NotFound
end
end