BUG-6890: Enabling echo timout configurable through 17/46717/3
authorShuva Kar <shuva.jyoti.kar@ericsson.com>
Mon, 10 Oct 2016 08:27:43 +0000 (13:57 +0530)
committerShuva Jyoti Kar <shuva.jyoti.kar@ericsson.com>
Fri, 14 Oct 2016 14:44:47 +0000 (14:44 +0000)
config file

Change-Id: I3ff729b418809e8342a491ac6ab2a102f5a1ffe5
Signed-off-by: Shuva Kar <shuva.jyoti.kar@ericsson.com>
openflowplugin-api/src/main/java/org/opendaylight/openflowplugin/api/openflow/connection/ConnectionManager.java
openflowplugin-blueprint-config/src/main/resources/initial/openflowplugin.cfg
openflowplugin-impl/src/main/java/org/opendaylight/openflowplugin/impl/OpenFlowPluginProviderImpl.java
openflowplugin-impl/src/main/java/org/opendaylight/openflowplugin/impl/connection/ConnectionManagerImpl.java

index edabe9e8470d83a26bc3eb5d7e25411305f3a375..045fdcc760ad0132e1b918bd8756149be1b16900 100644 (file)
@@ -27,4 +27,5 @@ public interface ConnectionManager extends SwitchConnectionHandler {
      * @param deviceConnectedHandler
      */
     void setDeviceConnectedHandler(DeviceConnectedHandler deviceConnectedHandler);
+    void setEchoReplyTimeout(long echoReplyTimeout);
 }
index 417dd37828d032f3da1dede04f47b49154febfa4..6716ba6f8a7981ee4d723e47d835677a95abb829 100644 (file)
@@ -14,3 +14,6 @@ barrier-interval-timeout-limit=500
 #Maximum outbound queue depth
 #requires to be configured before switch connection, else require a switch restart
 barrier-count-limit=25600
+#Echo reply timeout specified on the controller side beyond which the connection is deemed dead
+#requires to be configured before switch connection, else require a switch restart
+echo-reply-timeout=2000
index f65ddd0fa07d8f307eb6d77fafd08fe9ad004b55..5001ca1d06a40afd6d94877ebb003a40e865088f 100644 (file)
@@ -282,9 +282,12 @@ public class OpenFlowPluginProviderImpl implements OpenFlowPluginProvider, OpenF
         if(deviceManager != null && props.containsKey("barrier-count-limit")){
             deviceManager.setBarrierCountLimit(Integer.valueOf(props.get("barrier-count-limit").toString()));
         }
-        if(deviceManager !=null && props.containsKey("barrier-interval-timeout-limit")){
+        if(deviceManager != null && props.containsKey("barrier-interval-timeout-limit")){
             deviceManager.setBarrierInterval(Long.valueOf(props.get("barrier-interval-timeout-limit").toString()));
         }
+        if (connectionManager != null && props.containsKey("echo-reply-timeout") ){
+            connectionManager.setEchoReplyTimeout(Long.valueOf(props.get("echo-reply-timeout").toString()));
+        }
     }
 
     private static void registerMXBean(final MessageIntelligenceAgency messageIntelligenceAgency) {
index 1cce64da358fe9875035def550f363ba5ea744de..f9bc7d4c603a947656a1a0c22a958ccb956ee534 100644 (file)
@@ -38,7 +38,7 @@ public class ConnectionManagerImpl implements ConnectionManager {
     private static final Logger LOG = LoggerFactory.getLogger(ConnectionManagerImpl.class);
     private static final boolean BITMAP_NEGOTIATION_ENABLED = true;
     private DeviceConnectedHandler deviceConnectedHandler;
-    private final long echoReplyTimeout;
+    private long echoReplyTimeout;
     private final ThreadPoolExecutor threadPool;
 
     public ConnectionManagerImpl(long echoReplyTimeout, final ThreadPoolExecutor threadPool) {
@@ -101,4 +101,8 @@ public class ConnectionManagerImpl implements ConnectionManager {
     public void setDeviceConnectedHandler(final DeviceConnectedHandler deviceConnectedHandler) {
         this.deviceConnectedHandler = deviceConnectedHandler;
     }
+
+    public void setEchoReplyTimeout(long echoReplyTimeout){
+        this.echoReplyTimeout = echoReplyTimeout;
+    }
 }