From 3dc0eed71d8c6b39d16b003f779949ba13abdf10 Mon Sep 17 00:00:00 2001 From: Nitin Kumar Maharana Date: Tue, 6 Dec 2016 13:57:21 +0530 Subject: [PATCH] CLOUDSTACK-9618: Load Balancer configuration page does not have "Source" method in the drop down list Added the source method to supported algorithm list in Netscaler element. Added a validation check. --- .../src/com/cloud/network/element/NetscalerElement.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/plugins/network-elements/netscaler/src/com/cloud/network/element/NetscalerElement.java b/plugins/network-elements/netscaler/src/com/cloud/network/element/NetscalerElement.java index 53225be61e1..dbf6d9a4b69 100644 --- a/plugins/network-elements/netscaler/src/com/cloud/network/element/NetscalerElement.java +++ b/plugins/network-elements/netscaler/src/com/cloud/network/element/NetscalerElement.java @@ -232,6 +232,10 @@ public class NetscalerElement extends ExternalLoadBalancerDeviceManagerImpl impl @Override public boolean validateLBRule(Network network, LoadBalancingRule rule) { + if (canHandle(network, Service.Lb)) { + String algo = rule.getAlgorithm(); + return (algo.equals("roundrobin") || algo.equals("leastconn") || algo.equals("source")); + } return true; } @@ -260,7 +264,7 @@ public class NetscalerElement extends ExternalLoadBalancerDeviceManagerImpl impl Map lbCapabilities = new HashMap(); // Specifies that the RoundRobin and Leastconn algorithms are supported for load balancing rules - lbCapabilities.put(Capability.SupportedLBAlgorithms, "roundrobin,leastconn"); + lbCapabilities.put(Capability.SupportedLBAlgorithms, "roundrobin, leastconn, source"); // specifies that Netscaler network element can provided both shared and isolation modes lbCapabilities.put(Capability.SupportedLBIsolation, "dedicated, shared");