diff --git a/drivers/lumentum/src/main/java/org/onosproject/drivers/lumentum/LumentumFlowRuleProgrammable.java b/drivers/lumentum/src/main/java/org/onosproject/drivers/lumentum/LumentumFlowRuleProgrammable.java
index 7a25ad3..21f9b24 100644
--- a/drivers/lumentum/src/main/java/org/onosproject/drivers/lumentum/LumentumFlowRuleProgrammable.java
+++ b/drivers/lumentum/src/main/java/org/onosproject/drivers/lumentum/LumentumFlowRuleProgrammable.java
@@ -153,11 +153,10 @@
 
         // Cache the cookie/priority
         CrossConnectCache cache = this.handler().get(CrossConnectCache.class);
-        added.stream()
-                .forEach(xc -> cache.set(
-                        Objects.hash(data().deviceId(), xc.selector(), xc.treatment()),
-                        xc.id(),
-                        xc.priority()));
+        added.forEach(xc -> cache.set(
+                Objects.hash(data().deviceId(), xc.selector(), xc.treatment()),
+                xc.id(),
+                xc.priority()));
 
         return added;
     }
@@ -185,9 +184,8 @@
 
         // Remove flow rule from cache
         CrossConnectCache cache = this.handler().get(CrossConnectCache.class);
-        removed.stream()
-                .forEach(xc -> cache.remove(
-                        Objects.hash(data().deviceId(), xc.selector(), xc.treatment())));
+        removed.forEach(xc -> cache.remove(
+                Objects.hash(data().deviceId(), xc.selector(), xc.treatment())));
 
         return removed;
     }
