Enable spotbugs in mdsal-binding-java-api-generator 16/76916/22
authorRobert Varga <robert.varga@pantheon.tech>
Thu, 11 Oct 2018 23:22:07 +0000 (01:22 +0200)
committerRobert Varga <robert.varga@pantheon.tech>
Wed, 12 Feb 2020 15:30:56 +0000 (16:30 +0100)
This fixes up the issues reported and flips enforcement to on.

Change-Id: I205b07535f42f6a3f3c5ae4e14167de4982e9338
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
binding/mdsal-binding-java-api-generator/pom.xml
binding/mdsal-binding-java-api-generator/src/main/java/org/opendaylight/mdsal/binding/java/api/generator/ClassTemplate.xtend
binding/mdsal-binding-java-api-generator/src/main/java/org/opendaylight/mdsal/binding/java/api/generator/NestedJavaGeneratedType.java

index 2508d12742dae1c8c33cc69437afd0bcd31e4dd4..778122a22281ab8488b350dacfa8fbe70a8a369f 100644 (file)
     <version>6.0.0-SNAPSHOT</version>
     <packaging>bundle</packaging>
 
-    <properties>
-        <!-- FIXME: we have some violations here -->
-        <odlparent.spotbugs.enforce>false</odlparent.spotbugs.enforce>
-    </properties>
-
     <dependencies>
         <dependency>
             <groupId>org.opendaylight.mdsal</groupId>
index 5af06d6ec87cd681fa4f1222242fb1aa9f03ac94..0531ba603011498a756195c9de582ee08e592b11 100644 (file)
@@ -38,6 +38,7 @@ import org.opendaylight.yangtools.yang.common.Uint32
 import org.opendaylight.yangtools.yang.common.Uint64
 import org.opendaylight.yangtools.yang.common.Uint8
 import org.opendaylight.yangtools.yang.model.api.type.BitsTypeDefinition
+import edu.umd.cs.findbugs.annotations.SuppressFBWarnings
 
 /**
  * Template for generating JAVA class.
@@ -387,6 +388,7 @@ class ClassTemplate extends BaseTemplate {
         «ENDIF»
     '''
 
+    @SuppressFBWarnings(value = "DLS_DEAD_LOCAL_STORE", justification = "FOR with SEPARATOR, not needing for value")
     def protected bitsArgs() '''
         «JU_LIST.importedName»<«STRING.importedName»> properties = «Lists.importedName».newArrayList(«allProperties.propsAsArgs»);
         if (!properties.contains(defaultValue)) {
index 5edbcf6928cce3446e5884ec8cf90a9394b73139..5c1eb6e8ccff9fe73b2aa696d715b14584876f72 100644 (file)
@@ -11,6 +11,7 @@ import static com.google.common.base.Verify.verify;
 import static java.util.Objects.requireNonNull;
 
 import com.google.common.collect.ImmutableList;
+import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
 import java.util.ArrayDeque;
 import java.util.Deque;
 import java.util.Iterator;
@@ -65,6 +66,8 @@ final class NestedJavaGeneratedType extends AbstractJavaGeneratedType {
         return sb.toString();
     }
 
+    @SuppressFBWarnings(value = "NP_NONNULL_RETURN_VIOLATION",
+            justification = "SpotBugs confusion @Nullable vs @NonNullByDefault")
     private @Nullable List<String> findDescandantPath(final JavaTypeName type) {
         Optional<JavaTypeName> optEnclosing = type.immediatelyEnclosingClass();
         verify(optEnclosing.isPresent());