Repository: stratos
Updated Branches:
  refs/heads/stratos-4.1.x cb50e9a44 -> 31cbfd516


Fixing port mapping issue in lvs extension


Project: http://git-wip-us.apache.org/repos/asf/stratos/repo
Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/31cbfd51
Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/31cbfd51
Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/31cbfd51

Branch: refs/heads/stratos-4.1.x
Commit: 31cbfd5166ab187bfa50038d2233e82fa6f6c34e
Parents: cb50e9a
Author: Imesh Gunaratne <[email protected]>
Authored: Fri Aug 28 18:41:05 2015 +0530
Committer: Imesh Gunaratne <[email protected]>
Committed: Fri Aug 28 18:41:05 2015 +0530

----------------------------------------------------------------------
 .../stratos/lvs/extension/LVSConfigWriter.java    | 18 +++++++++++-------
 1 file changed, 11 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/stratos/blob/31cbfd51/extensions/load-balancer/lvs-extension/src/main/java/org/apache/stratos/lvs/extension/LVSConfigWriter.java
----------------------------------------------------------------------
diff --git 
a/extensions/load-balancer/lvs-extension/src/main/java/org/apache/stratos/lvs/extension/LVSConfigWriter.java
 
b/extensions/load-balancer/lvs-extension/src/main/java/org/apache/stratos/lvs/extension/LVSConfigWriter.java
index c3beb30..1a09c5c 100644
--- 
a/extensions/load-balancer/lvs-extension/src/main/java/org/apache/stratos/lvs/extension/LVSConfigWriter.java
+++ 
b/extensions/load-balancer/lvs-extension/src/main/java/org/apache/stratos/lvs/extension/LVSConfigWriter.java
@@ -72,11 +72,7 @@ public class LVSConfigWriter {
                String state;
                for (Service service : topology.getServices()) {
                        for (Cluster cluster : service.getClusters()) {
-                               if ((service.getPorts() == null) || 
(service.getPorts().size() == 0)) {
-                                       throw new RuntimeException(
-                                                       String.format("No ports 
found in service: %s", service.getServiceName()));
-                               }
-                               generateConfigurationForCluster(cluster, 
service.getPorts(), configurationBuilder, virtualIPBuilder,
+                               generateConfigurationForCluster(cluster, 
configurationBuilder, virtualIPBuilder,
                                                                
virtualIPsForServices, scheduleAlgo,isKeepAlived);
                        }
                }
@@ -144,12 +140,20 @@ public class LVSConfigWriter {
         * }
         *
         * @param cluster
-        * @param ports
         * @param text
         */
-       private void generateConfigurationForCluster(Cluster cluster, 
Collection<Port> ports, StringBuilder text,
+       private void generateConfigurationForCluster(Cluster cluster, 
StringBuilder text,
                                                     StringBuilder virtualIPs, 
String virtualIPsForServices,
                                                     String 
scheduleAlgo,boolean isKeepAlived) {
+
+               if((cluster.getMembers() == null) || 
(cluster.getMembers().size() == 0)) {
+                       return;
+               }
+
+               // Find port mappings
+               Member firstMember = (Member) cluster.getMembers().toArray()[0];
+               Collection<Port> ports = firstMember.getPorts();
+
                String commandClear = "ipvsadm --clear";
                try {
                        CommandUtils.executeCommand(commandClear);

Reply via email to