diff options
11 files changed, 28 insertions, 0 deletions
diff --git a/api/src/main/java/io/opencensus/stats/NoopStats.java b/api/src/main/java/io/opencensus/stats/NoopStats.java index a016e2e9..84d2cf86 100644 --- a/api/src/main/java/io/opencensus/stats/NoopStats.java +++ b/api/src/main/java/io/opencensus/stats/NoopStats.java @@ -33,6 +33,7 @@ import io.opencensus.tags.TagValue; import java.util.Collections; import java.util.List; import java.util.Map; +import javax.annotation.Nullable; import javax.annotation.concurrent.GuardedBy; import javax.annotation.concurrent.Immutable; import javax.annotation.concurrent.ThreadSafe; @@ -160,6 +161,7 @@ final class NoopStats { } @Override + @Nullable public ViewData getView(View.Name name) { checkNotNull(name, "name"); synchronized (views) { diff --git a/api/src/test/java/io/opencensus/tags/TagContextTest.java b/api/src/test/java/io/opencensus/tags/TagContextTest.java index 813e1a76..7243720c 100644 --- a/api/src/test/java/io/opencensus/tags/TagContextTest.java +++ b/api/src/test/java/io/opencensus/tags/TagContextTest.java @@ -23,6 +23,7 @@ import com.google.common.testing.EqualsTester; import java.util.Collections; import java.util.Iterator; import java.util.List; +import javax.annotation.Nullable; import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runners.JUnit4; @@ -94,6 +95,7 @@ public final class TagContextTest { } @Override + @Nullable protected Iterator<Tag> getIterator() { return tags == null ? null : tags.iterator(); } diff --git a/api/src/test/java/io/opencensus/trace/AttributeValueTest.java b/api/src/test/java/io/opencensus/trace/AttributeValueTest.java index b7e0afbd..e505c59b 100644 --- a/api/src/test/java/io/opencensus/trace/AttributeValueTest.java +++ b/api/src/test/java/io/opencensus/trace/AttributeValueTest.java @@ -22,6 +22,7 @@ import static org.junit.Assert.fail; import com.google.common.testing.EqualsTester; import io.opencensus.common.Function; import io.opencensus.common.Functions; +import javax.annotation.Nullable; import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runners.JUnit4; @@ -35,6 +36,7 @@ public class AttributeValueTest { attribute.match( new Function<String, Object>() { @Override + @Nullable public Object apply(String stringValue) { assertThat(stringValue).isEqualTo("MyStringAttributeValue"); return null; @@ -42,6 +44,7 @@ public class AttributeValueTest { }, new Function<Boolean, Object>() { @Override + @Nullable public Object apply(Boolean booleanValue) { fail("Expected a String"); return null; @@ -49,6 +52,7 @@ public class AttributeValueTest { }, new Function<Long, Object>() { @Override + @Nullable public Object apply(Long longValue) { fail("Expected a String"); return null; @@ -63,6 +67,7 @@ public class AttributeValueTest { attribute.match( new Function<String, Object>() { @Override + @Nullable public Object apply(String stringValue) { fail("Expected a Boolean"); return null; @@ -70,6 +75,7 @@ public class AttributeValueTest { }, new Function<Boolean, Object>() { @Override + @Nullable public Object apply(Boolean booleanValue) { assertThat(booleanValue).isTrue(); return null; @@ -77,6 +83,7 @@ public class AttributeValueTest { }, new Function<Long, Object>() { @Override + @Nullable public Object apply(Long longValue) { fail("Expected a Boolean"); return null; @@ -91,6 +98,7 @@ public class AttributeValueTest { attribute.match( new Function<String, Object>() { @Override + @Nullable public Object apply(String stringValue) { fail("Expected a Long"); return null; @@ -98,6 +106,7 @@ public class AttributeValueTest { }, new Function<Boolean, Object>() { @Override + @Nullable public Object apply(Boolean booleanValue) { fail("Expected a Long"); return null; @@ -105,6 +114,7 @@ public class AttributeValueTest { }, new Function<Long, Object>() { @Override + @Nullable public Object apply(Long longValue) { assertThat(longValue).isEqualTo(123456L); return null; diff --git a/exporters/trace/zipkin/src/main/java/io/opencensus/exporter/trace/zipkin/ZipkinExporterHandler.java b/exporters/trace/zipkin/src/main/java/io/opencensus/exporter/trace/zipkin/ZipkinExporterHandler.java index 2885db14..6c0bc2e9 100644 --- a/exporters/trace/zipkin/src/main/java/io/opencensus/exporter/trace/zipkin/ZipkinExporterHandler.java +++ b/exporters/trace/zipkin/src/main/java/io/opencensus/exporter/trace/zipkin/ZipkinExporterHandler.java @@ -42,6 +42,7 @@ import java.util.List; import java.util.Map; import java.util.logging.Level; import java.util.logging.Logger; +import javax.annotation.Nullable; import zipkin2.Endpoint; import zipkin2.Span; import zipkin2.codec.SpanBytesEncoder; @@ -146,6 +147,7 @@ final class ZipkinExporterHandler extends SpanExporter.Handler { return BaseEncoding.base16().lowerCase().encode(spanId.getBytes()); } + @Nullable private static Span.Kind toSpanKind(SpanData spanData) { if (Boolean.TRUE.equals(spanData.getHasRemoteParent())) { return Span.Kind.SERVER; diff --git a/gradle/errorprone/experimental_suggestions b/gradle/errorprone/experimental_suggestions index d68ec9a8..d5e916e2 100644 --- a/gradle/errorprone/experimental_suggestions +++ b/gradle/errorprone/experimental_suggestions @@ -9,6 +9,7 @@ errorProneExperimentalSuggestions = \ -Xep:PrivateConstructorForNoninstantiableModuleTest:ERROR,\ -Xep:PrivateConstructorForUtilityClass:ERROR,\ -Xep:RemoveUnusedImports:ERROR,\ +-Xep:ReturnMissingNullable:ERROR,\ -Xep:ThrowsUncheckedException:ERROR,\ -Xep:UnnecessaryStaticImport:ERROR,\ -Xep:UseBinds:ERROR,\ diff --git a/impl_core/src/main/java/io/opencensus/implcore/stats/MeasureToViewMap.java b/impl_core/src/main/java/io/opencensus/implcore/stats/MeasureToViewMap.java index 50cb236a..bf3c8b25 100644 --- a/impl_core/src/main/java/io/opencensus/implcore/stats/MeasureToViewMap.java +++ b/impl_core/src/main/java/io/opencensus/implcore/stats/MeasureToViewMap.java @@ -58,6 +58,7 @@ final class MeasureToViewMap { private final Map<String, Measure> registeredMeasures = Maps.newHashMap(); /** Returns a {@link ViewData} corresponding to the given {@link View.Name}. */ + @Nullable synchronized ViewData getView(View.Name viewName, Clock clock, StatsCollectionState state) { MutableViewData view = getMutableViewData(viewName); return view == null ? null : view.toViewData(clock.now(), state); diff --git a/impl_core/src/main/java/io/opencensus/implcore/stats/StatsManager.java b/impl_core/src/main/java/io/opencensus/implcore/stats/StatsManager.java index 63fcd587..1a855710 100644 --- a/impl_core/src/main/java/io/opencensus/implcore/stats/StatsManager.java +++ b/impl_core/src/main/java/io/opencensus/implcore/stats/StatsManager.java @@ -24,6 +24,7 @@ import io.opencensus.stats.StatsCollectionState; import io.opencensus.stats.View; import io.opencensus.stats.ViewData; import io.opencensus.tags.TagContext; +import javax.annotation.Nullable; /** Object that stores all views and stats. */ final class StatsManager { @@ -49,6 +50,7 @@ final class StatsManager { measureToViewMap.registerView(view, clock); } + @Nullable ViewData getView(View.Name viewName) { return measureToViewMap.getView(viewName, clock, state.getInternal()); } diff --git a/impl_core/src/main/java/io/opencensus/implcore/stats/ViewManagerImpl.java b/impl_core/src/main/java/io/opencensus/implcore/stats/ViewManagerImpl.java index eb716689..abc4f921 100644 --- a/impl_core/src/main/java/io/opencensus/implcore/stats/ViewManagerImpl.java +++ b/impl_core/src/main/java/io/opencensus/implcore/stats/ViewManagerImpl.java @@ -19,6 +19,7 @@ package io.opencensus.implcore.stats; import io.opencensus.stats.View; import io.opencensus.stats.ViewData; import io.opencensus.stats.ViewManager; +import javax.annotation.Nullable; /** Implementation of {@link ViewManager}. */ public final class ViewManagerImpl extends ViewManager { @@ -34,6 +35,7 @@ public final class ViewManagerImpl extends ViewManager { } @Override + @Nullable public ViewData getView(View.Name viewName) { return statsManager.getView(viewName); } diff --git a/impl_core/src/main/java/io/opencensus/implcore/trace/export/SampledSpanStoreImpl.java b/impl_core/src/main/java/io/opencensus/implcore/trace/export/SampledSpanStoreImpl.java index 9235d4f1..e0f9b832 100644 --- a/impl_core/src/main/java/io/opencensus/implcore/trace/export/SampledSpanStoreImpl.java +++ b/impl_core/src/main/java/io/opencensus/implcore/trace/export/SampledSpanStoreImpl.java @@ -33,6 +33,7 @@ import java.util.List; import java.util.Map; import java.util.Set; import java.util.concurrent.TimeUnit; +import javax.annotation.Nullable; import javax.annotation.concurrent.GuardedBy; import javax.annotation.concurrent.ThreadSafe; @@ -154,6 +155,7 @@ public final class SampledSpanStoreImpl extends SampledSpanStore { } } + @Nullable private Bucket getLatencyBucket(long latencyNs) { for (int i = 0; i < NUM_LATENCY_BUCKETS; i++) { LatencyBucketBoundaries boundaries = LatencyBucketBoundaries.values()[i]; diff --git a/impl_core/src/test/java/io/opencensus/implcore/stats/StatsTestUtil.java b/impl_core/src/test/java/io/opencensus/implcore/stats/StatsTestUtil.java index 3a714af4..848fdd7b 100644 --- a/impl_core/src/test/java/io/opencensus/implcore/stats/StatsTestUtil.java +++ b/impl_core/src/test/java/io/opencensus/implcore/stats/StatsTestUtil.java @@ -40,6 +40,7 @@ import java.util.ArrayList; import java.util.Collections; import java.util.List; import java.util.Map; +import javax.annotation.Nullable; /** Stats test utilities. */ final class StatsTestUtil { @@ -170,6 +171,7 @@ final class StatsTestUtil { .isEqualTo(removeTrailingZeros(expected.getBucketCounts())); } + @Nullable private static List<Long> removeTrailingZeros(List<Long> longs) { if (longs == null) { return null; diff --git a/testing/src/main/java/io/opencensus/testing/export/TestHandler.java b/testing/src/main/java/io/opencensus/testing/export/TestHandler.java index 221a9b3e..8f36b3bd 100644 --- a/testing/src/main/java/io/opencensus/testing/export/TestHandler.java +++ b/testing/src/main/java/io/opencensus/testing/export/TestHandler.java @@ -22,6 +22,7 @@ import java.util.ArrayList; import java.util.Collection; import java.util.LinkedList; import java.util.List; +import javax.annotation.Nullable; import javax.annotation.concurrent.GuardedBy; /** A {@link SpanExporter.Handler} for testing only. */ @@ -50,6 +51,7 @@ public final class TestHandler extends SpanExporter.Handler { * @return the list of exported {@link SpanData} objects, otherwise {@code null} if the current * thread is interrupted. */ + @Nullable public List<SpanData> waitForExport(int numberOfSpans) { List<SpanData> ret; synchronized (monitor) { |
