Bump yangtools to 13.0.0
[mdsal.git] / dom / mdsal-dom-spi / src / main / java / org / opendaylight / mdsal / dom / spi / DOMDataTreePrefixTable.java
index 87ddefd64aeb9dfe167c98085f6cb7b384331420..2907c949e0517eb924e3eb8fb4390a0d7a8172e6 100644 (file)
@@ -10,30 +10,28 @@ package org.opendaylight.mdsal.dom.spi;
 import com.google.common.annotations.Beta;
 import java.util.EnumMap;
 import java.util.Map;
-import javax.annotation.Nonnull;
-import javax.annotation.Nullable;
-import javax.annotation.concurrent.NotThreadSafe;
+import org.eclipse.jdt.annotation.NonNull;
+import org.eclipse.jdt.annotation.Nullable;
 import org.opendaylight.mdsal.common.api.LogicalDatastoreType;
 import org.opendaylight.mdsal.dom.api.DOMDataTreeIdentifier;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 /**
- * Prefix table indexed by {@link DOMDataTreeIdentifier}.
- * Stores values in tree and provides lookup of closest ancestor
+ * Prefix table indexed by {@link DOMDataTreeIdentifier}. Stores values in tree and provides lookup of closest ancestor.
+ * This class is not thread-safe.
  *
  * @param <V> Value type
  */
 @Beta
-@NotThreadSafe
 public final class DOMDataTreePrefixTable<V> {
-
     private static final Logger LOG = LoggerFactory.getLogger(DOMDataTreePrefixTable.class);
+
     private final Map<LogicalDatastoreType, DOMDataTreePrefixTableEntry<V>> roots =
         new EnumMap<>(LogicalDatastoreType.class);
 
     private DOMDataTreePrefixTable() {
-
+        // Hidden in purpose
     }
 
     public static <V> DOMDataTreePrefixTable<V> create() {
@@ -47,14 +45,9 @@ public final class DOMDataTreePrefixTable<V> {
      * @param prefix Prefix for lookup
      * @return closest non-null entry towards root or null if no entry towards root exists.
      */
-    @Nullable
-    public DOMDataTreePrefixTableEntry<V> lookup(@Nonnull final DOMDataTreeIdentifier prefix) {
-        final DOMDataTreePrefixTableEntry<V> t = roots.get(prefix.getDatastoreType());
-        if (t == null) {
-            return null;
-        }
-
-        return t.lookup(prefix.getRootIdentifier());
+    public @Nullable DOMDataTreePrefixTableEntry<V> lookup(final @NonNull DOMDataTreeIdentifier prefix) {
+        final var entryt = roots.get(prefix.datastore());
+        return entryt == null ? null : entryt.lookup(prefix.path());
     }
 
     /**
@@ -64,14 +57,14 @@ public final class DOMDataTreePrefixTable<V> {
      * @param value Value to be stored
      * @throws IllegalStateException If value is already stored for provided prefix
      */
-    public void store(@Nonnull final DOMDataTreeIdentifier prefix, @Nonnull final V value) {
-        DOMDataTreePrefixTableEntry<V> domDataTreePrefixTableEntry = roots.get(prefix.getDatastoreType());
+    public void store(final @NonNull DOMDataTreeIdentifier prefix, final @NonNull V value) {
+        var domDataTreePrefixTableEntry = roots.get(prefix.datastore());
         if (domDataTreePrefixTableEntry == null) {
             domDataTreePrefixTableEntry = new DOMDataTreePrefixTableEntry<>();
-            roots.put(prefix.getDatastoreType(), domDataTreePrefixTableEntry);
+            roots.put(prefix.datastore(), domDataTreePrefixTableEntry);
         }
 
-        domDataTreePrefixTableEntry.store(prefix.getRootIdentifier(), value);
+        domDataTreePrefixTableEntry.store(prefix.path(), value);
     }
 
     /**
@@ -81,14 +74,13 @@ public final class DOMDataTreePrefixTable<V> {
      *
      * @param prefix to be removed
      */
-    public void remove(@Nonnull final DOMDataTreeIdentifier prefix) {
-        final DOMDataTreePrefixTableEntry<V> t = roots.get(prefix.getDatastoreType());
-        if (t == null) {
-            LOG.warn("Shard registration {} points to non-existent table", t);
+    public void remove(final @NonNull DOMDataTreeIdentifier prefix) {
+        final var entry = roots.get(prefix.datastore());
+        if (entry == null) {
+            LOG.warn("Shard registration {} points to non-existent table", prefix);
             return;
         }
 
-        t.remove(prefix.getRootIdentifier());
+        entry.remove(prefix.path());
     }
-
 }