aboutsummaryrefslogtreecommitdiffstats
path: root/api/src
diff options
context:
space:
mode:
authorKristen Kozak <sebright@google.com>2017-12-19 20:02:00 -0800
committerKristen Kozak <sebright@google.com>2017-12-19 20:02:00 -0800
commit2fc0d4dd057ca28e1e9c37d18ebcfac6d2136de9 (patch)
treee7f398cc1cb4a8cf52d04e1ea0875d873cff4412 /api/src
parent18cf999ddea65775db2a482e00cea05d52961077 (diff)
downloadplatform_external_opencensus-java-2fc0d4dd057ca28e1e9c37d18ebcfac6d2136de9.tar.gz
platform_external_opencensus-java-2fc0d4dd057ca28e1e9c37d18ebcfac6d2136de9.tar.bz2
platform_external_opencensus-java-2fc0d4dd057ca28e1e9c37d18ebcfac6d2136de9.zip
Suppress some Checker Framework warnings and add TODOs (issue #359).
Fixing these warnings will require significant refactoring.
Diffstat (limited to 'api/src')
-rw-r--r--api/src/main/java/io/opencensus/internal/NullnessUtils.java12
-rw-r--r--api/src/main/java/io/opencensus/stats/Stats.java3
-rw-r--r--api/src/main/java/io/opencensus/tags/Tags.java3
-rw-r--r--api/src/main/java/io/opencensus/trace/Tracing.java3
4 files changed, 17 insertions, 4 deletions
diff --git a/api/src/main/java/io/opencensus/internal/NullnessUtils.java b/api/src/main/java/io/opencensus/internal/NullnessUtils.java
index ca3419cd..0301b798 100644
--- a/api/src/main/java/io/opencensus/internal/NullnessUtils.java
+++ b/api/src/main/java/io/opencensus/internal/NullnessUtils.java
@@ -17,15 +17,25 @@
package io.opencensus.internal;
import io.opencensus.common.Function;
+import javax.annotation.Nullable;
/*>>>
import org.checkerframework.checker.nullness.qual.KeyForBottom;
*/
-/** Utility methods for working around Checker Framework issues. */
+/**
+ * Utility methods for suppressing nullness warnings and working around Checker Framework issues.
+ */
public final class NullnessUtils {
private NullnessUtils() {}
+ /** Suppress warnings about a nullable value. */
+ // TODO(sebright): Try to remove all uses of this method.
+ @SuppressWarnings("nullness")
+ public static <T> T castNonNull(@Nullable T arg) {
+ return arg;
+ }
+
/**
* Work around https://github.com/typetools/checker-framework/issues/1712 by removing {@code ?
* super} from a {@code Function}'s argument type.
diff --git a/api/src/main/java/io/opencensus/stats/Stats.java b/api/src/main/java/io/opencensus/stats/Stats.java
index d02780f8..0830313a 100644
--- a/api/src/main/java/io/opencensus/stats/Stats.java
+++ b/api/src/main/java/io/opencensus/stats/Stats.java
@@ -17,6 +17,7 @@
package io.opencensus.stats;
import com.google.common.annotations.VisibleForTesting;
+import io.opencensus.internal.NullnessUtils;
import io.opencensus.internal.Provider;
import java.util.logging.Level;
import java.util.logging.Logger;
@@ -26,7 +27,7 @@ public final class Stats {
private static final Logger logger = Logger.getLogger(Stats.class.getName());
private static final StatsComponent statsComponent =
- loadStatsComponent(StatsComponent.class.getClassLoader());
+ loadStatsComponent(NullnessUtils.castNonNull(StatsComponent.class.getClassLoader()));
/** Returns the default {@link StatsRecorder}. */
public static StatsRecorder getStatsRecorder() {
diff --git a/api/src/main/java/io/opencensus/tags/Tags.java b/api/src/main/java/io/opencensus/tags/Tags.java
index 593312ae..f480714d 100644
--- a/api/src/main/java/io/opencensus/tags/Tags.java
+++ b/api/src/main/java/io/opencensus/tags/Tags.java
@@ -17,6 +17,7 @@
package io.opencensus.tags;
import com.google.common.annotations.VisibleForTesting;
+import io.opencensus.internal.NullnessUtils;
import io.opencensus.internal.Provider;
import io.opencensus.tags.propagation.TagPropagationComponent;
import java.util.logging.Level;
@@ -27,7 +28,7 @@ public final class Tags {
private static final Logger logger = Logger.getLogger(Tags.class.getName());
private static final TagsComponent tagsComponent =
- loadTagsComponent(TagsComponent.class.getClassLoader());
+ loadTagsComponent(NullnessUtils.castNonNull(TagsComponent.class.getClassLoader()));
private Tags() {}
diff --git a/api/src/main/java/io/opencensus/trace/Tracing.java b/api/src/main/java/io/opencensus/trace/Tracing.java
index c68f66ad..8e575265 100644
--- a/api/src/main/java/io/opencensus/trace/Tracing.java
+++ b/api/src/main/java/io/opencensus/trace/Tracing.java
@@ -18,6 +18,7 @@ package io.opencensus.trace;
import com.google.common.annotations.VisibleForTesting;
import io.opencensus.common.Clock;
+import io.opencensus.internal.NullnessUtils;
import io.opencensus.internal.Provider;
import io.opencensus.trace.config.TraceConfig;
import io.opencensus.trace.export.ExportComponent;
@@ -29,7 +30,7 @@ import java.util.logging.Logger;
public final class Tracing {
private static final Logger logger = Logger.getLogger(Tracing.class.getName());
private static final TraceComponent traceComponent =
- loadTraceComponent(TraceComponent.class.getClassLoader());
+ loadTraceComponent(NullnessUtils.castNonNull(TraceComponent.class.getClassLoader()));
/**
* Returns the global {@link Tracer}.