Skip to content

Commit e35b538

Browse files
committed
add nullaway
1 parent dbf631d commit e35b538

File tree

5 files changed

+12
-2
lines changed

5 files changed

+12
-2
lines changed

instrumentation/spring/spring-web/spring-web-3.1/library/build.gradle.kts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
plugins {
22
id("otel.library-instrumentation")
3+
id("otel.nullaway-conventions")
34
}
45

56
dependencies {

instrumentation/spring/spring-web/spring-web-3.1/library/src/main/java/io/opentelemetry/instrumentation/spring/web/v3_1/HeaderUtil.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
import java.lang.invoke.MethodType;
1414
import java.util.List;
1515
import java.util.function.Supplier;
16+
import javax.annotation.Nullable;
1617
import org.springframework.http.HttpHeaders;
1718

1819
class HeaderUtil {
@@ -29,12 +30,13 @@ class HeaderUtil {
2930
}
3031

3132
// copied from java.util.Objects in Java 9+
32-
private static <T> T requireNonNullElseGet(T obj, Supplier<? extends T> supplier) {
33+
private static <T> T requireNonNullElseGet(@Nullable T obj, Supplier<? extends T> supplier) {
3334
return (obj != null)
3435
? obj
3536
: requireNonNull(requireNonNull(supplier, "supplier").get(), "supplier.get()");
3637
}
3738

39+
@Nullable
3840
private static MethodHandle findGetHeadersMethod(MethodType methodType) {
3941
try {
4042
return MethodHandles.lookup().findVirtual(HttpHeaders.class, "get", methodType);

instrumentation/spring/spring-web/spring-web-3.1/library/src/main/java/io/opentelemetry/instrumentation/spring/web/v3_1/HttpRequestSetter.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,17 @@
66
package io.opentelemetry.instrumentation.spring.web.v3_1;
77

88
import io.opentelemetry.context.propagation.TextMapSetter;
9+
import javax.annotation.Nullable;
910
import org.springframework.http.HttpRequest;
1011

1112
enum HttpRequestSetter implements TextMapSetter<HttpRequest> {
1213
INSTANCE;
1314

1415
@Override
15-
public void set(HttpRequest httpRequest, String key, String value) {
16+
public void set(@Nullable HttpRequest httpRequest, String key, String value) {
17+
if (httpRequest == null) {
18+
return;
19+
}
1620
httpRequest.getHeaders().set(key, value);
1721
}
1822
}

instrumentation/spring/spring-web/spring-web-3.1/library/src/main/java/io/opentelemetry/instrumentation/spring/web/v3_1/SpringWebHttpAttributesGetter.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,7 @@ public List<String> getHttpRequestHeader(HttpRequest httpRequest, String name) {
7373
}
7474

7575
@Override
76+
@Nullable
7677
public Integer getHttpResponseStatusCode(
7778
HttpRequest httpRequest, ClientHttpResponse clientHttpResponse, @Nullable Throwable error) {
7879

instrumentation/spring/spring-web/spring-web-3.1/library/src/main/java/io/opentelemetry/instrumentation/spring/web/v3_1/internal/WebTelemetryUtil.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
package io.opentelemetry.instrumentation.spring.web.v3_1.internal;
77

88
import io.opentelemetry.instrumentation.api.incubator.builder.internal.DefaultHttpClientInstrumenterBuilder;
9+
import io.opentelemetry.instrumentation.api.internal.Initializer;
910
import io.opentelemetry.instrumentation.spring.web.v3_1.SpringWebTelemetryBuilder;
1011
import java.util.function.Function;
1112
import org.springframework.http.HttpRequest;
@@ -31,6 +32,7 @@ private WebTelemetryUtil() {}
3132
return builderExtractor;
3233
}
3334

35+
@Initializer
3436
public static void setBuilderExtractor(
3537
Function<
3638
SpringWebTelemetryBuilder,

0 commit comments

Comments
 (0)