Fix findbugs violations in md-sal - part 1
[controller.git] / opendaylight / md-sal / sal-inmemory-datastore / src / main / java / org / opendaylight / controller / md / sal / dom / store / impl / tree / ListenerNode.java
index b8396c8a9552cb62d5c639fec702de0172a52241..00be7d68b78effab5aa79e07c2bee6873d4b0ed2 100644 (file)
@@ -7,9 +7,9 @@
  */
 package org.opendaylight.controller.md.sal.dom.store.impl.tree;
 
-import com.google.common.base.Optional;
 import com.google.common.base.Preconditions;
 import java.util.Collection;
+import java.util.Optional;
 import org.opendaylight.controller.md.sal.dom.spi.RegistrationTreeNode;
 import org.opendaylight.controller.md.sal.dom.store.impl.DataChangeListenerRegistration;
 import org.opendaylight.yangtools.concepts.Identifiable;
@@ -23,7 +23,10 @@ import org.opendaylight.yangtools.yang.data.api.schema.tree.StoreTreeNode;
  * unclosed.
  *
  * @author Robert Varga
+ *
+ * @deprecated Use {@link RegistrationTreeNode} instead.
  */
+@Deprecated
 public class ListenerNode implements StoreTreeNode<ListenerNode>, Identifiable<PathArgument> {
     final RegistrationTreeNode<DataChangeListenerRegistration<?>> delegate;
 
@@ -40,7 +43,7 @@ public class ListenerNode implements StoreTreeNode<ListenerNode>, Identifiable<P
     public Optional<ListenerNode> getChild(final PathArgument child) {
         final RegistrationTreeNode<DataChangeListenerRegistration<?>> c = delegate.getExactChild(child);
         if (c == null) {
-            return Optional.absent();
+            return Optional.empty();
         }
 
         return Optional.of(new ListenerNode(c));
@@ -64,7 +67,11 @@ public class ListenerNode implements StoreTreeNode<ListenerNode>, Identifiable<P
 
     @Override
     public boolean equals(final Object obj) {
-        return delegate.equals(obj);
+        if (obj == null || getClass() != obj.getClass()) {
+            return false;
+        }
+
+        return delegate.equals(((ListenerNode)obj).delegate);
     }
 
     @Override