Unset proper delegate on InOrderFlowObjectiveManager deactivate event

Change-Id: I59768e2de6876ffb5d48a9cd59a8ab66c0191e01
(cherry picked from commit 10c9cc418562f2deece03edc942eac2d0a22805d)
diff --git a/core/net/src/main/java/org/onosproject/net/flowobjective/impl/InOrderFlowObjectiveManager.java b/core/net/src/main/java/org/onosproject/net/flowobjective/impl/InOrderFlowObjectiveManager.java
index 81e224b..50c42dd 100644
--- a/core/net/src/main/java/org/onosproject/net/flowobjective/impl/InOrderFlowObjectiveManager.java
+++ b/core/net/src/main/java/org/onosproject/net/flowobjective/impl/InOrderFlowObjectiveManager.java
@@ -159,6 +159,10 @@
         nextCacheEventExecutor.shutdown();
 
         super.deactivate();
+        // Due to the check in the AbstractStore we have to pass the right instance
+        // to perform a correct clean up. The unset delegate in the super class
+        // will not have any effect
+        flowObjectiveStore.unsetDelegate(delegate);
     }
 
     /**