Fixed to add gateway node from ICMP handler also
And made the gateway store or group update synchronized
Change-Id: I10fc391e9059772e5da8322997a994db26a096b3
diff --git a/apps/openstacknetworking/routing/src/main/java/org/onosproject/openstacknetworking/routing/OpenstackRoutingManager.java b/apps/openstacknetworking/routing/src/main/java/org/onosproject/openstacknetworking/routing/OpenstackRoutingManager.java
index 09b4b8a..970a331 100644
--- a/apps/openstacknetworking/routing/src/main/java/org/onosproject/openstacknetworking/routing/OpenstackRoutingManager.java
+++ b/apps/openstacknetworking/routing/src/main/java/org/onosproject/openstacknetworking/routing/OpenstackRoutingManager.java
@@ -481,15 +481,17 @@
switch (event.type()) {
case COMPLETE:
log.info("COMPLETE node {} detected", node.hostname());
- if (node.type() == GATEWAY) {
- GatewayNode gnode = GatewayNode.builder()
- .gatewayDeviceId(node.intBridge())
- .dataIpAddress(node.dataIp().getIp4Address())
- .uplinkIntf(node.externalPortName().get())
- .build();
- gatewayService.addGatewayNode(gnode);
- }
- eventExecutor.execute(OpenstackRoutingManager.this::reloadRoutingRules);
+ eventExecutor.execute(() -> {
+ if (node.type() == GATEWAY) {
+ GatewayNode gnode = GatewayNode.builder()
+ .gatewayDeviceId(node.intBridge())
+ .dataIpAddress(node.dataIp().getIp4Address())
+ .uplinkIntf(node.externalPortName().get())
+ .build();
+ gatewayService.addGatewayNode(gnode);
+ }
+ reloadRoutingRules();
+ });
break;
case INIT:
case DEVICE_CREATED: