Fix StackedYangInstanceIdentifier.getParent() nullness 00/88300/2
authorRobert Varga <robert.varga@pantheon.tech>
Wed, 18 Mar 2020 13:32:40 +0000 (14:32 +0100)
committerRobert Varga <nite@hq.sk>
Wed, 18 Mar 2020 17:32:11 +0000 (17:32 +0000)
Stacked version always has a parent, as well as the argument, make
sure we reflect that in annotations.

Change-Id: If0f391920fd77bb718fdb7170b3e0792e1c28c7b
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/StackedReversePathArguments.java
yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/StackedYangInstanceIdentifier.java

index bcf2122445adcea168c57003814dbba6c69f861e..46ba12e0d0de15af9f93aca41c52111be70baea9 100644 (file)
@@ -14,6 +14,7 @@ import com.google.common.collect.Iterators;
 import com.google.common.collect.UnmodifiableIterator;
 import java.util.Collection;
 import java.util.Iterator;
+import org.eclipse.jdt.annotation.NonNull;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument;
 
 final class StackedReversePathArguments extends PathArgumentList {
@@ -25,7 +26,7 @@ final class StackedReversePathArguments extends PathArgumentList {
         this.identifier = requireNonNull(identifier);
     }
 
-    private static int calculateSize(final YangInstanceIdentifier parent) {
+    private static int calculateSize(final @NonNull YangInstanceIdentifier parent) {
         YangInstanceIdentifier current = parent;
         for (int i = 1;; ++i) {
             final Collection<PathArgument> args = current.tryReversePathArguments();
@@ -34,7 +35,7 @@ final class StackedReversePathArguments extends PathArgumentList {
             }
 
             verify(current instanceof StackedYangInstanceIdentifier);
-            current = current.getParent();
+            current = ((StackedYangInstanceIdentifier) current).getParent();
         }
     }
 
index 0fb647e36cf1a88a4bdd0f1f251e75007e94d3e0..a183e47639e846c88321df40ccb0fa01202a39eb 100644 (file)
@@ -21,6 +21,7 @@ import java.security.AccessController;
 import java.security.PrivilegedAction;
 import java.util.ArrayList;
 import java.util.List;
+import org.eclipse.jdt.annotation.NonNull;
 
 final class StackedYangInstanceIdentifier extends YangInstanceIdentifier implements Cloneable {
     private static final long serialVersionUID = 1L;
@@ -42,8 +43,8 @@ final class StackedYangInstanceIdentifier extends YangInstanceIdentifier impleme
         PARENT_FIELD = f;
     }
 
-    private final YangInstanceIdentifier parent;
-    private final PathArgument pathArgument;
+    private final @NonNull YangInstanceIdentifier parent;
+    private final @NonNull PathArgument pathArgument;
 
     private transient volatile StackedPathArguments pathArguments;
     private transient volatile StackedReversePathArguments reversePathArguments;
@@ -65,7 +66,7 @@ final class StackedYangInstanceIdentifier extends YangInstanceIdentifier impleme
     }
 
     @Override
-    public YangInstanceIdentifier getParent() {
+    public @NonNull YangInstanceIdentifier getParent() {
         return parent;
     }