From 8f2f8fea7bd1317e5b3e08d35dc10762ed5477f6 Mon Sep 17 00:00:00 2001
From: Srinivasan Ramasubramanian <srini@bigswitch.com>
Date: Tue, 5 Feb 2013 09:44:39 -0800
Subject: [PATCH] Option to flush or not flush flow tables on a switch through
 properties file.

---
 .../core/internal/Controller.java                   | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)

diff --git a/src/main/java/net/floodlightcontroller/core/internal/Controller.java b/src/main/java/net/floodlightcontroller/core/internal/Controller.java
index 73f3bed66..f96ac671c 100644
--- a/src/main/java/net/floodlightcontroller/core/internal/Controller.java
+++ b/src/main/java/net/floodlightcontroller/core/internal/Controller.java
@@ -1795,7 +1795,17 @@ public class Controller implements IFloodlightProviderService,
         this.roleChanger = new RoleChanger(this);
         initVendorMessages();
         this.systemStartTime = System.currentTimeMillis();
-    }
+
+        String option = configParams.get("flushSwitchesOnReconnect");
+
+        if (option != null && option.equalsIgnoreCase("true")) {
+            this.setAlwaysClearFlowsOnSwAdd(true);
+            log.info("Flush switches on reconnect -- Enabled.");
+        } else {
+            this.setAlwaysClearFlowsOnSwAdd(false);
+            log.info("Flush switches on reconnect -- Disabled");
+        }
+     }
 
     /**
      * Startup all of the controller's components
@@ -2014,5 +2024,4 @@ public class Controller implements IFloodlightProviderService,
             switchDescSortedList.add(description);
         }
     }
-
 }
-- 
GitLab