RemoteDeviceDataBroker proxy
[netconf.git] / opendaylight / netconf / abstract-topology / src / main / java / org / opendaylight / netconf / topology / util / TopologyRoleChangeStrategy.java
index de9f7aca39aa45180603f40bfb32cee4ae3a21c9..94cd8799af1122c56a26a038f65751f856fb28f7 100644 (file)
@@ -49,7 +49,7 @@ public class TopologyRoleChangeStrategy implements RoleChangeStrategy, Clustered
     private NodeListener ownershipCandidate;
     private final String entityType;
     // use topologyId as entityName
-    private final String entityName;
+    private final Entity entity;
 
     private EntityOwnershipCandidateRegistration candidateRegistration = null;
     private EntityOwnershipListenerRegistration ownershipListenerRegistration = null;
@@ -63,7 +63,7 @@ public class TopologyRoleChangeStrategy implements RoleChangeStrategy, Clustered
         this.dataBroker = dataBroker;
         this.entityOwnershipService = entityOwnershipService;
         this.entityType = entityType;
-        this.entityName = entityName;
+        this.entity = new Entity(entityType, entityName);
 
         datastoreListenerRegistration = null;
     }
@@ -76,7 +76,7 @@ public class TopologyRoleChangeStrategy implements RoleChangeStrategy, Clustered
             if (candidateRegistration != null) {
                 unregisterRoleCandidate();
             }
-            candidateRegistration = entityOwnershipService.registerCandidate(new Entity(entityType, entityName));
+            candidateRegistration = entityOwnershipService.registerCandidate(entity);
             ownershipListenerRegistration = entityOwnershipService.registerListener(entityType, this);
         } catch (CandidateAlreadyRegisteredException e) {
             LOG.error("Candidate already registered for election", e);
@@ -92,6 +92,11 @@ public class TopologyRoleChangeStrategy implements RoleChangeStrategy, Clustered
         ownershipListenerRegistration = null;
     }
 
+    @Override
+    public boolean isCandidateRegistered() {
+        return entityOwnershipService.isCandidateRegistered(entity);
+    }
+
     @Override
     public void onRoleChanged(RoleChangeDTO roleChangeDTO) {
         if (roleChangeDTO.isOwner()) {