Support openstack controller node status check feature
Change-Id: I285b977ae32dd6d140aca7f25b00962db77b1054
diff --git a/apps/openstacknetworking/app/src/main/java/org/onosproject/openstacknetworking/impl/OpenstackRoutingArpHandler.java b/apps/openstacknetworking/app/src/main/java/org/onosproject/openstacknetworking/impl/OpenstackRoutingArpHandler.java
index 2919072..0319d40 100644
--- a/apps/openstacknetworking/app/src/main/java/org/onosproject/openstacknetworking/impl/OpenstackRoutingArpHandler.java
+++ b/apps/openstacknetworking/app/src/main/java/org/onosproject/openstacknetworking/impl/OpenstackRoutingArpHandler.java
@@ -701,7 +701,7 @@
public boolean isRelevant(OpenstackNodeEvent event) {
// do not allow to proceed without leadership
NodeId leader = leadershipService.getLeader(appId.name());
- return Objects.equals(localNodeId, leader);
+ return Objects.equals(localNodeId, leader) && event.subject().type() == GATEWAY;
}
@Override
@@ -709,17 +709,13 @@
OpenstackNode osNode = event.subject();
switch (event.type()) {
case OPENSTACK_NODE_COMPLETE:
- if (osNode.type().equals(GATEWAY)) {
- setDefaultArpRule(osNode, true);
- setFloatingIpArpRuleForGateway(osNode, true);
- }
+ setDefaultArpRule(osNode, true);
+ setFloatingIpArpRuleForGateway(osNode, true);
break;
case OPENSTACK_NODE_INCOMPLETE:
- if (osNode.type().equals(GATEWAY)) {
- setDefaultArpRule(osNode, false);
- setFloatingIpArpRuleForGateway(osNode, false);
- }
+ setDefaultArpRule(osNode, false);
+ setFloatingIpArpRuleForGateway(osNode, false);
break;
default:
break;