From ed6bfbad4b36b54d288604cb0efb97edd46db6a6 Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Thu, 17 Feb 2022 12:16:36 +0100 Subject: [PATCH] Fix spotbugs issues in yang-parser-spi SpotBugs is correctly pointing out that we could in theory end up with a null dereference here. Make sure we verifyNotNull() it and produce a correct message. Change-Id: Ib4097986c3e329046be273a4992a7b7112951c5c Signed-off-by: Robert Varga --- .../yangtools/yang/parser/spi/SchemaTreeNamespace.java | 7 +++++-- .../parser/spi/meta/AbstractBooleanStatementSupport.java | 5 +++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/parser/yang-parser-spi/src/main/java/org/opendaylight/yangtools/yang/parser/spi/SchemaTreeNamespace.java b/parser/yang-parser-spi/src/main/java/org/opendaylight/yangtools/yang/parser/spi/SchemaTreeNamespace.java index ea4e1308ce..096ddc79b9 100644 --- a/parser/yang-parser-spi/src/main/java/org/opendaylight/yangtools/yang/parser/spi/SchemaTreeNamespace.java +++ b/parser/yang-parser-spi/src/main/java/org/opendaylight/yangtools/yang/parser/spi/SchemaTreeNamespace.java @@ -7,6 +7,9 @@ */ package org.opendaylight.yangtools.yang.parser.spi; +import static com.google.common.base.Verify.verifyNotNull; +import static java.util.Objects.requireNonNull; + import com.google.common.annotations.Beta; import java.util.Collection; import java.util.Iterator; @@ -141,9 +144,9 @@ public final class SchemaTreeNamespace, } private static NamespaceStorageNode globalOrStatementSpecific(final NamespaceStorageNode storage) { - NamespaceStorageNode current = storage; + NamespaceStorageNode current = requireNonNull(storage); while (!isLocalOrGlobal(current.getStorageNodeType())) { - current = current.getParentNamespaceStorage(); + current = verifyNotNull(current.getParentNamespaceStorage()); } return current; } diff --git a/parser/yang-parser-spi/src/main/java/org/opendaylight/yangtools/yang/parser/spi/meta/AbstractBooleanStatementSupport.java b/parser/yang-parser-spi/src/main/java/org/opendaylight/yangtools/yang/parser/spi/meta/AbstractBooleanStatementSupport.java index 01f8461af5..7d1fc01c68 100644 --- a/parser/yang-parser-spi/src/main/java/org/opendaylight/yangtools/yang/parser/spi/meta/AbstractBooleanStatementSupport.java +++ b/parser/yang-parser-spi/src/main/java/org/opendaylight/yangtools/yang/parser/spi/meta/AbstractBooleanStatementSupport.java @@ -7,6 +7,7 @@ */ package org.opendaylight.yangtools.yang.parser.spi.meta; +import static com.google.common.base.Verify.verifyNotNull; import static java.util.Objects.requireNonNull; import com.google.common.annotations.Beta; @@ -41,8 +42,8 @@ public abstract class AbstractBooleanStatementSupport