Updated SDN-IP to use the Intent framework batch-based intents.
Also, created a local cache of IPv4-to-MAC address mapping,
to avoid relatively costly hostService.getHostsByIp() calls
per added route.
Change-Id: I8abed378985708e883fd99e85c54b01f38756515
diff --git a/apps/sdnip/src/test/java/org/onlab/onos/sdnip/SdnIpTest.java b/apps/sdnip/src/test/java/org/onlab/onos/sdnip/SdnIpTest.java
index ab26766..4dfe3cc 100644
--- a/apps/sdnip/src/test/java/org/onlab/onos/sdnip/SdnIpTest.java
+++ b/apps/sdnip/src/test/java/org/onlab/onos/sdnip/SdnIpTest.java
@@ -236,9 +236,7 @@
TestUtils.setField(intentSynchronizer, "isActivatedLeader", true);
// Add route updates
- for (RouteUpdate update : routeUpdates) {
- router.processRouteAdd(update.routeEntry());
- }
+ router.processRouteUpdates(routeUpdates);
latch.await(5000, TimeUnit.MILLISECONDS);
@@ -304,17 +302,19 @@
TestUtils.setField(intentSynchronizer, "isActivatedLeader", true);
// Send the add updates first
- for (RouteUpdate update : routeUpdates) {
- router.processRouteAdd(update.routeEntry());
- }
+ router.processRouteUpdates(routeUpdates);
// Give some time to let the intents be submitted
installCount.await(5000, TimeUnit.MILLISECONDS);
// Send the DELETE updates
+ List<RouteUpdate> deleteRouteUpdates = new ArrayList<>();
for (RouteUpdate update : routeUpdates) {
- router.processRouteDelete(update.routeEntry());
+ RouteUpdate deleteUpdate = new RouteUpdate(RouteUpdate.Type.DELETE,
+ update.routeEntry());
+ deleteRouteUpdates.add(deleteUpdate);
}
+ router.processRouteUpdates(deleteRouteUpdates);
deleteCount.await(5000, TimeUnit.MILLISECONDS);