This is an automated email from the ASF dual-hosted git repository.

damondouglas pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/beam.git


The following commit(s) were added to refs/heads/master by this push:
     new 109133e38ed Remove SuppressWarnings nullness from JsonMatcher (#29486)
109133e38ed is described below

commit 109133e38edb43f6e267c97a26cd4b1bc8de0461
Author: Damon <[email protected]>
AuthorDate: Mon Nov 27 10:17:32 2023 -0800

    Remove SuppressWarnings nullness from JsonMatcher (#29486)
---
 .../main/java/org/apache/beam/sdk/testing/JsonMatcher.java  | 13 ++++++-------
 1 file changed, 6 insertions(+), 7 deletions(-)

diff --git 
a/sdks/java/core/src/main/java/org/apache/beam/sdk/testing/JsonMatcher.java 
b/sdks/java/core/src/main/java/org/apache/beam/sdk/testing/JsonMatcher.java
index 034e68220e4..2d2359badfd 100644
--- a/sdks/java/core/src/main/java/org/apache/beam/sdk/testing/JsonMatcher.java
+++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/testing/JsonMatcher.java
@@ -17,12 +17,14 @@
  */
 package org.apache.beam.sdk.testing;
 
+import static org.apache.beam.sdk.util.Preconditions.checkStateNotNull;
 import static org.hamcrest.Matchers.is;
 
 import com.fasterxml.jackson.core.type.TypeReference;
 import com.fasterxml.jackson.databind.ObjectMapper;
 import java.io.IOException;
 import java.util.Map;
+import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
 import org.hamcrest.Description;
 import org.hamcrest.Matcher;
 import org.hamcrest.TypeSafeMatcher;
@@ -35,13 +37,10 @@ import org.hamcrest.TypeSafeMatcher;
  *              jsonStringLike("{\"height\": 80, \"name\": \"person\"}"));
  * </pre>
  */
-@SuppressWarnings({
-  "nullness" // TODO(https://github.com/apache/beam/issues/20497)
-})
 public abstract class JsonMatcher<T> extends TypeSafeMatcher<T> {
-  private Matcher<Map<String, Object>> mapMatcher;
+  private final Matcher<Map<String, Object>> mapMatcher;
   private static final ObjectMapper MAPPER = new ObjectMapper();
-  private Map<String, Object> actualMap;
+  private @MonotonicNonNull Map<String, Object> actualMap;
 
   public JsonMatcher(Map<String, Object> expectedMap) {
     this.mapMatcher = is(expectedMap);
@@ -86,7 +85,7 @@ public abstract class JsonMatcher<T> extends 
TypeSafeMatcher<T> {
     } catch (IOException e) {
       return false;
     }
-    return mapMatcher.matches(actualMap);
+    return mapMatcher.matches(checkStateNotNull(actualMap));
   }
 
   @Override
@@ -96,6 +95,6 @@ public abstract class JsonMatcher<T> extends 
TypeSafeMatcher<T> {
 
   @Override
   protected void describeMismatchSafely(T item, Description 
mismatchDescription) {
-    mapMatcher.describeMismatch(actualMap, mismatchDescription);
+    mapMatcher.describeMismatch(checkStateNotNull(actualMap), 
mismatchDescription);
   }
 }

Reply via email to