From 3122897b2e0eb4d9dfbf27404ef232f97278ae84 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 10 May 2023 09:49:55 -0700 Subject: [PATCH] Bump errorProneVersion from 2.18.0 to 2.19.0 (#8459) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Lauri Tulmin --- .../kotlin/otel.errorprone-conventions.gradle.kts | 4 ++++ dependencyManagement/build.gradle.kts | 2 +- .../api/instrumenter/http/ForwardedHeaderParser.java | 5 +++-- .../api/instrumenter/SpanSuppressors.java | 2 ++ .../awssdk/v1_11/TracingRequestHandler.java | 2 ++ .../instrumentation/hibernate/v6_0/SessionTest.java | 3 ++- .../InnerClassLambdaMetafactoryInstrumentation.java | 2 ++ .../internal/reflection/ClassInstrumentation.java | 2 ++ .../jaxrs/CompletionStageFinishCallback.java | 2 ++ .../jdbc/internal/JdbcConnectionUrlParser.java | 7 +++++++ .../instrumentation/jmx/yaml/JmxRule.java | 3 +++ .../instrumentation/jmx/yaml/Metric.java | 2 ++ .../instrumentation/jmx/yaml/MetricStructure.java | 5 ++++- .../v2_6/TracingConsumerInterceptor.java | 2 ++ .../v2_6/TracingProducerInterceptor.java | 2 ++ .../play/v2_6/ResponseFutureWrapper.java | 3 +++ .../instrumentation/resources/OsResource.java | 3 ++- .../instrumentation/resources/ProcessResource.java | 3 ++- .../instrumentation/rmi/context/ContextPayload.java | 1 + .../integration/v4_1/TracingChannelInterceptor.java | 3 +++ .../base/ControllerSpringWebFluxServerTest.java | 3 ++- .../extension/ignore/IgnoredTypesBuilder.java | 7 +++++++ .../tooling/AgentTracerProviderConfigurer.java | 2 ++ .../field/FieldBackedImplementationInstaller.java | 2 ++ .../NoopVirtualFieldImplementationInstaller.java | 3 +++ .../javaagent/tooling/field/RealFieldInjector.java | 2 ++ .../tooling/field/VirtualFieldFindRewriter.java | 2 ++ .../field/VirtualFieldImplementationsGenerator.java | 2 ++ .../opentelemetry/javaagent/tooling/util/Trie.java | 2 ++ .../javaagent/tooling/HelperInjector.java | 2 ++ .../tooling/muzzle/AgentCachingPoolStrategy.java | 3 +++ .../tooling/muzzle/VirtualFieldMappingsBuilder.java | 2 ++ .../muzzle/generation/MuzzleCodeGenerator.java | 2 ++ .../smoketest/TestContainerManager.java | 3 ++- .../testing/junit/http/AbstractHttpClientTest.java | 2 ++ .../testing/junit/http/AbstractHttpServerTest.java | 5 +++++ .../testing/junit/http/HttpClientTestOptions.java | 12 ++++++++++++ 37 files changed, 105 insertions(+), 9 deletions(-) diff --git a/conventions/src/main/kotlin/otel.errorprone-conventions.gradle.kts b/conventions/src/main/kotlin/otel.errorprone-conventions.gradle.kts index bb6086c7f316..a6e0f4de5401 100644 --- a/conventions/src/main/kotlin/otel.errorprone-conventions.gradle.kts +++ b/conventions/src/main/kotlin/otel.errorprone-conventions.gradle.kts @@ -123,6 +123,10 @@ tasks { // Allow underscore in test-type method names disable("MemberName") } + if (project.path.endsWith(":testing") || name.contains("Test")) { + // This check causes too many failures, ignore the ones in tests + disable("CanIgnoreReturnValueSuggester") + } } } } diff --git a/dependencyManagement/build.gradle.kts b/dependencyManagement/build.gradle.kts index 2feeeb9e9ffe..58c510136868 100644 --- a/dependencyManagement/build.gradle.kts +++ b/dependencyManagement/build.gradle.kts @@ -42,7 +42,7 @@ val DEPENDENCY_BOMS = listOf( val autoServiceVersion = "1.0.1" val autoValueVersion = "1.10.1" -val errorProneVersion = "2.18.0" +val errorProneVersion = "2.19.0" val byteBuddyVersion = "1.14.4" val asmVersion = "9.5" val jmhVersion = "1.36" diff --git a/instrumentation-api-semconv/src/main/java/io/opentelemetry/instrumentation/api/instrumenter/http/ForwardedHeaderParser.java b/instrumentation-api-semconv/src/main/java/io/opentelemetry/instrumentation/api/instrumenter/http/ForwardedHeaderParser.java index f4c045df1ccd..e2e7f6df70bc 100644 --- a/instrumentation-api-semconv/src/main/java/io/opentelemetry/instrumentation/api/instrumenter/http/ForwardedHeaderParser.java +++ b/instrumentation-api-semconv/src/main/java/io/opentelemetry/instrumentation/api/instrumenter/http/ForwardedHeaderParser.java @@ -5,6 +5,7 @@ package io.opentelemetry.instrumentation.api.instrumenter.http; +import java.util.Locale; import javax.annotation.Nullable; final class ForwardedHeaderParser { @@ -12,7 +13,7 @@ final class ForwardedHeaderParser { /** Extract proto (aka scheme) from "Forwarded" http header. */ @Nullable static String extractProtoFromForwardedHeader(String forwarded) { - int start = forwarded.toLowerCase().indexOf("proto="); + int start = forwarded.toLowerCase(Locale.ROOT).indexOf("proto="); if (start < 0) { return null; } @@ -32,7 +33,7 @@ static String extractProtoFromForwardedProtoHeader(String forwardedProto) { /** Extract client IP address from "Forwarded" http header. */ @Nullable static String extractClientIpFromForwardedHeader(String forwarded) { - int start = forwarded.toLowerCase().indexOf("for="); + int start = forwarded.toLowerCase(Locale.ROOT).indexOf("for="); if (start < 0) { return null; } diff --git a/instrumentation-api/src/main/java/io/opentelemetry/instrumentation/api/instrumenter/SpanSuppressors.java b/instrumentation-api/src/main/java/io/opentelemetry/instrumentation/api/instrumenter/SpanSuppressors.java index 7587d83ae18e..0867f4b2febb 100644 --- a/instrumentation-api/src/main/java/io/opentelemetry/instrumentation/api/instrumenter/SpanSuppressors.java +++ b/instrumentation-api/src/main/java/io/opentelemetry/instrumentation/api/instrumenter/SpanSuppressors.java @@ -5,6 +5,7 @@ package io.opentelemetry.instrumentation.api.instrumenter; +import com.google.errorprone.annotations.CanIgnoreReturnValue; import io.opentelemetry.api.trace.Span; import io.opentelemetry.api.trace.SpanKind; import io.opentelemetry.context.Context; @@ -20,6 +21,7 @@ enum Noop implements SpanSuppressor { INSTANCE; @Override + @CanIgnoreReturnValue public Context storeInContext(Context context, SpanKind spanKind, Span span) { return context; } diff --git a/instrumentation/aws-sdk/aws-sdk-1.11/library/src/main/java/io/opentelemetry/instrumentation/awssdk/v1_11/TracingRequestHandler.java b/instrumentation/aws-sdk/aws-sdk-1.11/library/src/main/java/io/opentelemetry/instrumentation/awssdk/v1_11/TracingRequestHandler.java index 3fe19aae57b0..c427c9f729c5 100644 --- a/instrumentation/aws-sdk/aws-sdk-1.11/library/src/main/java/io/opentelemetry/instrumentation/awssdk/v1_11/TracingRequestHandler.java +++ b/instrumentation/aws-sdk/aws-sdk-1.11/library/src/main/java/io/opentelemetry/instrumentation/awssdk/v1_11/TracingRequestHandler.java @@ -10,6 +10,7 @@ import com.amazonaws.Response; import com.amazonaws.handlers.HandlerContextKey; import com.amazonaws.handlers.RequestHandler2; +import com.google.errorprone.annotations.CanIgnoreReturnValue; import io.opentelemetry.context.Context; import io.opentelemetry.contrib.awsxray.propagator.AwsXrayPropagator; import io.opentelemetry.instrumentation.api.instrumenter.Instrumenter; @@ -47,6 +48,7 @@ public void beforeRequest(Request request) { } @Override + @CanIgnoreReturnValue public AmazonWebServiceRequest beforeMarshalling(AmazonWebServiceRequest request) { if (SqsReceiveMessageRequestAccess.isInstance(request)) { if (!SqsReceiveMessageRequestAccess.getAttributeNames(request) diff --git a/instrumentation/hibernate/hibernate-6.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/hibernate/v6_0/SessionTest.java b/instrumentation/hibernate/hibernate-6.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/hibernate/v6_0/SessionTest.java index dd10fceced0f..b776bd35fe9e 100644 --- a/instrumentation/hibernate/hibernate-6.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/hibernate/v6_0/SessionTest.java +++ b/instrumentation/hibernate/hibernate-6.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/hibernate/v6_0/SessionTest.java @@ -18,6 +18,7 @@ import io.opentelemetry.semconv.trace.attributes.SemanticAttributes; import java.util.Arrays; import java.util.List; +import java.util.Locale; import java.util.concurrent.atomic.AtomicReference; import java.util.function.BiConsumer; import java.util.function.Function; @@ -838,7 +839,7 @@ private static SpanDataAssert assertClientSpan( equalTo(SemanticAttributes.DB_CONNECTION_STRING, "h2:mem:"), satisfies( SemanticAttributes.DB_STATEMENT, - stringAssert -> stringAssert.startsWith(verb.toLowerCase())), + stringAssert -> stringAssert.startsWith(verb.toLowerCase(Locale.ROOT))), equalTo(SemanticAttributes.DB_OPERATION, verb), equalTo(SemanticAttributes.DB_SQL_TABLE, "Value")); } diff --git a/instrumentation/internal/internal-lambda/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/internal/lambda/InnerClassLambdaMetafactoryInstrumentation.java b/instrumentation/internal/internal-lambda/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/internal/lambda/InnerClassLambdaMetafactoryInstrumentation.java index 145d7b8b9fa8..718c14d095cb 100644 --- a/instrumentation/internal/internal-lambda/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/internal/lambda/InnerClassLambdaMetafactoryInstrumentation.java +++ b/instrumentation/internal/internal-lambda/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/internal/lambda/InnerClassLambdaMetafactoryInstrumentation.java @@ -7,6 +7,7 @@ import static net.bytebuddy.matcher.ElementMatchers.named; +import com.google.errorprone.annotations.CanIgnoreReturnValue; import io.opentelemetry.javaagent.extension.instrumentation.TypeInstrumentation; import io.opentelemetry.javaagent.extension.instrumentation.TypeTransformer; import net.bytebuddy.asm.AsmVisitorWrapper; @@ -42,6 +43,7 @@ public int mergeWriter(int flags) { } @Override + @CanIgnoreReturnValue public int mergeReader(int flags) { return flags; } diff --git a/instrumentation/internal/internal-reflection/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/internal/reflection/ClassInstrumentation.java b/instrumentation/internal/internal-reflection/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/internal/reflection/ClassInstrumentation.java index 68908317ccf7..3d6758370fcd 100644 --- a/instrumentation/internal/internal-reflection/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/internal/reflection/ClassInstrumentation.java +++ b/instrumentation/internal/internal-reflection/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/internal/reflection/ClassInstrumentation.java @@ -7,6 +7,7 @@ import static net.bytebuddy.matcher.ElementMatchers.named; +import com.google.errorprone.annotations.CanIgnoreReturnValue; import io.opentelemetry.javaagent.extension.instrumentation.TypeInstrumentation; import io.opentelemetry.javaagent.extension.instrumentation.TypeTransformer; import net.bytebuddy.asm.AsmVisitorWrapper; @@ -41,6 +42,7 @@ public int mergeWriter(int flags) { } @Override + @CanIgnoreReturnValue public int mergeReader(int flags) { return flags; } diff --git a/instrumentation/jaxrs/jaxrs-common/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/jaxrs/CompletionStageFinishCallback.java b/instrumentation/jaxrs/jaxrs-common/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/jaxrs/CompletionStageFinishCallback.java index a3f6a5048270..c59612611c2d 100644 --- a/instrumentation/jaxrs/jaxrs-common/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/jaxrs/CompletionStageFinishCallback.java +++ b/instrumentation/jaxrs/jaxrs-common/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/jaxrs/CompletionStageFinishCallback.java @@ -5,6 +5,7 @@ package io.opentelemetry.javaagent.instrumentation.jaxrs; +import com.google.errorprone.annotations.CanIgnoreReturnValue; import io.opentelemetry.context.Context; import io.opentelemetry.instrumentation.api.instrumenter.Instrumenter; import java.util.function.BiFunction; @@ -22,6 +23,7 @@ public CompletionStageFinishCallback( } @Override + @CanIgnoreReturnValue public T apply(T result, Throwable throwable) { instrumenter.end(context, handlerData, null, throwable); return result; diff --git a/instrumentation/jdbc/library/src/main/java/io/opentelemetry/instrumentation/jdbc/internal/JdbcConnectionUrlParser.java b/instrumentation/jdbc/library/src/main/java/io/opentelemetry/instrumentation/jdbc/internal/JdbcConnectionUrlParser.java index de0aaf9b4a2a..cef0dc129667 100644 --- a/instrumentation/jdbc/library/src/main/java/io/opentelemetry/instrumentation/jdbc/internal/JdbcConnectionUrlParser.java +++ b/instrumentation/jdbc/library/src/main/java/io/opentelemetry/instrumentation/jdbc/internal/JdbcConnectionUrlParser.java @@ -9,6 +9,7 @@ import static java.util.logging.Level.FINE; import static java.util.regex.Pattern.CASE_INSENSITIVE; +import com.google.errorprone.annotations.CanIgnoreReturnValue; import io.opentelemetry.instrumentation.jdbc.internal.dbinfo.DbInfo; import io.opentelemetry.semconv.trace.attributes.SemanticAttributes.DbSystemValues; import java.io.UnsupportedEncodingException; @@ -36,6 +37,7 @@ public enum JdbcConnectionUrlParser { GENERIC_URL_LIKE() { @Override + @CanIgnoreReturnValue DbInfo.Builder doParse(String jdbcUrl, DbInfo.Builder builder) { try { // Attempt generic parsing @@ -78,6 +80,7 @@ DbInfo.Builder doParse(String jdbcUrl, DbInfo.Builder builder) { // see http://jtds.sourceforge.net/faq.html#urlFormat JTDS_URL_LIKE() { @Override + @CanIgnoreReturnValue DbInfo.Builder doParse(String jdbcUrl, DbInfo.Builder builder) { String serverName = ""; @@ -150,6 +153,7 @@ DbInfo.Builder doParse(String jdbcUrl, DbInfo.Builder builder) { CASE_INSENSITIVE); @Override + @CanIgnoreReturnValue DbInfo.Builder doParse(String jdbcUrl, DbInfo.Builder builder) { String serverName = ""; Integer port = null; @@ -361,6 +365,7 @@ DbInfo.Builder doParse(String jdbcUrl, DbInfo.Builder builder) { private final Pattern userPattern = Pattern.compile("\\(\\s*user\\s*=\\s*([^ )]+)\\s*\\)"); @Override + @CanIgnoreReturnValue DbInfo.Builder doParse(String jdbcUrl, DbInfo.Builder builder) { int addressEnd = jdbcUrl.indexOf(",address="); if (addressEnd > 0) { @@ -527,6 +532,7 @@ DbInfo.Builder doParse(String jdbcUrl, DbInfo.Builder builder) { ORACLE_AT() { @Override + @CanIgnoreReturnValue DbInfo.Builder doParse(String jdbcUrl, DbInfo.Builder builder) { if (jdbcUrl.contains("@(description")) { return ORACLE_AT_DESCRIPTION.doParse(jdbcUrl, builder); @@ -569,6 +575,7 @@ DbInfo.Builder doParse(String jdbcUrl, DbInfo.Builder builder) { Pattern.compile("\\(\\s*service_name\\s*=\\s*([^ )]+)\\s*\\)"); @Override + @CanIgnoreReturnValue DbInfo.Builder doParse(String jdbcUrl, DbInfo.Builder builder) { String[] atSplit = jdbcUrl.split("@", 2); diff --git a/instrumentation/jmx-metrics/library/src/main/java/io/opentelemetry/instrumentation/jmx/yaml/JmxRule.java b/instrumentation/jmx-metrics/library/src/main/java/io/opentelemetry/instrumentation/jmx/yaml/JmxRule.java index 9c38a2325935..149b3bde338f 100644 --- a/instrumentation/jmx-metrics/library/src/main/java/io/opentelemetry/instrumentation/jmx/yaml/JmxRule.java +++ b/instrumentation/jmx-metrics/library/src/main/java/io/opentelemetry/instrumentation/jmx/yaml/JmxRule.java @@ -5,6 +5,7 @@ package io.opentelemetry.instrumentation.jmx.yaml; +import com.google.errorprone.annotations.CanIgnoreReturnValue; import io.opentelemetry.instrumentation.jmx.engine.BeanAttributeExtractor; import io.opentelemetry.instrumentation.jmx.engine.BeanGroup; import io.opentelemetry.instrumentation.jmx.engine.MetricAttribute; @@ -79,6 +80,7 @@ public void setPrefix(String prefix) { this.prefix = validatePrefix(prefix.trim()); } + @CanIgnoreReturnValue private String validatePrefix(String prefix) { // Do not accept empty string. // While it is theoretically acceptable, it probably indicates a user error. @@ -98,6 +100,7 @@ public void setMapping(Map mapping) { this.mapping = validateAttributeMapping(mapping); } + @CanIgnoreReturnValue private static Map validateAttributeMapping(Map mapping) { if (mapping.isEmpty()) { throw new IllegalStateException("No MBean attributes specified"); diff --git a/instrumentation/jmx-metrics/library/src/main/java/io/opentelemetry/instrumentation/jmx/yaml/Metric.java b/instrumentation/jmx-metrics/library/src/main/java/io/opentelemetry/instrumentation/jmx/yaml/Metric.java index 38907b998a7e..77c313fb28d4 100644 --- a/instrumentation/jmx-metrics/library/src/main/java/io/opentelemetry/instrumentation/jmx/yaml/Metric.java +++ b/instrumentation/jmx-metrics/library/src/main/java/io/opentelemetry/instrumentation/jmx/yaml/Metric.java @@ -5,6 +5,7 @@ package io.opentelemetry.instrumentation.jmx.yaml; +import com.google.errorprone.annotations.CanIgnoreReturnValue; import io.opentelemetry.instrumentation.jmx.engine.MetricInfo; import javax.annotation.Nullable; @@ -28,6 +29,7 @@ public void setMetric(String metric) { this.metric = validateMetricName(metric.trim()); } + @CanIgnoreReturnValue private String validateMetricName(String name) { requireNonEmpty(name, "The metric name is empty"); return name; diff --git a/instrumentation/jmx-metrics/library/src/main/java/io/opentelemetry/instrumentation/jmx/yaml/MetricStructure.java b/instrumentation/jmx-metrics/library/src/main/java/io/opentelemetry/instrumentation/jmx/yaml/MetricStructure.java index 5faf75014aa0..49e418816bdf 100644 --- a/instrumentation/jmx-metrics/library/src/main/java/io/opentelemetry/instrumentation/jmx/yaml/MetricStructure.java +++ b/instrumentation/jmx-metrics/library/src/main/java/io/opentelemetry/instrumentation/jmx/yaml/MetricStructure.java @@ -5,11 +5,13 @@ package io.opentelemetry.instrumentation.jmx.yaml; +import com.google.errorprone.annotations.CanIgnoreReturnValue; import io.opentelemetry.instrumentation.jmx.engine.MetricAttribute; import io.opentelemetry.instrumentation.jmx.engine.MetricAttributeExtractor; import io.opentelemetry.instrumentation.jmx.engine.MetricInfo; import java.util.ArrayList; import java.util.List; +import java.util.Locale; import java.util.Map; /** @@ -37,7 +39,7 @@ abstract class MetricStructure { public void setType(String t) { // Do not complain about case variations - t = t.trim().toUpperCase(); + t = t.trim().toUpperCase(Locale.ROOT); this.metricType = MetricInfo.Type.valueOf(t); } @@ -49,6 +51,7 @@ public void setUnit(String unit) { this.unit = validateUnit(unit.trim()); } + @CanIgnoreReturnValue private String validateUnit(String unit) { requireNonEmpty(unit, "Metric unit is empty"); return unit; diff --git a/instrumentation/kafka/kafka-clients/kafka-clients-2.6/library/src/main/java/io/opentelemetry/instrumentation/kafkaclients/v2_6/TracingConsumerInterceptor.java b/instrumentation/kafka/kafka-clients/kafka-clients-2.6/library/src/main/java/io/opentelemetry/instrumentation/kafkaclients/v2_6/TracingConsumerInterceptor.java index b5a2ad0a5ca6..e0995eb8170d 100644 --- a/instrumentation/kafka/kafka-clients/kafka-clients-2.6/library/src/main/java/io/opentelemetry/instrumentation/kafkaclients/v2_6/TracingConsumerInterceptor.java +++ b/instrumentation/kafka/kafka-clients/kafka-clients-2.6/library/src/main/java/io/opentelemetry/instrumentation/kafkaclients/v2_6/TracingConsumerInterceptor.java @@ -5,6 +5,7 @@ package io.opentelemetry.instrumentation.kafkaclients.v2_6; +import com.google.errorprone.annotations.CanIgnoreReturnValue; import io.opentelemetry.api.GlobalOpenTelemetry; import java.util.Map; import java.util.Objects; @@ -27,6 +28,7 @@ public class TracingConsumerInterceptor implements ConsumerInterceptor onConsume(ConsumerRecords records) { telemetry.buildAndFinishSpan(records, consumerGroup, clientId); return records; diff --git a/instrumentation/kafka/kafka-clients/kafka-clients-2.6/library/src/main/java/io/opentelemetry/instrumentation/kafkaclients/v2_6/TracingProducerInterceptor.java b/instrumentation/kafka/kafka-clients/kafka-clients-2.6/library/src/main/java/io/opentelemetry/instrumentation/kafkaclients/v2_6/TracingProducerInterceptor.java index 3c331241ecf8..c64dae0496cb 100644 --- a/instrumentation/kafka/kafka-clients/kafka-clients-2.6/library/src/main/java/io/opentelemetry/instrumentation/kafkaclients/v2_6/TracingProducerInterceptor.java +++ b/instrumentation/kafka/kafka-clients/kafka-clients-2.6/library/src/main/java/io/opentelemetry/instrumentation/kafkaclients/v2_6/TracingProducerInterceptor.java @@ -5,6 +5,7 @@ package io.opentelemetry.instrumentation.kafkaclients.v2_6; +import com.google.errorprone.annotations.CanIgnoreReturnValue; import io.opentelemetry.api.GlobalOpenTelemetry; import java.util.Map; import java.util.Objects; @@ -26,6 +27,7 @@ public class TracingProducerInterceptor implements ProducerInterceptor onSend(ProducerRecord producerRecord) { telemetry.buildAndInjectSpan(producerRecord, clientId); return producerRecord; diff --git a/instrumentation/play/play-mvc/play-mvc-2.6/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/play/v2_6/ResponseFutureWrapper.java b/instrumentation/play/play-mvc/play-mvc-2.6/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/play/v2_6/ResponseFutureWrapper.java index 3192fff2b8b0..1ade04f5f08a 100644 --- a/instrumentation/play/play-mvc/play-mvc-2.6/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/play/v2_6/ResponseFutureWrapper.java +++ b/instrumentation/play/play-mvc/play-mvc-2.6/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/play/v2_6/ResponseFutureWrapper.java @@ -7,6 +7,7 @@ import static io.opentelemetry.javaagent.instrumentation.play.v2_6.Play26Singletons.instrumenter; +import com.google.errorprone.annotations.CanIgnoreReturnValue; import io.opentelemetry.context.Context; import play.api.mvc.Result; import scala.concurrent.ExecutionContext; @@ -21,6 +22,7 @@ public static Future wrap( return future.transform( new AbstractFunction1() { @Override + @CanIgnoreReturnValue public Result apply(Result result) { instrumenter().end(context, null, null, null); return result; @@ -28,6 +30,7 @@ public Result apply(Result result) { }, new AbstractFunction1() { @Override + @CanIgnoreReturnValue public Throwable apply(Throwable throwable) { instrumenter().end(context, null, null, throwable); return throwable; diff --git a/instrumentation/resources/library/src/main/java/io/opentelemetry/instrumentation/resources/OsResource.java b/instrumentation/resources/library/src/main/java/io/opentelemetry/instrumentation/resources/OsResource.java index 4b223d77c15b..3ae54f30f396 100644 --- a/instrumentation/resources/library/src/main/java/io/opentelemetry/instrumentation/resources/OsResource.java +++ b/instrumentation/resources/library/src/main/java/io/opentelemetry/instrumentation/resources/OsResource.java @@ -9,6 +9,7 @@ import io.opentelemetry.api.common.AttributesBuilder; import io.opentelemetry.sdk.resources.Resource; import io.opentelemetry.semconv.resource.attributes.ResourceAttributes; +import java.util.Locale; import javax.annotation.Nullable; /** Factory of a {@link Resource} which provides information about the current operating system. */ @@ -60,7 +61,7 @@ static Resource buildResource() { @Nullable private static String getOs(String os) { - os = os.toLowerCase(); + os = os.toLowerCase(Locale.ROOT); if (os.startsWith("windows")) { return ResourceAttributes.OsTypeValues.WINDOWS; } else if (os.startsWith("linux")) { diff --git a/instrumentation/resources/library/src/main/java/io/opentelemetry/instrumentation/resources/ProcessResource.java b/instrumentation/resources/library/src/main/java/io/opentelemetry/instrumentation/resources/ProcessResource.java index 9dcb6184f554..d208f1024a82 100644 --- a/instrumentation/resources/library/src/main/java/io/opentelemetry/instrumentation/resources/ProcessResource.java +++ b/instrumentation/resources/library/src/main/java/io/opentelemetry/instrumentation/resources/ProcessResource.java @@ -15,6 +15,7 @@ import java.util.ArrayList; import java.util.Arrays; import java.util.List; +import java.util.Locale; import java.util.regex.Pattern; /** Factory of a {@link Resource} which provides information about the current running process. */ @@ -72,7 +73,7 @@ private static Resource doBuildResource() { .append("bin") .append(File.separatorChar) .append("java"); - if (osName != null && osName.toLowerCase().startsWith("windows")) { + if (osName != null && osName.toLowerCase(Locale.ROOT).startsWith("windows")) { executablePath.append(".exe"); } diff --git a/instrumentation/rmi/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/rmi/context/ContextPayload.java b/instrumentation/rmi/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/rmi/context/ContextPayload.java index c3121a3465eb..67a10ebfb13f 100644 --- a/instrumentation/rmi/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/rmi/context/ContextPayload.java +++ b/instrumentation/rmi/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/rmi/context/ContextPayload.java @@ -41,6 +41,7 @@ public static ContextPayload from(Context context) { return payload; } + @SuppressWarnings("BanSerializableRead") public static ContextPayload read(ObjectInput oi) throws IOException { try { Object object = oi.readObject(); diff --git a/instrumentation/spring/spring-integration-4.1/library/src/main/java/io/opentelemetry/instrumentation/spring/integration/v4_1/TracingChannelInterceptor.java b/instrumentation/spring/spring-integration-4.1/library/src/main/java/io/opentelemetry/instrumentation/spring/integration/v4_1/TracingChannelInterceptor.java index 55ca246450e1..6a2cc582f0ae 100644 --- a/instrumentation/spring/spring-integration-4.1/library/src/main/java/io/opentelemetry/instrumentation/spring/integration/v4_1/TracingChannelInterceptor.java +++ b/instrumentation/spring/spring-integration-4.1/library/src/main/java/io/opentelemetry/instrumentation/spring/integration/v4_1/TracingChannelInterceptor.java @@ -5,6 +5,7 @@ package io.opentelemetry.instrumentation.spring.integration.v4_1; +import com.google.errorprone.annotations.CanIgnoreReturnValue; import io.opentelemetry.api.trace.Span; import io.opentelemetry.context.Context; import io.opentelemetry.context.propagation.ContextPropagators; @@ -137,6 +138,7 @@ public boolean preReceive(MessageChannel messageChannel) { } @Override + @CanIgnoreReturnValue public Message postReceive(Message message, MessageChannel messageChannel) { return message; } @@ -146,6 +148,7 @@ public void afterReceiveCompletion( Message message, MessageChannel messageChannel, Exception e) {} @Override + @CanIgnoreReturnValue public Message beforeHandle( Message message, MessageChannel channel, MessageHandler handler) { diff --git a/instrumentation/spring/spring-webflux/spring-webflux-5.0/javaagent/src/test/java/server/base/ControllerSpringWebFluxServerTest.java b/instrumentation/spring/spring-webflux/spring-webflux-5.0/javaagent/src/test/java/server/base/ControllerSpringWebFluxServerTest.java index c997f210336b..da9c2f9e2b1b 100644 --- a/instrumentation/spring/spring-webflux/spring-webflux-5.0/javaagent/src/test/java/server/base/ControllerSpringWebFluxServerTest.java +++ b/instrumentation/spring/spring-webflux/spring-webflux-5.0/javaagent/src/test/java/server/base/ControllerSpringWebFluxServerTest.java @@ -19,6 +19,7 @@ import io.opentelemetry.instrumentation.testing.junit.http.ServerEndpoint; import io.opentelemetry.sdk.testing.assertj.SpanDataAssert; import io.opentelemetry.sdk.trace.data.StatusData; +import java.util.Locale; public abstract class ControllerSpringWebFluxServerTest extends SpringWebFluxServerTest { @@ -26,7 +27,7 @@ public abstract class ControllerSpringWebFluxServerTest extends SpringWebFluxSer protected SpanDataAssert assertHandlerSpan( SpanDataAssert span, String method, ServerEndpoint endpoint) { String handlerSpanName = - ServerTestController.class.getSimpleName() + "." + endpoint.name().toLowerCase(); + ServerTestController.class.getSimpleName() + "." + endpoint.name().toLowerCase(Locale.ROOT); if (endpoint == NOT_FOUND) { handlerSpanName = "ResourceWebHandler.handle"; } diff --git a/javaagent-extension-api/src/main/java/io/opentelemetry/javaagent/extension/ignore/IgnoredTypesBuilder.java b/javaagent-extension-api/src/main/java/io/opentelemetry/javaagent/extension/ignore/IgnoredTypesBuilder.java index d4aa53db1f40..8a3779db26c4 100644 --- a/javaagent-extension-api/src/main/java/io/opentelemetry/javaagent/extension/ignore/IgnoredTypesBuilder.java +++ b/javaagent-extension-api/src/main/java/io/opentelemetry/javaagent/extension/ignore/IgnoredTypesBuilder.java @@ -5,6 +5,8 @@ package io.opentelemetry.javaagent.extension.ignore; +import com.google.errorprone.annotations.CanIgnoreReturnValue; + /** * This interface defines different ways to ignore/allow instrumenting classes or packages. * @@ -23,6 +25,7 @@ public interface IgnoredTypesBuilder { * * @return {@code this} */ + @CanIgnoreReturnValue IgnoredTypesBuilder ignoreClass(String classNameOrPrefix); /** @@ -36,6 +39,7 @@ public interface IgnoredTypesBuilder { * * @return {@code this} */ + @CanIgnoreReturnValue IgnoredTypesBuilder allowClass(String classNameOrPrefix); /** @@ -48,6 +52,7 @@ public interface IgnoredTypesBuilder { * * @return {@code this} */ + @CanIgnoreReturnValue IgnoredTypesBuilder ignoreClassLoader(String classNameOrPrefix); /** @@ -61,6 +66,7 @@ public interface IgnoredTypesBuilder { * * @return {@code this} */ + @CanIgnoreReturnValue IgnoredTypesBuilder allowClassLoader(String classNameOrPrefix); /** @@ -83,5 +89,6 @@ public interface IgnoredTypesBuilder { * * @return {@code this} */ + @CanIgnoreReturnValue IgnoredTypesBuilder ignoreTaskClass(String classNameOrPrefix); } diff --git a/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/AgentTracerProviderConfigurer.java b/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/AgentTracerProviderConfigurer.java index c1a2f032cdc4..71223c79573c 100644 --- a/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/AgentTracerProviderConfigurer.java +++ b/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/AgentTracerProviderConfigurer.java @@ -9,6 +9,7 @@ import static java.util.Collections.emptyList; import com.google.auto.service.AutoService; +import com.google.errorprone.annotations.CanIgnoreReturnValue; import io.opentelemetry.exporter.logging.LoggingSpanExporter; import io.opentelemetry.javaagent.tooling.config.AgentConfig; import io.opentelemetry.sdk.autoconfigure.spi.AutoConfigurationCustomizer; @@ -27,6 +28,7 @@ public void customize(AutoConfigurationCustomizer autoConfigurationCustomizer) { AgentTracerProviderConfigurer::configure); } + @CanIgnoreReturnValue private static SdkTracerProviderBuilder configure( SdkTracerProviderBuilder sdkTracerProviderBuilder, ConfigProperties config) { if (!config.getBoolean(JAVAAGENT_ENABLED_CONFIG, true)) { diff --git a/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/field/FieldBackedImplementationInstaller.java b/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/field/FieldBackedImplementationInstaller.java index 2e39407eaabf..e371badeaff5 100644 --- a/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/field/FieldBackedImplementationInstaller.java +++ b/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/field/FieldBackedImplementationInstaller.java @@ -11,6 +11,7 @@ import static net.bytebuddy.matcher.ElementMatchers.named; import static net.bytebuddy.matcher.ElementMatchers.not; +import com.google.errorprone.annotations.CanIgnoreReturnValue; import io.opentelemetry.javaagent.bootstrap.InstrumentationHolder; import io.opentelemetry.javaagent.bootstrap.VirtualFieldDetector; import io.opentelemetry.javaagent.bootstrap.internal.InstrumentationConfig; @@ -256,6 +257,7 @@ enum NoOpTransformer implements AgentBuilder.Transformer { INSTANCE; @Override + @CanIgnoreReturnValue public DynamicType.Builder transform( DynamicType.Builder builder, TypeDescription typeDescription, diff --git a/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/field/NoopVirtualFieldImplementationInstaller.java b/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/field/NoopVirtualFieldImplementationInstaller.java index bf52abc56c6e..1e8dd15df1e6 100644 --- a/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/field/NoopVirtualFieldImplementationInstaller.java +++ b/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/field/NoopVirtualFieldImplementationInstaller.java @@ -5,6 +5,7 @@ package io.opentelemetry.javaagent.tooling.field; +import com.google.errorprone.annotations.CanIgnoreReturnValue; import net.bytebuddy.agent.builder.AgentBuilder.Identified.Extendable; final class NoopVirtualFieldImplementationInstaller implements VirtualFieldImplementationInstaller { @@ -15,11 +16,13 @@ final class NoopVirtualFieldImplementationInstaller implements VirtualFieldImple private NoopVirtualFieldImplementationInstaller() {} @Override + @CanIgnoreReturnValue public Extendable rewriteVirtualFieldsCalls(Extendable builder) { return builder; } @Override + @CanIgnoreReturnValue public Extendable injectFields(Extendable builder) { return builder; } diff --git a/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/field/RealFieldInjector.java b/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/field/RealFieldInjector.java index def17d01f662..60e14b57fbc0 100644 --- a/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/field/RealFieldInjector.java +++ b/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/field/RealFieldInjector.java @@ -9,6 +9,7 @@ import static io.opentelemetry.javaagent.tooling.field.GeneratedVirtualFieldNames.getRealGetterName; import static io.opentelemetry.javaagent.tooling.field.GeneratedVirtualFieldNames.getRealSetterName; +import com.google.errorprone.annotations.CanIgnoreReturnValue; import io.opentelemetry.javaagent.bootstrap.VirtualFieldInstalledMarker; import io.opentelemetry.javaagent.tooling.Utils; import java.util.Arrays; @@ -49,6 +50,7 @@ public int mergeWriter(int flags) { } @Override + @CanIgnoreReturnValue public int mergeReader(int flags) { return flags; } diff --git a/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/field/VirtualFieldFindRewriter.java b/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/field/VirtualFieldFindRewriter.java index 8e557342866d..c05eb031f58b 100644 --- a/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/field/VirtualFieldFindRewriter.java +++ b/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/field/VirtualFieldFindRewriter.java @@ -7,6 +7,7 @@ import static java.util.logging.Level.FINEST; +import com.google.errorprone.annotations.CanIgnoreReturnValue; import io.opentelemetry.instrumentation.api.util.VirtualField; import io.opentelemetry.javaagent.tooling.TransformSafeLogger; import io.opentelemetry.javaagent.tooling.Utils; @@ -64,6 +65,7 @@ public int mergeWriter(int flags) { } @Override + @CanIgnoreReturnValue public int mergeReader(int flags) { return flags; } diff --git a/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/field/VirtualFieldImplementationsGenerator.java b/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/field/VirtualFieldImplementationsGenerator.java index 738d3ef58017..46c77d1878ba 100644 --- a/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/field/VirtualFieldImplementationsGenerator.java +++ b/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/field/VirtualFieldImplementationsGenerator.java @@ -9,6 +9,7 @@ import static io.opentelemetry.javaagent.tooling.field.GeneratedVirtualFieldNames.getRealSetterName; import static io.opentelemetry.javaagent.tooling.field.GeneratedVirtualFieldNames.getVirtualFieldImplementationClassName; +import com.google.errorprone.annotations.CanIgnoreReturnValue; import io.opentelemetry.instrumentation.api.internal.cache.Cache; import io.opentelemetry.instrumentation.api.util.VirtualField; import io.opentelemetry.javaagent.tooling.Utils; @@ -93,6 +94,7 @@ public int mergeWriter(int flags) { } @Override + @CanIgnoreReturnValue public int mergeReader(int flags) { return flags; } diff --git a/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/util/Trie.java b/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/util/Trie.java index 91a64f3d0721..a5f5ab48bf9e 100644 --- a/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/util/Trie.java +++ b/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/util/Trie.java @@ -5,6 +5,7 @@ package io.opentelemetry.javaagent.tooling.util; +import com.google.errorprone.annotations.CanIgnoreReturnValue; import javax.annotation.Nullable; /** A prefix tree that maps from the longest matching prefix to a value {@code V}. */ @@ -40,6 +41,7 @@ default boolean contains(CharSequence str) { interface Builder { /** Associate {@code value} with the string {@code str}. */ + @CanIgnoreReturnValue Builder put(CharSequence str, V value); Trie build(); diff --git a/muzzle/src/main/java/io/opentelemetry/javaagent/tooling/HelperInjector.java b/muzzle/src/main/java/io/opentelemetry/javaagent/tooling/HelperInjector.java index b8ce7cb5c9e5..4860a9491ddd 100644 --- a/muzzle/src/main/java/io/opentelemetry/javaagent/tooling/HelperInjector.java +++ b/muzzle/src/main/java/io/opentelemetry/javaagent/tooling/HelperInjector.java @@ -8,6 +8,7 @@ import static java.util.logging.Level.FINE; import static java.util.logging.Level.SEVERE; +import com.google.errorprone.annotations.CanIgnoreReturnValue; import io.opentelemetry.instrumentation.api.internal.cache.Cache; import io.opentelemetry.javaagent.bootstrap.HelperResources; import io.opentelemetry.javaagent.bootstrap.InjectedClassHelper; @@ -179,6 +180,7 @@ private Map> getHelperMap() { } @Override + @CanIgnoreReturnValue public DynamicType.Builder transform( DynamicType.Builder builder, TypeDescription typeDescription, diff --git a/muzzle/src/main/java/io/opentelemetry/javaagent/tooling/muzzle/AgentCachingPoolStrategy.java b/muzzle/src/main/java/io/opentelemetry/javaagent/tooling/muzzle/AgentCachingPoolStrategy.java index e54853f22fb8..afc19d21511b 100644 --- a/muzzle/src/main/java/io/opentelemetry/javaagent/tooling/muzzle/AgentCachingPoolStrategy.java +++ b/muzzle/src/main/java/io/opentelemetry/javaagent/tooling/muzzle/AgentCachingPoolStrategy.java @@ -5,6 +5,7 @@ package io.opentelemetry.javaagent.tooling.muzzle; +import com.google.errorprone.annotations.CanIgnoreReturnValue; import io.opentelemetry.instrumentation.api.internal.cache.Cache; import io.opentelemetry.javaagent.bootstrap.InstrumentationHolder; import io.opentelemetry.javaagent.bootstrap.VirtualFieldAccessorMarker; @@ -295,6 +296,7 @@ public TypePool.Resolution find(String className) { } @Override + @CanIgnoreReturnValue public TypePool.Resolution register(String className, TypePool.Resolution resolution) { if (OBJECT_NAME.equals(className)) { return resolution; @@ -331,6 +333,7 @@ protected TypePool.Resolution doDescribe(String name) { } @Override + @CanIgnoreReturnValue protected TypePool.Resolution doCache(String name, TypePool.Resolution resolution) { return resolution; } diff --git a/muzzle/src/main/java/io/opentelemetry/javaagent/tooling/muzzle/VirtualFieldMappingsBuilder.java b/muzzle/src/main/java/io/opentelemetry/javaagent/tooling/muzzle/VirtualFieldMappingsBuilder.java index 1b7c4a94aa31..448e2adf3044 100644 --- a/muzzle/src/main/java/io/opentelemetry/javaagent/tooling/muzzle/VirtualFieldMappingsBuilder.java +++ b/muzzle/src/main/java/io/opentelemetry/javaagent/tooling/muzzle/VirtualFieldMappingsBuilder.java @@ -5,6 +5,7 @@ package io.opentelemetry.javaagent.tooling.muzzle; +import com.google.errorprone.annotations.CanIgnoreReturnValue; import io.opentelemetry.instrumentation.api.util.VirtualField; /** @@ -26,5 +27,6 @@ public interface VirtualFieldMappingsBuilder { * @return {@code this}. * @see VirtualField */ + @CanIgnoreReturnValue VirtualFieldMappingsBuilder register(String typeName, String fieldTypeName); } diff --git a/muzzle/src/main/java/io/opentelemetry/javaagent/tooling/muzzle/generation/MuzzleCodeGenerator.java b/muzzle/src/main/java/io/opentelemetry/javaagent/tooling/muzzle/generation/MuzzleCodeGenerator.java index 12b18ddf7ec0..bc1345831300 100644 --- a/muzzle/src/main/java/io/opentelemetry/javaagent/tooling/muzzle/generation/MuzzleCodeGenerator.java +++ b/muzzle/src/main/java/io/opentelemetry/javaagent/tooling/muzzle/generation/MuzzleCodeGenerator.java @@ -7,6 +7,7 @@ import static java.util.logging.Level.INFO; +import com.google.errorprone.annotations.CanIgnoreReturnValue; import io.opentelemetry.javaagent.extension.instrumentation.InstrumentationModule; import io.opentelemetry.javaagent.extension.instrumentation.TypeInstrumentation; import io.opentelemetry.javaagent.tooling.muzzle.HelperResource; @@ -66,6 +67,7 @@ public int mergeWriter(int flags) { } @Override + @CanIgnoreReturnValue public int mergeReader(int flags) { return flags; } diff --git a/smoke-tests/src/test/java/io/opentelemetry/smoketest/TestContainerManager.java b/smoke-tests/src/test/java/io/opentelemetry/smoketest/TestContainerManager.java index f926c95bda26..055bc2861b42 100644 --- a/smoke-tests/src/test/java/io/opentelemetry/smoketest/TestContainerManager.java +++ b/smoke-tests/src/test/java/io/opentelemetry/smoketest/TestContainerManager.java @@ -6,6 +6,7 @@ package io.opentelemetry.smoketest; import java.util.List; +import java.util.Locale; import java.util.Map; import java.util.function.Consumer; import org.testcontainers.containers.output.OutputFrame; @@ -33,6 +34,6 @@ Consumer startTarget( static boolean useWindowsContainers() { return !"1".equals(System.getenv("USE_LINUX_CONTAINERS")) - && System.getProperty("os.name").toLowerCase().contains("windows"); + && System.getProperty("os.name").toLowerCase(Locale.ROOT).contains("windows"); } } diff --git a/testing-common/src/main/java/io/opentelemetry/instrumentation/testing/junit/http/AbstractHttpClientTest.java b/testing-common/src/main/java/io/opentelemetry/instrumentation/testing/junit/http/AbstractHttpClientTest.java index 57f8439ae142..b316d167ee8d 100644 --- a/testing-common/src/main/java/io/opentelemetry/instrumentation/testing/junit/http/AbstractHttpClientTest.java +++ b/testing-common/src/main/java/io/opentelemetry/instrumentation/testing/junit/http/AbstractHttpClientTest.java @@ -13,6 +13,7 @@ import static org.junit.Assume.assumeFalse; import static org.junit.jupiter.api.Assumptions.assumeTrue; +import com.google.errorprone.annotations.CanIgnoreReturnValue; import io.opentelemetry.api.common.AttributeKey; import io.opentelemetry.api.trace.Span; import io.opentelemetry.api.trace.SpanKind; @@ -1010,6 +1011,7 @@ protected String userAgent() { return null; } + @CanIgnoreReturnValue protected Throwable clientSpanError(URI uri, Throwable exception) { return exception; } diff --git a/testing-common/src/main/java/io/opentelemetry/instrumentation/testing/junit/http/AbstractHttpServerTest.java b/testing-common/src/main/java/io/opentelemetry/instrumentation/testing/junit/http/AbstractHttpServerTest.java index 549acbb4ea72..c6d302659179 100644 --- a/testing-common/src/main/java/io/opentelemetry/instrumentation/testing/junit/http/AbstractHttpServerTest.java +++ b/testing-common/src/main/java/io/opentelemetry/instrumentation/testing/junit/http/AbstractHttpServerTest.java @@ -19,6 +19,7 @@ import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.equalTo; import static org.junit.jupiter.api.Assumptions.assumeTrue; +import com.google.errorprone.annotations.CanIgnoreReturnValue; import io.opentelemetry.api.GlobalOpenTelemetry; import io.opentelemetry.api.common.AttributeKey; import io.opentelemetry.api.trace.Span; @@ -599,6 +600,7 @@ protected void assertTheTraces( testing.waitAndAssertTraces(assertions); } + @CanIgnoreReturnValue protected SpanDataAssert assertControllerSpan(SpanDataAssert span, Throwable expectedException) { span.hasName("controller").hasKind(SpanKind.INTERNAL); if (expectedException != null) { @@ -626,6 +628,7 @@ protected List> errorPageSpanAssertions( "errorPageSpanAssertions not implemented in " + getClass().getName()); } + @CanIgnoreReturnValue protected SpanDataAssert assertServerSpan( SpanDataAssert span, String method, ServerEndpoint endpoint) { @@ -742,6 +745,7 @@ private String getString(String method, ServerEndpoint endpoint, String expected return name; } + @CanIgnoreReturnValue protected SpanDataAssert assertIndexedServerSpan(SpanDataAssert span, int requestId) { ServerEndpoint endpoint = INDEXED_CHILD; String method = "GET"; @@ -755,6 +759,7 @@ protected SpanDataAssert assertIndexedServerSpan(SpanDataAssert span, int reques return span; } + @CanIgnoreReturnValue protected SpanDataAssert assertIndexedControllerSpan(SpanDataAssert span, int requestId) { span.hasName("controller") .hasKind(SpanKind.INTERNAL) diff --git a/testing-common/src/main/java/io/opentelemetry/instrumentation/testing/junit/http/HttpClientTestOptions.java b/testing-common/src/main/java/io/opentelemetry/instrumentation/testing/junit/http/HttpClientTestOptions.java index b864e258aab6..5e74bd885f56 100644 --- a/testing-common/src/main/java/io/opentelemetry/instrumentation/testing/junit/http/HttpClientTestOptions.java +++ b/testing-common/src/main/java/io/opentelemetry/instrumentation/testing/junit/http/HttpClientTestOptions.java @@ -144,50 +144,62 @@ default Builder withDefaults() { Builder setTestErrorWithCallback(boolean value); + @CanIgnoreReturnValue default Builder disableTestWithClientParent() { return setTestWithClientParent(false); } + @CanIgnoreReturnValue default Builder disableTestRedirects() { return setTestRedirects(false); } + @CanIgnoreReturnValue default Builder disableTestCircularRedirects() { return setTestCircularRedirects(false); } + @CanIgnoreReturnValue default Builder disableTestReusedRequest() { return setTestReusedRequest(false); } + @CanIgnoreReturnValue default Builder disableTestConnectionFailure() { return setTestConnectionFailure(false); } + @CanIgnoreReturnValue default Builder enableTestReadTimeout() { return setTestReadTimeout(true); } + @CanIgnoreReturnValue default Builder disableTestRemoteConnection() { return setTestRemoteConnection(false); } + @CanIgnoreReturnValue default Builder disableTestHttps() { return setTestHttps(false); } + @CanIgnoreReturnValue default Builder disableTestCallback() { return setTestCallback(false); } + @CanIgnoreReturnValue default Builder disableTestCallbackWithParent() { return setTestCallbackWithParent(false); } + @CanIgnoreReturnValue default Builder disableTestErrorWithCallback() { return setTestErrorWithCallback(false); } + @CanIgnoreReturnValue default Builder enableTestCallbackWithImplicitParent() { return setTestCallbackWithImplicitParent(true); }