Fix modernization issues
[controller.git] / opendaylight / md-sal / sal-distributed-datastore / src / main / java / org / opendaylight / controller / cluster / datastore / entityownership / EntityOwnershipListenerActor.java
index f62f7492f612b464fef2cc67b887ca3421c51173..0a1bb923996f6bbd87bbc2f5cfafa24e3f185d2b 100644 (file)
@@ -7,57 +7,60 @@
  */
 package org.opendaylight.controller.cluster.datastore.entityownership;
 
+import static java.util.Objects.requireNonNull;
+
 import akka.actor.Props;
 import akka.japi.Creator;
-import com.google.common.base.Preconditions;
+import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
 import org.opendaylight.controller.cluster.common.actor.AbstractUntypedActor;
-import org.opendaylight.controller.cluster.datastore.entityownership.messages.EntityOwnershipChanged;
-import org.opendaylight.controller.md.sal.common.api.clustering.EntityOwnershipListener;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
+import org.opendaylight.mdsal.eos.dom.api.DOMEntityOwnershipChange;
+import org.opendaylight.mdsal.eos.dom.api.DOMEntityOwnershipListener;
 
 /**
  * An actor which is responsible for notifying an EntityOwnershipListener of changes.
  *
  * @author Thomas Pantelis
  */
-class EntityOwnershipListenerActor extends AbstractUntypedActor {
-    private static final Logger LOG = LoggerFactory.getLogger(EntityOwnershipListenerActor.class);
-
-    private final EntityOwnershipListener listener;
+final class EntityOwnershipListenerActor extends AbstractUntypedActor {
+    private final DOMEntityOwnershipListener listener;
 
-    private EntityOwnershipListenerActor(EntityOwnershipListener listener) {
+    private EntityOwnershipListenerActor(final DOMEntityOwnershipListener listener) {
         this.listener = listener;
     }
 
     @Override
-    protected void handleReceive(Object message) {
-        if(message instanceof EntityOwnershipChanged) {
-            onEntityOwnershipChanged((EntityOwnershipChanged)message);
+    protected void handleReceive(final Object message) {
+        if (message instanceof DOMEntityOwnershipChange) {
+            onEntityOwnershipChanged((DOMEntityOwnershipChange)message);
+        } else {
+            unknownMessage(message);
         }
     }
 
-    private void onEntityOwnershipChanged(EntityOwnershipChanged change) {
+    @SuppressWarnings("checkstyle:IllegalCatch")
+    private void onEntityOwnershipChanged(final DOMEntityOwnershipChange change) {
         LOG.debug("Notifying EntityOwnershipListener {}: {}", listener, change);
 
         try {
-            listener.ownershipChanged(change.getEntity(), change.wasOwner(), change.isOwner());
+            listener.ownershipChanged(change);
         } catch (Exception e) {
             LOG.error("Error notifying listener {}", listener, e);
         }
     }
 
-    static Props props(EntityOwnershipListener listener) {
+    static Props props(final DOMEntityOwnershipListener listener) {
         return Props.create(new EntityOwnershipListenerCreator(listener));
     }
 
     private static final class EntityOwnershipListenerCreator implements Creator<EntityOwnershipListenerActor> {
         private static final long serialVersionUID = 1L;
 
-        private final EntityOwnershipListener listener;
+        @SuppressFBWarnings(value = "SE_BAD_FIELD", justification = "This field is not Serializable but we don't "
+                + "create remote instances of this actor and thus don't need it to be Serializable.")
+        private final DOMEntityOwnershipListener listener;
 
-        EntityOwnershipListenerCreator(EntityOwnershipListener listener) {
-            this.listener = Preconditions.checkNotNull(listener);
+        EntityOwnershipListenerCreator(final DOMEntityOwnershipListener listener) {
+            this.listener = requireNonNull(listener);
         }
 
         @Override