diff --git a/apps/route-service/app/src/main/java/org/onosproject/routeservice/store/DefaultRouteTable.java b/apps/route-service/app/src/main/java/org/onosproject/routeservice/store/DefaultRouteTable.java
index c24f005..2bacf07 100644
--- a/apps/route-service/app/src/main/java/org/onosproject/routeservice/store/DefaultRouteTable.java
+++ b/apps/route-service/app/src/main/java/org/onosproject/routeservice/store/DefaultRouteTable.java
@@ -202,7 +202,8 @@
     public Collection<RouteSet> getRoutesForNextHops(Collection<IpAddress> nextHops) {
         // First create a reduced snapshot of the store iterating one time the map
         Map<String, Collection<? extends RawRoute>> filteredRouteStore = new HashMap<>();
-        routes.values().stream()
+        routes.stream()
+                .map(Map.Entry::getValue)
                 .filter(r -> nextHops.contains(IpAddress.valueOf(r.nextHop())))
                 .forEach(r -> filteredRouteStore.computeIfAbsent(r.prefix, k -> {
                     // We need to get all the routes because the resolve logic
diff --git a/core/net/src/main/java/org/onosproject/net/packet/impl/PacketManager.java b/core/net/src/main/java/org/onosproject/net/packet/impl/PacketManager.java
index a020da7..38cfd76 100644
--- a/core/net/src/main/java/org/onosproject/net/packet/impl/PacketManager.java
+++ b/core/net/src/main/java/org/onosproject/net/packet/impl/PacketManager.java
@@ -285,7 +285,6 @@
             } else if (request.deviceId().get().equals(device.id())) {
                 pushRule(device, request);
             }
-
         }
     }
 
diff --git a/core/store/dist/src/main/java/org/onosproject/store/packet/impl/DistributedPacketStore.java b/core/store/dist/src/main/java/org/onosproject/store/packet/impl/DistributedPacketStore.java
index 50e8900..2c86d4a 100644
--- a/core/store/dist/src/main/java/org/onosproject/store/packet/impl/DistributedPacketStore.java
+++ b/core/store/dist/src/main/java/org/onosproject/store/packet/impl/DistributedPacketStore.java
@@ -246,7 +246,7 @@
 
         private List<PacketRequest> requests() {
             List<PacketRequest> list = Lists.newArrayList();
-            requests.values().forEach(v -> list.add(v));
+            requests.forEach(entry -> list.add(entry.getValue()));
             list.sort((o1, o2) -> o1.priority().priorityValue() - o2.priority().priorityValue());
             return list;
         }
