Use HierarchicalIdentifier 86/97886/5
authorRobert Varga <robert.varga@pantheon.tech>
Thu, 14 Oct 2021 18:29:19 +0000 (20:29 +0200)
committerRobert Varga <nite@hq.sk>
Wed, 20 Oct 2021 21:55:56 +0000 (21:55 +0000)
We have a number of identifiers which do not actually implement
Identifier concept but rather Path. We have a replacement for Path,
so let's use it, improving contracts the process of doing so.

Change-Id: Idf506084d1b67993f4a7d37efd23b5fca234375f
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
binding/yang-binding/src/main/java/org/opendaylight/yangtools/yang/binding/InstanceIdentifier.java
common/mdsal-common-api/src/test/java/org/opendaylight/mdsal/common/api/DataValidationFailedExceptionTest.java
dom/mdsal-dom-api/src/main/java/org/opendaylight/mdsal/dom/api/DOMDataTreeIdentifier.java

index d7edf405704af947a850da92e6803e7daca69006..2b5a5e4cf0cb0a37a63806112fee4283d3831f18 100644 (file)
@@ -26,8 +26,7 @@ import java.util.Optional;
 import org.eclipse.jdt.annotation.NonNull;
 import org.eclipse.jdt.annotation.Nullable;
 import org.opendaylight.yangtools.concepts.Builder;
-import org.opendaylight.yangtools.concepts.Immutable;
-import org.opendaylight.yangtools.concepts.Path;
+import org.opendaylight.yangtools.concepts.HierarchicalIdentifier;
 import org.opendaylight.yangtools.util.HashCodeBuilder;
 
 /**
@@ -61,8 +60,8 @@ import org.opendaylight.yangtools.util.HashCodeBuilder;
  * <p>
  * This would be the same as using a path like so, "/nodes/node/openflow:1" to refer to the openflow:1 node
  */
-public class InstanceIdentifier<T extends DataObject> implements Path<InstanceIdentifier<? extends DataObject>>,
-        Immutable, Serializable {
+public class InstanceIdentifier<T extends DataObject>
+        implements HierarchicalIdentifier<InstanceIdentifier<? extends DataObject>> {
     private static final long serialVersionUID = 3L;
 
     /*
index 0d0d99e7300dc022f5c211bbd0a1bf3dbfa121c1..58683fd3e756c6bd7ac5340796eedd3e391e92ba 100644 (file)
@@ -10,7 +10,7 @@ package org.opendaylight.mdsal.common.api;
 import static org.junit.Assert.assertEquals;
 
 import org.junit.Test;
-import org.opendaylight.yangtools.concepts.Path;
+import org.opendaylight.yangtools.concepts.HierarchicalIdentifier;
 
 public class DataValidationFailedExceptionTest {
 
@@ -26,7 +26,9 @@ public class DataValidationFailedExceptionTest {
         throw dataValidationFailedException;
     }
 
-    private final class TestClass implements Path<TestClass> {
+    private static final class TestClass implements HierarchicalIdentifier<TestClass> {
+        private static final long serialVersionUID = 1L;
+
         @Override
         public boolean contains(final TestClass other) {
             return false;
index b3947e903577dd890127f890a643fd4553dc4399..cadbc4973f6edf0a47f40ba980ad2b9d9c8195f9 100644 (file)
@@ -10,13 +10,11 @@ package org.opendaylight.mdsal.dom.api;
 import static java.util.Objects.requireNonNull;
 
 import com.google.common.base.MoreObjects;
-import java.io.Serializable;
 import java.util.Iterator;
 import org.eclipse.jdt.annotation.NonNullByDefault;
 import org.eclipse.jdt.annotation.Nullable;
 import org.opendaylight.mdsal.common.api.LogicalDatastoreType;
-import org.opendaylight.yangtools.concepts.Immutable;
-import org.opendaylight.yangtools.concepts.Path;
+import org.opendaylight.yangtools.concepts.HierarchicalIdentifier;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument;
 
@@ -25,7 +23,7 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgum
  * identifier of the root node.
  */
 @NonNullByDefault
-public final class DOMDataTreeIdentifier implements Immutable, Path<DOMDataTreeIdentifier>, Serializable,
+public final class DOMDataTreeIdentifier implements HierarchicalIdentifier<DOMDataTreeIdentifier>,
         Comparable<DOMDataTreeIdentifier> {
     private static final long serialVersionUID = 1L;