diff --git a/ai/mcp/src/main/java/com/linecorp/armeria/server/ai/mcp/ArmeriaStatelessServerTransport.java b/ai/mcp/src/main/java/com/linecorp/armeria/server/ai/mcp/ArmeriaStatelessServerTransport.java index d359f2437af..f306890627e 100644 --- a/ai/mcp/src/main/java/com/linecorp/armeria/server/ai/mcp/ArmeriaStatelessServerTransport.java +++ b/ai/mcp/src/main/java/com/linecorp/armeria/server/ai/mcp/ArmeriaStatelessServerTransport.java @@ -25,6 +25,7 @@ import java.io.IOException; import java.util.concurrent.CompletableFuture; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -33,7 +34,6 @@ import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.jsonrpc.JsonRpcError; import com.linecorp.armeria.common.jsonrpc.JsonRpcResponse; diff --git a/ai/mcp/src/main/java/com/linecorp/armeria/server/ai/mcp/ArmeriaStreamableServerTransportProvider.java b/ai/mcp/src/main/java/com/linecorp/armeria/server/ai/mcp/ArmeriaStreamableServerTransportProvider.java index 628d17d51e2..4d001fdd353 100644 --- a/ai/mcp/src/main/java/com/linecorp/armeria/server/ai/mcp/ArmeriaStreamableServerTransportProvider.java +++ b/ai/mcp/src/main/java/com/linecorp/armeria/server/ai/mcp/ArmeriaStreamableServerTransportProvider.java @@ -28,6 +28,7 @@ import java.util.concurrent.ConcurrentHashMap; import java.util.function.Function; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -39,7 +40,6 @@ import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.jsonrpc.JsonRpcError; import com.linecorp.armeria.common.jsonrpc.JsonRpcResponse; @@ -112,8 +112,7 @@ public static ArmeriaStreamableServerTransportProviderBuilder builder() { @Nullable private final KeepAliveScheduler keepAliveScheduler; - @Nullable - private McpStreamableServerSession.Factory sessionFactory; + private McpStreamableServerSession.@Nullable Factory sessionFactory; private volatile boolean isClosing; ArmeriaStreamableServerTransportProvider( diff --git a/ai/mcp/src/main/java/com/linecorp/armeria/server/ai/mcp/ArmeriaStreamableServerTransportProviderBuilder.java b/ai/mcp/src/main/java/com/linecorp/armeria/server/ai/mcp/ArmeriaStreamableServerTransportProviderBuilder.java index cceb86a6a20..14a633f290a 100644 --- a/ai/mcp/src/main/java/com/linecorp/armeria/server/ai/mcp/ArmeriaStreamableServerTransportProviderBuilder.java +++ b/ai/mcp/src/main/java/com/linecorp/armeria/server/ai/mcp/ArmeriaStreamableServerTransportProviderBuilder.java @@ -20,7 +20,8 @@ import java.time.Duration; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.server.ServiceRequestContext; import io.modelcontextprotocol.common.McpTransportContext; diff --git a/ai/mcp/src/main/java/com/linecorp/armeria/server/ai/mcp/package-info.java b/ai/mcp/src/main/java/com/linecorp/armeria/server/ai/mcp/package-info.java index c65a15dfd0c..f888afbf84a 100644 --- a/ai/mcp/src/main/java/com/linecorp/armeria/server/ai/mcp/package-info.java +++ b/ai/mcp/src/main/java/com/linecorp/armeria/server/ai/mcp/package-info.java @@ -18,8 +18,9 @@ * Model Context Protocol (MCP) support for Armeria server. */ @UnstableApi -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.ai.mcp; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/annotation-processor/src/main/java/com/linecorp/armeria/server/annotation/processor/package-info.java b/annotation-processor/src/main/java/com/linecorp/armeria/server/annotation/processor/package-info.java index bade352fe82..06c0e91e3e6 100644 --- a/annotation-processor/src/main/java/com/linecorp/armeria/server/annotation/processor/package-info.java +++ b/annotation-processor/src/main/java/com/linecorp/armeria/server/annotation/processor/package-info.java @@ -17,7 +17,7 @@ /** * Annotation processors for annotated services. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.annotation.processor; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/athenz/src/main/java/com/linecorp/armeria/client/athenz/AthenzClientBuilder.java b/athenz/src/main/java/com/linecorp/armeria/client/athenz/AthenzClientBuilder.java index e3d43d8c6da..f52aa9dd4e7 100644 --- a/athenz/src/main/java/com/linecorp/armeria/client/athenz/AthenzClientBuilder.java +++ b/athenz/src/main/java/com/linecorp/armeria/client/athenz/AthenzClientBuilder.java @@ -23,10 +23,11 @@ import java.util.List; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.linecorp.armeria.client.HttpClient; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.athenz.TokenType; import com.linecorp.armeria.common.metric.MeterIdPrefix; diff --git a/athenz/src/main/java/com/linecorp/armeria/client/athenz/RoleTokenClient.java b/athenz/src/main/java/com/linecorp/armeria/client/athenz/RoleTokenClient.java index 0572b9a54d4..9c5b8d6e8b1 100644 --- a/athenz/src/main/java/com/linecorp/armeria/client/athenz/RoleTokenClient.java +++ b/athenz/src/main/java/com/linecorp/armeria/client/athenz/RoleTokenClient.java @@ -20,6 +20,8 @@ import java.util.List; import java.util.concurrent.CompletableFuture; +import org.jspecify.annotations.Nullable; + import com.google.common.base.Joiner; import com.yahoo.athenz.zts.RoleToken; @@ -27,7 +29,6 @@ import com.linecorp.armeria.client.WebClient; import com.linecorp.armeria.client.WebClientRequestPreparation; import com.linecorp.armeria.common.HttpStatus; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.athenz.AccessDeniedException; import com.linecorp.armeria.common.util.AsyncLoader; import com.linecorp.armeria.common.util.Exceptions; diff --git a/athenz/src/main/java/com/linecorp/armeria/client/athenz/ZtsBaseClient.java b/athenz/src/main/java/com/linecorp/armeria/client/athenz/ZtsBaseClient.java index c02cb60fae8..4b48b2d2e9a 100644 --- a/athenz/src/main/java/com/linecorp/armeria/client/athenz/ZtsBaseClient.java +++ b/athenz/src/main/java/com/linecorp/armeria/client/athenz/ZtsBaseClient.java @@ -26,6 +26,7 @@ import java.util.function.Consumer; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; import org.slf4j.LoggerFactory; import com.linecorp.armeria.client.ClientFactory; @@ -38,7 +39,6 @@ import com.linecorp.armeria.common.CommonPools; import com.linecorp.armeria.common.TlsKeyPair; import com.linecorp.armeria.common.TlsProvider; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.logging.LogLevel; import com.linecorp.armeria.common.logging.LogWriter; diff --git a/athenz/src/main/java/com/linecorp/armeria/client/athenz/ZtsBaseClientBuilder.java b/athenz/src/main/java/com/linecorp/armeria/client/athenz/ZtsBaseClientBuilder.java index f6cf63d0ebb..7460c95e9b6 100644 --- a/athenz/src/main/java/com/linecorp/armeria/client/athenz/ZtsBaseClientBuilder.java +++ b/athenz/src/main/java/com/linecorp/armeria/client/athenz/ZtsBaseClientBuilder.java @@ -29,6 +29,8 @@ import java.util.function.Consumer; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.linecorp.armeria.client.ClientFactory; @@ -39,7 +41,6 @@ import com.linecorp.armeria.client.proxy.ConnectProxyConfig; import com.linecorp.armeria.client.proxy.ProxyConfig; import com.linecorp.armeria.common.TlsKeyPair; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.metric.MeterIdPrefixFunction; import com.linecorp.armeria.internal.common.util.CertificateUtil; diff --git a/athenz/src/main/java/com/linecorp/armeria/client/athenz/package-info.java b/athenz/src/main/java/com/linecorp/armeria/client/athenz/package-info.java index 252c2c60321..3b7e623b3fe 100644 --- a/athenz/src/main/java/com/linecorp/armeria/client/athenz/package-info.java +++ b/athenz/src/main/java/com/linecorp/armeria/client/athenz/package-info.java @@ -18,8 +18,9 @@ * Provides the client-side classes and interfaces for Athenz integration. */ @UnstableApi -@NonNullByDefault +@NullMarked package com.linecorp.armeria.client.athenz; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/athenz/src/main/java/com/linecorp/armeria/common/athenz/TokenType.java b/athenz/src/main/java/com/linecorp/armeria/common/athenz/TokenType.java index 96b649b2115..0cfda04b664 100644 --- a/athenz/src/main/java/com/linecorp/armeria/common/athenz/TokenType.java +++ b/athenz/src/main/java/com/linecorp/armeria/common/athenz/TokenType.java @@ -16,8 +16,9 @@ package com.linecorp.armeria.common.athenz; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpHeaderNames; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import io.netty.util.AsciiString; diff --git a/athenz/src/main/java/com/linecorp/armeria/common/athenz/package-info.java b/athenz/src/main/java/com/linecorp/armeria/common/athenz/package-info.java index f5f99353da2..5d2fed61f49 100644 --- a/athenz/src/main/java/com/linecorp/armeria/common/athenz/package-info.java +++ b/athenz/src/main/java/com/linecorp/armeria/common/athenz/package-info.java @@ -18,8 +18,9 @@ * Provides common classes and interfaces for Athenz integration. */ @UnstableApi -@NonNullByDefault +@NullMarked package com.linecorp.armeria.common.athenz; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/athenz/src/main/java/com/linecorp/armeria/internal/server/athenz/AthenzServiceDecoratorFactoryProvider.java b/athenz/src/main/java/com/linecorp/armeria/internal/server/athenz/AthenzServiceDecoratorFactoryProvider.java index 4523baae2c1..6d78e6defd6 100644 --- a/athenz/src/main/java/com/linecorp/armeria/internal/server/athenz/AthenzServiceDecoratorFactoryProvider.java +++ b/athenz/src/main/java/com/linecorp/armeria/internal/server/athenz/AthenzServiceDecoratorFactoryProvider.java @@ -21,11 +21,12 @@ import java.time.Duration; import java.util.List; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableMap; import com.linecorp.armeria.client.athenz.ZtsBaseClient; import com.linecorp.armeria.client.athenz.ZtsBaseClientBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.Server; import com.linecorp.armeria.server.ServerBuilder; import com.linecorp.armeria.server.ServerListenerAdapter; diff --git a/athenz/src/main/java/com/linecorp/armeria/internal/server/athenz/package-info.java b/athenz/src/main/java/com/linecorp/armeria/internal/server/athenz/package-info.java index 79c9ffab146..ddd15e06e46 100644 --- a/athenz/src/main/java/com/linecorp/armeria/internal/server/athenz/package-info.java +++ b/athenz/src/main/java/com/linecorp/armeria/internal/server/athenz/package-info.java @@ -18,8 +18,9 @@ * Internal classes for Athenz integration. */ @UnstableApi -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.server.athenz; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/athenz/src/main/java/com/linecorp/armeria/server/athenz/AbstractAthenzServiceBuilder.java b/athenz/src/main/java/com/linecorp/armeria/server/athenz/AbstractAthenzServiceBuilder.java index 62e4ac09714..4c94973326c 100644 --- a/athenz/src/main/java/com/linecorp/armeria/server/athenz/AbstractAthenzServiceBuilder.java +++ b/athenz/src/main/java/com/linecorp/armeria/server/athenz/AbstractAthenzServiceBuilder.java @@ -23,12 +23,13 @@ import java.net.URI; import java.time.Duration; +import org.jspecify.annotations.Nullable; + import com.yahoo.athenz.zpe.ZpeClient; import com.yahoo.athenz.zpe.ZpeConsts; import com.yahoo.athenz.zpe.pkey.PublicKeyStore; import com.linecorp.armeria.client.athenz.ZtsBaseClient; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.metric.MeterIdPrefix; diff --git a/athenz/src/main/java/com/linecorp/armeria/server/athenz/AthenzPolicyHandler.java b/athenz/src/main/java/com/linecorp/armeria/server/athenz/AthenzPolicyHandler.java index 73ff255f6e0..cd1185bfc85 100644 --- a/athenz/src/main/java/com/linecorp/armeria/server/athenz/AthenzPolicyHandler.java +++ b/athenz/src/main/java/com/linecorp/armeria/server/athenz/AthenzPolicyHandler.java @@ -40,6 +40,7 @@ import java.util.List; import java.util.Map; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -63,8 +64,6 @@ import com.yahoo.athenz.zts.SignedPolicyData; import com.yahoo.rdl.Struct; -import com.linecorp.armeria.common.annotation.Nullable; - final class AthenzPolicyHandler { // Forked from: https://github.com/AthenZ/athenz/blob/7e326fa655fef997ce913267f9dd561a9f4c82dd/clients/java/zpe/src/main/java/com/yahoo/athenz/zpe/ZpeUpdPolLoader.java#L333 diff --git a/athenz/src/main/java/com/linecorp/armeria/server/athenz/AthenzPolicyLoader.java b/athenz/src/main/java/com/linecorp/armeria/server/athenz/AthenzPolicyLoader.java index b0849d2243f..04be4557718 100644 --- a/athenz/src/main/java/com/linecorp/armeria/server/athenz/AthenzPolicyLoader.java +++ b/athenz/src/main/java/com/linecorp/armeria/server/athenz/AthenzPolicyLoader.java @@ -23,6 +23,8 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.TimeUnit; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableMap; import com.yahoo.athenz.zpe.pkey.PublicKeyStore; import com.yahoo.athenz.zts.DomainSignedPolicyData; @@ -31,7 +33,6 @@ import com.linecorp.armeria.client.WebClient; import com.linecorp.armeria.client.athenz.ZtsBaseClient; import com.linecorp.armeria.common.CommonPools; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.AsyncLoader; final class AthenzPolicyLoader { diff --git a/athenz/src/main/java/com/linecorp/armeria/server/athenz/AthenzService.java b/athenz/src/main/java/com/linecorp/armeria/server/athenz/AthenzService.java index 2414199f0e7..085c7cab79d 100644 --- a/athenz/src/main/java/com/linecorp/armeria/server/athenz/AthenzService.java +++ b/athenz/src/main/java/com/linecorp/armeria/server/athenz/AthenzService.java @@ -23,13 +23,14 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.TimeUnit; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.athenz.ZtsBaseClient; import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.athenz.TokenType; import com.linecorp.armeria.common.metric.MeterIdPrefix; diff --git a/athenz/src/main/java/com/linecorp/armeria/server/athenz/AthenzServiceBuilder.java b/athenz/src/main/java/com/linecorp/armeria/server/athenz/AthenzServiceBuilder.java index be258486a33..191806e43a9 100644 --- a/athenz/src/main/java/com/linecorp/armeria/server/athenz/AthenzServiceBuilder.java +++ b/athenz/src/main/java/com/linecorp/armeria/server/athenz/AthenzServiceBuilder.java @@ -23,12 +23,13 @@ import java.util.List; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.google.common.collect.Iterables; import com.linecorp.armeria.client.HttpClient; import com.linecorp.armeria.client.athenz.ZtsBaseClient; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.athenz.TokenType; import com.linecorp.armeria.server.HttpService; diff --git a/athenz/src/main/java/com/linecorp/armeria/server/athenz/MinifiedAuthZpeClient.java b/athenz/src/main/java/com/linecorp/armeria/server/athenz/MinifiedAuthZpeClient.java index a33026de790..24a1f52e8fc 100644 --- a/athenz/src/main/java/com/linecorp/armeria/server/athenz/MinifiedAuthZpeClient.java +++ b/athenz/src/main/java/com/linecorp/armeria/server/athenz/MinifiedAuthZpeClient.java @@ -41,6 +41,7 @@ import javax.net.ssl.SSLContext; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -62,7 +63,6 @@ import com.linecorp.armeria.client.athenz.ZtsBaseClient; import com.linecorp.armeria.common.TlsKeyPair; import com.linecorp.armeria.common.TlsProvider; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.TlsEngineType; import com.linecorp.armeria.internal.common.util.SslContextUtil; diff --git a/athenz/src/main/java/com/linecorp/armeria/server/athenz/package-info.java b/athenz/src/main/java/com/linecorp/armeria/server/athenz/package-info.java index a8e6c430f4b..12d9660e6b9 100644 --- a/athenz/src/main/java/com/linecorp/armeria/server/athenz/package-info.java +++ b/athenz/src/main/java/com/linecorp/armeria/server/athenz/package-info.java @@ -19,8 +19,9 @@ * Provides the server-side classes and interfaces for Athenz integration. */ @UnstableApi -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.athenz; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/athenz/src/test/java/com/linecorp/armeria/server/athenz/AthenzDocker.java b/athenz/src/test/java/com/linecorp/armeria/server/athenz/AthenzDocker.java index 342cecae043..9afec1f0e01 100644 --- a/athenz/src/test/java/com/linecorp/armeria/server/athenz/AthenzDocker.java +++ b/athenz/src/test/java/com/linecorp/armeria/server/athenz/AthenzDocker.java @@ -26,6 +26,7 @@ import javax.net.ssl.SSLContext; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.testcontainers.containers.ComposeContainer; @@ -47,7 +48,6 @@ import com.linecorp.armeria.client.athenz.ZtsBaseClient; import com.linecorp.armeria.client.athenz.ZtsBaseClientBuilder; import com.linecorp.armeria.common.TlsKeyPair; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.SafeCloseable; import io.micrometer.core.instrument.util.IOUtils; diff --git a/benchmarks/jmh/src/jmh/java/com/linecorp/armeria/common/HttpHeadersBenchmark.java b/benchmarks/jmh/src/jmh/java/com/linecorp/armeria/common/HttpHeadersBenchmark.java index 90afc7e2e12..4571debfc8a 100644 --- a/benchmarks/jmh/src/jmh/java/com/linecorp/armeria/common/HttpHeadersBenchmark.java +++ b/benchmarks/jmh/src/jmh/java/com/linecorp/armeria/common/HttpHeadersBenchmark.java @@ -16,11 +16,10 @@ package com.linecorp.armeria.common; +import org.jspecify.annotations.Nullable; import org.openjdk.jmh.annotations.Benchmark; import org.openjdk.jmh.annotations.Fork; -import com.linecorp.armeria.common.annotation.Nullable; - /** * Microbenchmarks of {@link DefaultHttpHeaders} construction. */ diff --git a/benchmarks/jmh/src/jmh/java/com/linecorp/armeria/core/client/endpoint/WeightedRoundRobinStrategyBenchmark.java b/benchmarks/jmh/src/jmh/java/com/linecorp/armeria/core/client/endpoint/WeightedRoundRobinStrategyBenchmark.java index 62dbf3f3d75..101c2b5ab26 100644 --- a/benchmarks/jmh/src/jmh/java/com/linecorp/armeria/core/client/endpoint/WeightedRoundRobinStrategyBenchmark.java +++ b/benchmarks/jmh/src/jmh/java/com/linecorp/armeria/core/client/endpoint/WeightedRoundRobinStrategyBenchmark.java @@ -20,6 +20,7 @@ import java.util.List; import java.util.Random; +import org.jspecify.annotations.Nullable; import org.openjdk.jmh.annotations.Benchmark; import org.openjdk.jmh.annotations.Scope; import org.openjdk.jmh.annotations.Setup; @@ -29,7 +30,6 @@ import com.linecorp.armeria.client.endpoint.EndpointGroup; import com.linecorp.armeria.client.endpoint.EndpointSelectionStrategy; import com.linecorp.armeria.client.endpoint.EndpointSelector; -import com.linecorp.armeria.common.annotation.Nullable; /** * Microbenchmarks of different {@link EndpointSelector} configurations. diff --git a/benchmarks/jmh/src/jmh/java/com/linecorp/armeria/grpc/shared/SimpleBenchmarkBase.java b/benchmarks/jmh/src/jmh/java/com/linecorp/armeria/grpc/shared/SimpleBenchmarkBase.java index 044fb3fa00f..ecddf340089 100644 --- a/benchmarks/jmh/src/jmh/java/com/linecorp/armeria/grpc/shared/SimpleBenchmarkBase.java +++ b/benchmarks/jmh/src/jmh/java/com/linecorp/armeria/grpc/shared/SimpleBenchmarkBase.java @@ -20,6 +20,7 @@ import java.util.concurrent.TimeUnit; +import org.jspecify.annotations.Nullable; import org.openjdk.jmh.annotations.Benchmark; import org.openjdk.jmh.annotations.Param; import org.openjdk.jmh.annotations.Scope; @@ -32,7 +33,6 @@ import com.google.common.util.concurrent.MoreExecutors; import com.google.protobuf.Empty; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.grpc.GithubApi.SearchResponse; import com.linecorp.armeria.grpc.GithubServiceGrpc; import com.linecorp.armeria.grpc.GithubServiceGrpc.GithubServiceBlockingStub; diff --git a/benchmarks/jmh/src/jmh/java/com/linecorp/armeria/internal/server/annotation/MethodInvokerBenchmark.java b/benchmarks/jmh/src/jmh/java/com/linecorp/armeria/internal/server/annotation/MethodInvokerBenchmark.java index ebfea3fdacb..4ae9a6d5b72 100644 --- a/benchmarks/jmh/src/jmh/java/com/linecorp/armeria/internal/server/annotation/MethodInvokerBenchmark.java +++ b/benchmarks/jmh/src/jmh/java/com/linecorp/armeria/internal/server/annotation/MethodInvokerBenchmark.java @@ -23,6 +23,7 @@ import java.lang.reflect.Modifier; import java.util.concurrent.TimeUnit; +import org.jspecify.annotations.Nullable; import org.openjdk.jmh.annotations.Benchmark; import org.openjdk.jmh.annotations.BenchmarkMode; import org.openjdk.jmh.annotations.Level; @@ -34,8 +35,6 @@ import org.openjdk.jmh.annotations.Warmup; import org.openjdk.jmh.infra.Blackhole; -import com.linecorp.armeria.common.annotation.Nullable; - @State(Scope.Benchmark) @OutputTimeUnit(TimeUnit.NANOSECONDS) @BenchmarkMode(Mode.AverageTime) diff --git a/benchmarks/jmh/src/jmh/java/com/linecorp/armeria/server/AnnotatedServiceBenchmark.java b/benchmarks/jmh/src/jmh/java/com/linecorp/armeria/server/AnnotatedServiceBenchmark.java index 24f01c3d07d..00a2463f2fe 100644 --- a/benchmarks/jmh/src/jmh/java/com/linecorp/armeria/server/AnnotatedServiceBenchmark.java +++ b/benchmarks/jmh/src/jmh/java/com/linecorp/armeria/server/AnnotatedServiceBenchmark.java @@ -19,6 +19,7 @@ import java.util.List; import java.util.concurrent.CompletableFuture; +import org.jspecify.annotations.Nullable; import org.openjdk.jmh.annotations.Benchmark; import org.openjdk.jmh.annotations.Level; import org.openjdk.jmh.annotations.Scope; @@ -29,7 +30,6 @@ import com.linecorp.armeria.client.WebClient; import com.linecorp.armeria.common.HttpResponse; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.annotation.Get; @State(Scope.Benchmark) diff --git a/brave/brave5/src/main/java/com/linecorp/armeria/client/brave/package-info.java b/brave/brave5/src/main/java/com/linecorp/armeria/client/brave/package-info.java index 7f93f2e264c..23567314b85 100644 --- a/brave/brave5/src/main/java/com/linecorp/armeria/client/brave/package-info.java +++ b/brave/brave5/src/main/java/com/linecorp/armeria/client/brave/package-info.java @@ -23,7 +23,7 @@ * 1.28 Breaking Changes for more information. */ @Deprecated -@NonNullByDefault +@NullMarked package com.linecorp.armeria.client.brave; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/brave/brave5/src/main/java/com/linecorp/armeria/common/brave/package-info.java b/brave/brave5/src/main/java/com/linecorp/armeria/common/brave/package-info.java index c17da9cdfc2..137508e9901 100644 --- a/brave/brave5/src/main/java/com/linecorp/armeria/common/brave/package-info.java +++ b/brave/brave5/src/main/java/com/linecorp/armeria/common/brave/package-info.java @@ -23,7 +23,7 @@ * 1.28 Breaking Changes for more information. */ @Deprecated -@NonNullByDefault +@NullMarked package com.linecorp.armeria.common.brave; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/brave/brave5/src/main/java/com/linecorp/armeria/internal/common/brave/package-info.java b/brave/brave5/src/main/java/com/linecorp/armeria/internal/common/brave/package-info.java index 50246c0524c..02c63d4e075 100644 --- a/brave/brave5/src/main/java/com/linecorp/armeria/internal/common/brave/package-info.java +++ b/brave/brave5/src/main/java/com/linecorp/armeria/internal/common/brave/package-info.java @@ -23,7 +23,7 @@ * 1.28 Breaking Changes for more information. */ @Deprecated -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.common.brave; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/brave/brave5/src/main/java/com/linecorp/armeria/server/brave/package-info.java b/brave/brave5/src/main/java/com/linecorp/armeria/server/brave/package-info.java index d09cb9f4248..84dfd4a6c6e 100644 --- a/brave/brave5/src/main/java/com/linecorp/armeria/server/brave/package-info.java +++ b/brave/brave5/src/main/java/com/linecorp/armeria/server/brave/package-info.java @@ -23,7 +23,7 @@ * 1.28 Breaking Changes for more information. */ @Deprecated -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.brave; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/brave/brave6/src/main/java/com/linecorp/armeria/client/brave/BraveClient.java b/brave/brave6/src/main/java/com/linecorp/armeria/client/brave/BraveClient.java index 2c2317a9b8f..7c49a4bb3fe 100644 --- a/brave/brave6/src/main/java/com/linecorp/armeria/client/brave/BraveClient.java +++ b/brave/brave6/src/main/java/com/linecorp/armeria/client/brave/BraveClient.java @@ -21,6 +21,7 @@ import java.util.concurrent.TimeUnit; import java.util.function.Function; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -30,7 +31,6 @@ import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.RequestHeadersBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.brave.RequestContextCurrentTraceContext; import com.linecorp.armeria.common.logging.ClientConnectionTimings; import com.linecorp.armeria.internal.common.RequestContextExtension; diff --git a/brave/brave6/src/main/java/com/linecorp/armeria/client/brave/ClientRequestContextAdapter.java b/brave/brave6/src/main/java/com/linecorp/armeria/client/brave/ClientRequestContextAdapter.java index 65348f98abb..526487a80b3 100644 --- a/brave/brave6/src/main/java/com/linecorp/armeria/client/brave/ClientRequestContextAdapter.java +++ b/brave/brave6/src/main/java/com/linecorp/armeria/client/brave/ClientRequestContextAdapter.java @@ -16,12 +16,13 @@ package com.linecorp.armeria.client.brave; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.RequestHeadersBuilder; import com.linecorp.armeria.common.SerializationFormat; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.logging.RequestLogAccess; import com.linecorp.armeria.common.logging.RequestLogProperty; diff --git a/brave/brave6/src/main/java/com/linecorp/armeria/client/brave/package-info.java b/brave/brave6/src/main/java/com/linecorp/armeria/client/brave/package-info.java index 4138427cd0d..e9eebe25e00 100644 --- a/brave/brave6/src/main/java/com/linecorp/armeria/client/brave/package-info.java +++ b/brave/brave6/src/main/java/com/linecorp/armeria/client/brave/package-info.java @@ -18,7 +18,7 @@ * Distributed tracing clients based on Brave, * a Java tracing library compatible with Zipkin. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.client.brave; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/brave/brave6/src/main/java/com/linecorp/armeria/common/brave/RequestContextCurrentTraceContext.java b/brave/brave6/src/main/java/com/linecorp/armeria/common/brave/RequestContextCurrentTraceContext.java index d741b0e7f63..10223e961c2 100644 --- a/brave/brave6/src/main/java/com/linecorp/armeria/common/brave/RequestContextCurrentTraceContext.java +++ b/brave/brave6/src/main/java/com/linecorp/armeria/common/brave/RequestContextCurrentTraceContext.java @@ -18,9 +18,10 @@ import static com.linecorp.armeria.internal.common.brave.TraceContextUtil.traceContext; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.brave.BraveClient; import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.internal.common.brave.InternalTraceContextUtil; import com.linecorp.armeria.internal.common.brave.TraceContextUtil; diff --git a/brave/brave6/src/main/java/com/linecorp/armeria/common/brave/package-info.java b/brave/brave6/src/main/java/com/linecorp/armeria/common/brave/package-info.java index d6287308f84..698c130efcd 100644 --- a/brave/brave6/src/main/java/com/linecorp/armeria/common/brave/package-info.java +++ b/brave/brave6/src/main/java/com/linecorp/armeria/common/brave/package-info.java @@ -19,7 +19,7 @@ * Brave, a Java tracing library compatible with * Zipkin. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.common.brave; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/brave/brave6/src/main/java/com/linecorp/armeria/internal/common/brave/BraveThreadLocalAccessorProvider.java b/brave/brave6/src/main/java/com/linecorp/armeria/internal/common/brave/BraveThreadLocalAccessorProvider.java index 7c4866b4b9b..91f4c25ae27 100644 --- a/brave/brave6/src/main/java/com/linecorp/armeria/internal/common/brave/BraveThreadLocalAccessorProvider.java +++ b/brave/brave6/src/main/java/com/linecorp/armeria/internal/common/brave/BraveThreadLocalAccessorProvider.java @@ -16,7 +16,8 @@ package com.linecorp.armeria.internal.common.brave; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.internal.common.context.ThreadLocalAccessorProvider; import brave.propagation.TraceContext; diff --git a/brave/brave6/src/main/java/com/linecorp/armeria/internal/common/brave/InternalTraceContextUtil.java b/brave/brave6/src/main/java/com/linecorp/armeria/internal/common/brave/InternalTraceContextUtil.java index 57bd319ccbc..5592731d251 100644 --- a/brave/brave6/src/main/java/com/linecorp/armeria/internal/common/brave/InternalTraceContextUtil.java +++ b/brave/brave6/src/main/java/com/linecorp/armeria/internal/common/brave/InternalTraceContextUtil.java @@ -16,7 +16,8 @@ package com.linecorp.armeria.internal.common.brave; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.brave.RequestContextCurrentTraceContext; import brave.propagation.TraceContext; diff --git a/brave/brave6/src/main/java/com/linecorp/armeria/internal/common/brave/TraceContextUtil.java b/brave/brave6/src/main/java/com/linecorp/armeria/internal/common/brave/TraceContextUtil.java index 34c2532e32a..8eebe7f86f1 100644 --- a/brave/brave6/src/main/java/com/linecorp/armeria/internal/common/brave/TraceContextUtil.java +++ b/brave/brave6/src/main/java/com/linecorp/armeria/internal/common/brave/TraceContextUtil.java @@ -20,13 +20,13 @@ import java.util.Objects; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.google.common.annotations.VisibleForTesting; import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.brave.RequestContextCurrentTraceContext; import brave.Tracing; diff --git a/brave/brave6/src/main/java/com/linecorp/armeria/internal/common/brave/package-info.java b/brave/brave6/src/main/java/com/linecorp/armeria/internal/common/brave/package-info.java index 6f86e8238b6..dc4dcbca6da 100644 --- a/brave/brave6/src/main/java/com/linecorp/armeria/internal/common/brave/package-info.java +++ b/brave/brave6/src/main/java/com/linecorp/armeria/internal/common/brave/package-info.java @@ -19,7 +19,7 @@ * Brave, a Java tracing library compatible with * Zipkin. Anything in this package can be changed or removed at any time. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.common.brave; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/brave/brave6/src/main/java/com/linecorp/armeria/server/brave/RpcServiceRequestContextAdapter.java b/brave/brave6/src/main/java/com/linecorp/armeria/server/brave/RpcServiceRequestContextAdapter.java index e641c88eef8..7a19a7bc4e7 100644 --- a/brave/brave6/src/main/java/com/linecorp/armeria/server/brave/RpcServiceRequestContextAdapter.java +++ b/brave/brave6/src/main/java/com/linecorp/armeria/server/brave/RpcServiceRequestContextAdapter.java @@ -16,8 +16,9 @@ package com.linecorp.armeria.server.brave; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.RpcRequest; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.logging.RequestLogProperty; import com.linecorp.armeria.internal.common.brave.SpanContextUtil; diff --git a/brave/brave6/src/main/java/com/linecorp/armeria/server/brave/ServiceRequestContextAdapter.java b/brave/brave6/src/main/java/com/linecorp/armeria/server/brave/ServiceRequestContextAdapter.java index 8598aef3062..b5a8d4a2573 100644 --- a/brave/brave6/src/main/java/com/linecorp/armeria/server/brave/ServiceRequestContextAdapter.java +++ b/brave/brave6/src/main/java/com/linecorp/armeria/server/brave/ServiceRequestContextAdapter.java @@ -16,9 +16,10 @@ package com.linecorp.armeria.server.brave; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.RequestContext; import com.linecorp.armeria.common.SerializationFormat; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.logging.RequestLogProperty; import com.linecorp.armeria.internal.common.brave.SpanContextUtil; diff --git a/brave/brave6/src/main/java/com/linecorp/armeria/server/brave/package-info.java b/brave/brave6/src/main/java/com/linecorp/armeria/server/brave/package-info.java index d21a9588f22..a9d5e797307 100644 --- a/brave/brave6/src/main/java/com/linecorp/armeria/server/brave/package-info.java +++ b/brave/brave6/src/main/java/com/linecorp/armeria/server/brave/package-info.java @@ -18,7 +18,7 @@ * Distributed tracing services based on Brave, * a Java tracing library compatible with Zipkin. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.brave; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/brave/brave6/src/test/java/com/linecorp/armeria/client/brave/BraveClientTest.java b/brave/brave6/src/test/java/com/linecorp/armeria/client/brave/BraveClientTest.java index 5fbc0cac4ca..d4a7f390c8a 100644 --- a/brave/brave6/src/test/java/com/linecorp/armeria/client/brave/BraveClientTest.java +++ b/brave/brave6/src/test/java/com/linecorp/armeria/client/brave/BraveClientTest.java @@ -30,6 +30,7 @@ import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicInteger; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.Test; @@ -50,7 +51,6 @@ import com.linecorp.armeria.common.RpcRequest; import com.linecorp.armeria.common.RpcResponse; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.brave.RequestContextCurrentTraceContext; import com.linecorp.armeria.common.brave.TestSpanCollector; import com.linecorp.armeria.common.logging.RequestLog; diff --git a/brave/brave6/src/test/java/com/linecorp/armeria/server/brave/BraveServiceIntegrationTest.java b/brave/brave6/src/test/java/com/linecorp/armeria/server/brave/BraveServiceIntegrationTest.java index 9836d3b364b..a459fc7203e 100644 --- a/brave/brave6/src/test/java/com/linecorp/armeria/server/brave/BraveServiceIntegrationTest.java +++ b/brave/brave6/src/test/java/com/linecorp/armeria/server/brave/BraveServiceIntegrationTest.java @@ -24,6 +24,7 @@ import java.util.concurrent.CompletableFuture; import java.util.function.Consumer; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.Assumptions; import org.junit.jupiter.api.Test; @@ -34,7 +35,6 @@ import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.brave.RequestContextCurrentTraceContext; import com.linecorp.armeria.common.util.SystemInfo; import com.linecorp.armeria.server.Server; diff --git a/bucket4j/src/main/java/com/linecorp/armeria/common/throttling/package-info.java b/bucket4j/src/main/java/com/linecorp/armeria/common/throttling/package-info.java index e9e03c718b5..c71a7b25842 100644 --- a/bucket4j/src/main/java/com/linecorp/armeria/common/throttling/package-info.java +++ b/bucket4j/src/main/java/com/linecorp/armeria/common/throttling/package-info.java @@ -18,8 +18,9 @@ * Common throttling artifacts used by throttling implementation. */ @UnstableApi -@NonNullByDefault +@NullMarked package com.linecorp.armeria.common.throttling; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/bucket4j/src/main/java/com/linecorp/armeria/server/throttling/bucket4j/TokenBucket.java b/bucket4j/src/main/java/com/linecorp/armeria/server/throttling/bucket4j/TokenBucket.java index 57a4a6ac6c0..a376f920fce 100644 --- a/bucket4j/src/main/java/com/linecorp/armeria/server/throttling/bucket4j/TokenBucket.java +++ b/bucket4j/src/main/java/com/linecorp/armeria/server/throttling/bucket4j/TokenBucket.java @@ -20,9 +20,10 @@ import java.time.Duration; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/bucket4j/src/main/java/com/linecorp/armeria/server/throttling/bucket4j/TokenBucketSpec.java b/bucket4j/src/main/java/com/linecorp/armeria/server/throttling/bucket4j/TokenBucketSpec.java index 216750ccc67..55d4c92aa29 100644 --- a/bucket4j/src/main/java/com/linecorp/armeria/server/throttling/bucket4j/TokenBucketSpec.java +++ b/bucket4j/src/main/java/com/linecorp/armeria/server/throttling/bucket4j/TokenBucketSpec.java @@ -26,9 +26,9 @@ import java.util.Map; import java.util.stream.Collectors; -import com.google.common.base.Splitter; +import org.jspecify.annotations.Nullable; -import com.linecorp.armeria.common.annotation.Nullable; +import com.google.common.base.Splitter; /** * A specification of a {@link TokenBucket} configuration represented by a string. The string syntax is diff --git a/bucket4j/src/main/java/com/linecorp/armeria/server/throttling/bucket4j/TokenBucketThrottlingStrategy.java b/bucket4j/src/main/java/com/linecorp/armeria/server/throttling/bucket4j/TokenBucketThrottlingStrategy.java index 8efaea157f4..b9020f04a1c 100644 --- a/bucket4j/src/main/java/com/linecorp/armeria/server/throttling/bucket4j/TokenBucketThrottlingStrategy.java +++ b/bucket4j/src/main/java/com/linecorp/armeria/server/throttling/bucket4j/TokenBucketThrottlingStrategy.java @@ -21,9 +21,10 @@ import java.util.concurrent.CompletionStage; import java.util.concurrent.TimeUnit; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.Request; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.throttling.ThrottlingHeaders; import com.linecorp.armeria.server.ServiceRequestContext; diff --git a/bucket4j/src/main/java/com/linecorp/armeria/server/throttling/bucket4j/TokenBucketThrottlingStrategyBuilder.java b/bucket4j/src/main/java/com/linecorp/armeria/server/throttling/bucket4j/TokenBucketThrottlingStrategyBuilder.java index ceb8492c749..fbf36b6e7da 100644 --- a/bucket4j/src/main/java/com/linecorp/armeria/server/throttling/bucket4j/TokenBucketThrottlingStrategyBuilder.java +++ b/bucket4j/src/main/java/com/linecorp/armeria/server/throttling/bucket4j/TokenBucketThrottlingStrategyBuilder.java @@ -21,8 +21,9 @@ import java.time.Duration; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.Request; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.throttling.ThrottlingHeaders; diff --git a/bucket4j/src/main/java/com/linecorp/armeria/server/throttling/bucket4j/package-info.java b/bucket4j/src/main/java/com/linecorp/armeria/server/throttling/bucket4j/package-info.java index c7e713603b0..8b3e7948f2b 100644 --- a/bucket4j/src/main/java/com/linecorp/armeria/server/throttling/bucket4j/package-info.java +++ b/bucket4j/src/main/java/com/linecorp/armeria/server/throttling/bucket4j/package-info.java @@ -20,8 +20,9 @@ * and Bucket4j library. */ @UnstableApi -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.throttling.bucket4j; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/consul/src/main/java/com/linecorp/armeria/client/consul/ConsulEndpointGroup.java b/consul/src/main/java/com/linecorp/armeria/client/consul/ConsulEndpointGroup.java index 75685681d38..15947d23a28 100644 --- a/consul/src/main/java/com/linecorp/armeria/client/consul/ConsulEndpointGroup.java +++ b/consul/src/main/java/com/linecorp/armeria/client/consul/ConsulEndpointGroup.java @@ -23,6 +23,7 @@ import java.util.concurrent.ScheduledFuture; import java.util.concurrent.TimeUnit; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -32,7 +33,6 @@ import com.linecorp.armeria.client.endpoint.DynamicEndpointGroup; import com.linecorp.armeria.client.endpoint.EndpointGroup; import com.linecorp.armeria.client.endpoint.EndpointSelectionStrategy; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.internal.consul.ConsulClient; diff --git a/consul/src/main/java/com/linecorp/armeria/client/consul/ConsulEndpointGroupBuilder.java b/consul/src/main/java/com/linecorp/armeria/client/consul/ConsulEndpointGroupBuilder.java index 02f2be14e2e..96ee4a5cb92 100644 --- a/consul/src/main/java/com/linecorp/armeria/client/consul/ConsulEndpointGroupBuilder.java +++ b/consul/src/main/java/com/linecorp/armeria/client/consul/ConsulEndpointGroupBuilder.java @@ -21,10 +21,11 @@ import java.net.URI; import java.time.Duration; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.endpoint.AbstractDynamicEndpointGroupBuilder; import com.linecorp.armeria.client.endpoint.EndpointSelectionStrategy; import com.linecorp.armeria.common.Flags; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.consul.ConsulConfigSetters; import com.linecorp.armeria.internal.consul.ConsulClient; diff --git a/consul/src/main/java/com/linecorp/armeria/client/consul/package-info.java b/consul/src/main/java/com/linecorp/armeria/client/consul/package-info.java index db91c8b2f16..71db75f648a 100644 --- a/consul/src/main/java/com/linecorp/armeria/client/consul/package-info.java +++ b/consul/src/main/java/com/linecorp/armeria/client/consul/package-info.java @@ -16,9 +16,10 @@ /** * Consul-based {@link com.linecorp.armeria.client.endpoint.EndpointGroup} implementation. */ -@NonNullByDefault +@NullMarked @UnstableApi package com.linecorp.armeria.client.consul; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/consul/src/main/java/com/linecorp/armeria/common/consul/package-info.java b/consul/src/main/java/com/linecorp/armeria/common/consul/package-info.java index cff821badbf..9b8d55e56c4 100644 --- a/consul/src/main/java/com/linecorp/armeria/common/consul/package-info.java +++ b/consul/src/main/java/com/linecorp/armeria/common/consul/package-info.java @@ -17,9 +17,10 @@ /** * Various classes used internally. Anything in this package can be changed or removed at any time. */ -@NonNullByDefault +@NullMarked @UnstableApi package com.linecorp.armeria.common.consul; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/consul/src/main/java/com/linecorp/armeria/internal/consul/AgentServiceClient.java b/consul/src/main/java/com/linecorp/armeria/internal/consul/AgentServiceClient.java index 75bcca62ee0..ceb13f2d793 100644 --- a/consul/src/main/java/com/linecorp/armeria/internal/consul/AgentServiceClient.java +++ b/consul/src/main/java/com/linecorp/armeria/internal/consul/AgentServiceClient.java @@ -19,6 +19,8 @@ import java.util.List; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonInclude.Include; @@ -30,7 +32,6 @@ import com.linecorp.armeria.client.WebClient; import com.linecorp.armeria.common.HttpData; import com.linecorp.armeria.common.HttpResponse; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.PercentEncoder; /** diff --git a/consul/src/main/java/com/linecorp/armeria/internal/consul/CatalogClient.java b/consul/src/main/java/com/linecorp/armeria/internal/consul/CatalogClient.java index 4530421e478..5257d59ba6f 100644 --- a/consul/src/main/java/com/linecorp/armeria/internal/consul/CatalogClient.java +++ b/consul/src/main/java/com/linecorp/armeria/internal/consul/CatalogClient.java @@ -23,6 +23,8 @@ import java.util.Objects; import java.util.concurrent.CompletableFuture; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.core.type.TypeReference; @@ -34,7 +36,6 @@ import com.linecorp.armeria.client.WebClient; import com.linecorp.armeria.common.HttpEntity; import com.linecorp.armeria.common.QueryParams; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.PercentEncoder; /** @@ -157,9 +158,8 @@ static final class Node { @JsonProperty("ServiceTaggedAddresses") Map serviceTaggedAddresses; - @Nullable @JsonProperty("ServiceTags") - String[] serviceTags; + String @Nullable [] serviceTags; @Nullable @JsonProperty("ServiceProxy") diff --git a/consul/src/main/java/com/linecorp/armeria/internal/consul/Check.java b/consul/src/main/java/com/linecorp/armeria/internal/consul/Check.java index b2040fcfdb8..b77fd65e2ac 100644 --- a/consul/src/main/java/com/linecorp/armeria/internal/consul/Check.java +++ b/consul/src/main/java/com/linecorp/armeria/internal/consul/Check.java @@ -17,14 +17,14 @@ import java.util.Map; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonInclude.Include; import com.fasterxml.jackson.annotation.JsonProperty; import com.google.common.base.MoreObjects; -import com.linecorp.armeria.common.annotation.Nullable; - @JsonIgnoreProperties(ignoreUnknown = true) @JsonInclude(Include.NON_NULL) public final class Check { @@ -57,13 +57,11 @@ public final class Check { @JsonProperty("DeregisterCriticalServiceAfter") private String deregisterCriticalServiceAfter; - @Nullable @JsonProperty("Args") - private String[] args; + private String @Nullable [] args; - @Nullable @JsonProperty("AliasNode") - private String[] aliasNode; + private String @Nullable [] aliasNode; @Nullable @JsonProperty("DockerContainerID") @@ -181,8 +179,7 @@ public void setDeregisterCriticalServiceAfter(@Nullable String deregisterCritica this.deregisterCriticalServiceAfter = deregisterCriticalServiceAfter; } - @Nullable - public String[] getArgs() { + public String @Nullable [] getArgs() { return args; } @@ -190,8 +187,7 @@ public void setArgs(@Nullable String[] args) { this.args = args; } - @Nullable - public String[] getAliasNode() { + public String @Nullable [] getAliasNode() { return aliasNode; } diff --git a/consul/src/main/java/com/linecorp/armeria/internal/consul/ConsulClient.java b/consul/src/main/java/com/linecorp/armeria/internal/consul/ConsulClient.java index a08dadaac7f..9377cb6fb47 100644 --- a/consul/src/main/java/com/linecorp/armeria/internal/consul/ConsulClient.java +++ b/consul/src/main/java/com/linecorp/armeria/internal/consul/ConsulClient.java @@ -20,6 +20,8 @@ import java.util.concurrent.CompletableFuture; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.databind.ObjectMapper; import com.linecorp.armeria.client.Endpoint; @@ -31,7 +33,6 @@ import com.linecorp.armeria.client.retry.RetryingClient; import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.HttpResponse; -import com.linecorp.armeria.common.annotation.Nullable; /** * A client for accessing a Consul agent API server. diff --git a/consul/src/main/java/com/linecorp/armeria/internal/consul/ConsulClientBuilder.java b/consul/src/main/java/com/linecorp/armeria/internal/consul/ConsulClientBuilder.java index b1dd2b701c3..f23456016d5 100644 --- a/consul/src/main/java/com/linecorp/armeria/internal/consul/ConsulClientBuilder.java +++ b/consul/src/main/java/com/linecorp/armeria/internal/consul/ConsulClientBuilder.java @@ -22,7 +22,8 @@ import java.net.URISyntaxException; import java.util.regex.Pattern; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.consul.ConsulConfigSetters; public final class ConsulClientBuilder implements ConsulConfigSetters { diff --git a/consul/src/main/java/com/linecorp/armeria/internal/consul/ConsulClientUtil.java b/consul/src/main/java/com/linecorp/armeria/internal/consul/ConsulClientUtil.java index b1f64f2b624..c9433431c71 100644 --- a/consul/src/main/java/com/linecorp/armeria/internal/consul/ConsulClientUtil.java +++ b/consul/src/main/java/com/linecorp/armeria/internal/consul/ConsulClientUtil.java @@ -15,9 +15,10 @@ */ package com.linecorp.armeria.internal.consul; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.QueryParams; import com.linecorp.armeria.common.QueryParamsBuilder; -import com.linecorp.armeria.common.annotation.Nullable; /** * Utility methods related to Consul clients. diff --git a/consul/src/main/java/com/linecorp/armeria/internal/consul/HealthClient.java b/consul/src/main/java/com/linecorp/armeria/internal/consul/HealthClient.java index a650643983b..cdb2f9ca61f 100644 --- a/consul/src/main/java/com/linecorp/armeria/internal/consul/HealthClient.java +++ b/consul/src/main/java/com/linecorp/armeria/internal/consul/HealthClient.java @@ -25,6 +25,7 @@ import java.util.Objects; import java.util.concurrent.CompletableFuture; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -40,7 +41,6 @@ import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.QueryParams; import com.linecorp.armeria.common.QueryParamsBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.PercentEncoder; /** @@ -180,9 +180,8 @@ public static final class Service { @JsonProperty("Service") String service; - @Nullable @JsonProperty("Tags") - String[] tags; + String @Nullable [] tags; @Nullable @JsonProperty("Address") diff --git a/consul/src/main/java/com/linecorp/armeria/internal/consul/package-info.java b/consul/src/main/java/com/linecorp/armeria/internal/consul/package-info.java index f842d043a47..22a966c7f9c 100644 --- a/consul/src/main/java/com/linecorp/armeria/internal/consul/package-info.java +++ b/consul/src/main/java/com/linecorp/armeria/internal/consul/package-info.java @@ -17,7 +17,7 @@ /** * Various classes used internally. Anything in this package can be changed or removed at any time. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.consul; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/consul/src/main/java/com/linecorp/armeria/server/consul/ConsulUpdatingListener.java b/consul/src/main/java/com/linecorp/armeria/server/consul/ConsulUpdatingListener.java index 9e2c636c62a..c95a07db7e2 100644 --- a/consul/src/main/java/com/linecorp/armeria/server/consul/ConsulUpdatingListener.java +++ b/consul/src/main/java/com/linecorp/armeria/server/consul/ConsulUpdatingListener.java @@ -22,13 +22,13 @@ import java.util.List; import java.util.concurrent.ThreadLocalRandom; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.linecorp.armeria.client.Endpoint; import com.linecorp.armeria.common.HttpMethod; import com.linecorp.armeria.common.HttpStatus; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.util.SystemInfo; import com.linecorp.armeria.internal.consul.Check; diff --git a/consul/src/main/java/com/linecorp/armeria/server/consul/ConsulUpdatingListenerBuilder.java b/consul/src/main/java/com/linecorp/armeria/server/consul/ConsulUpdatingListenerBuilder.java index 870df3d2522..e4cb38bbf80 100644 --- a/consul/src/main/java/com/linecorp/armeria/server/consul/ConsulUpdatingListenerBuilder.java +++ b/consul/src/main/java/com/linecorp/armeria/server/consul/ConsulUpdatingListenerBuilder.java @@ -21,11 +21,12 @@ import java.net.URI; import java.time.Duration; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableSet; import com.linecorp.armeria.client.Endpoint; import com.linecorp.armeria.common.HttpMethod; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.consul.ConsulConfigSetters; import com.linecorp.armeria.internal.consul.ConsulClient; diff --git a/consul/src/main/java/com/linecorp/armeria/server/consul/package-info.java b/consul/src/main/java/com/linecorp/armeria/server/consul/package-info.java index cefde5aca20..cb15c19ddfc 100644 --- a/consul/src/main/java/com/linecorp/armeria/server/consul/package-info.java +++ b/consul/src/main/java/com/linecorp/armeria/server/consul/package-info.java @@ -16,9 +16,10 @@ /** * Automatic service registration and discovery with Consul. **/ -@NonNullByDefault +@NullMarked @UnstableApi package com.linecorp.armeria.server.consul; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/consul/src/test/java/com/linecorp/armeria/internal/consul/ConsulTestBase.java b/consul/src/test/java/com/linecorp/armeria/internal/consul/ConsulTestBase.java index 934120f1326..0796742611b 100644 --- a/consul/src/test/java/com/linecorp/armeria/internal/consul/ConsulTestBase.java +++ b/consul/src/test/java/com/linecorp/armeria/internal/consul/ConsulTestBase.java @@ -26,6 +26,7 @@ import java.util.UUID; import java.util.concurrent.ThreadLocalRandom; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.BeforeAll; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -41,7 +42,6 @@ import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.CompletionActions; import com.linecorp.armeria.internal.testing.FlakyTest; import com.linecorp.armeria.server.AbstractHttpService; diff --git a/core/src/main/java/com/linecorp/armeria/client/AbstractClientOptionsBuilder.java b/core/src/main/java/com/linecorp/armeria/client/AbstractClientOptionsBuilder.java index 6c42b6452cb..4b6f2bcf62c 100644 --- a/core/src/main/java/com/linecorp/armeria/client/AbstractClientOptionsBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/client/AbstractClientOptionsBuilder.java @@ -29,6 +29,8 @@ import java.util.function.Function; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.linecorp.armeria.client.endpoint.EndpointGroup; @@ -43,7 +45,6 @@ import com.linecorp.armeria.common.RequestContextStorage; import com.linecorp.armeria.common.RequestId; import com.linecorp.armeria.common.SuccessFunction; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.auth.AuthToken; import com.linecorp.armeria.common.auth.BasicToken; diff --git a/core/src/main/java/com/linecorp/armeria/client/AbstractDnsResolverBuilder.java b/core/src/main/java/com/linecorp/armeria/client/AbstractDnsResolverBuilder.java index ac2a7e5c11c..cc2927d6889 100644 --- a/core/src/main/java/com/linecorp/armeria/client/AbstractDnsResolverBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/client/AbstractDnsResolverBuilder.java @@ -26,11 +26,12 @@ import java.util.List; import java.util.function.Consumer; +import org.jspecify.annotations.Nullable; + import com.github.benmanes.caffeine.cache.CaffeineSpec; import com.google.common.collect.ImmutableList; import com.linecorp.armeria.common.Flags; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.metric.MeterIdPrefix; import com.linecorp.armeria.common.util.TransportType; diff --git a/core/src/main/java/com/linecorp/armeria/client/AbstractHttpRequestHandler.java b/core/src/main/java/com/linecorp/armeria/client/AbstractHttpRequestHandler.java index 70d4105b992..818e51fe969 100644 --- a/core/src/main/java/com/linecorp/armeria/client/AbstractHttpRequestHandler.java +++ b/core/src/main/java/com/linecorp/armeria/client/AbstractHttpRequestHandler.java @@ -25,6 +25,7 @@ import java.util.concurrent.ScheduledFuture; import java.util.concurrent.TimeUnit; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -38,7 +39,6 @@ import com.linecorp.armeria.common.ResponseCompleteException; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLogBuilder; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.common.util.SafeCloseable; diff --git a/core/src/main/java/com/linecorp/armeria/client/AbstractHttpRequestSubscriber.java b/core/src/main/java/com/linecorp/armeria/client/AbstractHttpRequestSubscriber.java index a3e94085f53..cd7ba88eeb6 100644 --- a/core/src/main/java/com/linecorp/armeria/client/AbstractHttpRequestSubscriber.java +++ b/core/src/main/java/com/linecorp/armeria/client/AbstractHttpRequestSubscriber.java @@ -16,6 +16,7 @@ package com.linecorp.armeria.client; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; @@ -24,7 +25,6 @@ import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.client.DecodedHttpResponse; import io.netty.channel.Channel; diff --git a/core/src/main/java/com/linecorp/armeria/client/AbstractHttpResponseDecoder.java b/core/src/main/java/com/linecorp/armeria/client/AbstractHttpResponseDecoder.java index c477c008389..49a67b8b350 100644 --- a/core/src/main/java/com/linecorp/armeria/client/AbstractHttpResponseDecoder.java +++ b/core/src/main/java/com/linecorp/armeria/client/AbstractHttpResponseDecoder.java @@ -18,9 +18,10 @@ import java.util.Iterator; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.ContentTooLargeException; import com.linecorp.armeria.common.ContentTooLargeExceptionBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.client.DecodedHttpResponse; import com.linecorp.armeria.internal.client.HttpSession; import com.linecorp.armeria.internal.common.InboundTrafficController; diff --git a/core/src/main/java/com/linecorp/armeria/client/AbstractRuleBuilder.java b/core/src/main/java/com/linecorp/armeria/client/AbstractRuleBuilder.java index d270c6856b6..7e980d99fc7 100644 --- a/core/src/main/java/com/linecorp/armeria/client/AbstractRuleBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/client/AbstractRuleBuilder.java @@ -24,6 +24,8 @@ import java.util.function.BiPredicate; import java.util.function.Predicate; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableSet; import com.google.common.collect.Iterables; import com.google.common.collect.Sets; @@ -40,7 +42,6 @@ import com.linecorp.armeria.common.Response; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.TimeoutException; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/client/AbstractRuleWithContentBuilder.java b/core/src/main/java/com/linecorp/armeria/client/AbstractRuleWithContentBuilder.java index 81ff0d24341..e5ad6d81db5 100644 --- a/core/src/main/java/com/linecorp/armeria/client/AbstractRuleWithContentBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/client/AbstractRuleWithContentBuilder.java @@ -22,13 +22,14 @@ import java.util.function.BiFunction; import java.util.function.BiPredicate; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.circuitbreaker.CircuitBreakerRuleWithContent; import com.linecorp.armeria.client.retry.RetryRuleWithContent; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpResponseDuplicator; import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.Response; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/client/AbstractWebClientBuilder.java b/core/src/main/java/com/linecorp/armeria/client/AbstractWebClientBuilder.java index 8bd45312343..b87cef0c4cd 100644 --- a/core/src/main/java/com/linecorp/armeria/client/AbstractWebClientBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/client/AbstractWebClientBuilder.java @@ -24,11 +24,12 @@ import java.net.URI; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.endpoint.EndpointGroup; import com.linecorp.armeria.common.Scheme; import com.linecorp.armeria.common.SerializationFormat; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; /** * A skeletal builder implementation for {@link WebClient}. diff --git a/core/src/main/java/com/linecorp/armeria/client/AggregatedHttpRequestHandler.java b/core/src/main/java/com/linecorp/armeria/client/AggregatedHttpRequestHandler.java index 4c6f8eb6784..f3ed358653f 100644 --- a/core/src/main/java/com/linecorp/armeria/client/AggregatedHttpRequestHandler.java +++ b/core/src/main/java/com/linecorp/armeria/client/AggregatedHttpRequestHandler.java @@ -18,12 +18,13 @@ import java.util.function.BiFunction; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.AggregatedHttpRequest; import com.linecorp.armeria.common.HttpData; import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.client.DecodedHttpResponse; import io.netty.channel.Channel; diff --git a/core/src/main/java/com/linecorp/armeria/client/BlockingWebClient.java b/core/src/main/java/com/linecorp/armeria/client/BlockingWebClient.java index 16039b9f780..7cfd06b1672 100644 --- a/core/src/main/java/com/linecorp/armeria/client/BlockingWebClient.java +++ b/core/src/main/java/com/linecorp/armeria/client/BlockingWebClient.java @@ -21,6 +21,8 @@ import java.net.URI; import java.nio.charset.Charset; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.AggregatedHttpRequest; import com.linecorp.armeria.common.AggregatedHttpResponse; import com.linecorp.armeria.common.HttpData; @@ -30,7 +32,6 @@ import com.linecorp.armeria.common.QueryParams; import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.util.BlockingTaskExecutor; import com.linecorp.armeria.common.util.Unwrappable; diff --git a/core/src/main/java/com/linecorp/armeria/client/BlockingWebClientRequestPreparation.java b/core/src/main/java/com/linecorp/armeria/client/BlockingWebClientRequestPreparation.java index 6b874002eac..f88c65acff1 100644 --- a/core/src/main/java/com/linecorp/armeria/client/BlockingWebClientRequestPreparation.java +++ b/core/src/main/java/com/linecorp/armeria/client/BlockingWebClientRequestPreparation.java @@ -27,6 +27,7 @@ import java.util.Map.Entry; import java.util.function.Predicate; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; import com.fasterxml.jackson.core.type.TypeReference; @@ -44,7 +45,6 @@ import com.linecorp.armeria.common.JacksonObjectMapperProvider; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseEntity; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import io.netty.util.AttributeKey; diff --git a/core/src/main/java/com/linecorp/armeria/client/Bootstraps.java b/core/src/main/java/com/linecorp/armeria/client/Bootstraps.java index 40daef2bf47..296f21a32db 100644 --- a/core/src/main/java/com/linecorp/armeria/client/Bootstraps.java +++ b/core/src/main/java/com/linecorp/armeria/client/Bootstraps.java @@ -23,9 +23,10 @@ import java.util.Objects; import java.util.Set; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.SerializationFormat; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.SslContextFactory; import io.netty.bootstrap.Bootstrap; diff --git a/core/src/main/java/com/linecorp/armeria/client/Client.java b/core/src/main/java/com/linecorp/armeria/client/Client.java index d5871efb848..59bfa57ebb1 100644 --- a/core/src/main/java/com/linecorp/armeria/client/Client.java +++ b/core/src/main/java/com/linecorp/armeria/client/Client.java @@ -18,13 +18,14 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.Request; import com.linecorp.armeria.common.Response; import com.linecorp.armeria.common.RpcRequest; import com.linecorp.armeria.common.RpcResponse; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Unwrappable; /** diff --git a/core/src/main/java/com/linecorp/armeria/client/ClientBuilder.java b/core/src/main/java/com/linecorp/armeria/client/ClientBuilder.java index 5d1a820fff5..416136a7844 100644 --- a/core/src/main/java/com/linecorp/armeria/client/ClientBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/client/ClientBuilder.java @@ -25,6 +25,8 @@ import java.util.function.Function; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.endpoint.EndpointGroup; import com.linecorp.armeria.client.redirect.RedirectConfig; import com.linecorp.armeria.common.RequestId; @@ -32,7 +34,6 @@ import com.linecorp.armeria.common.SerializationFormat; import com.linecorp.armeria.common.SessionProtocol; import com.linecorp.armeria.common.SuccessFunction; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.auth.AuthToken; import com.linecorp.armeria.common.auth.BasicToken; diff --git a/core/src/main/java/com/linecorp/armeria/client/ClientBuilderParams.java b/core/src/main/java/com/linecorp/armeria/client/ClientBuilderParams.java index 097b3616b69..6eac41630ad 100644 --- a/core/src/main/java/com/linecorp/armeria/client/ClientBuilderParams.java +++ b/core/src/main/java/com/linecorp/armeria/client/ClientBuilderParams.java @@ -20,9 +20,10 @@ import java.net.URI; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.endpoint.EndpointGroup; import com.linecorp.armeria.common.Scheme; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/client/ClientBuilderParamsBuilder.java b/core/src/main/java/com/linecorp/armeria/client/ClientBuilderParamsBuilder.java index 43671e7b98d..8f30927fbb7 100644 --- a/core/src/main/java/com/linecorp/armeria/client/ClientBuilderParamsBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/client/ClientBuilderParamsBuilder.java @@ -22,11 +22,12 @@ import java.net.URI; import java.net.URISyntaxException; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.endpoint.EndpointGroup; import com.linecorp.armeria.common.Scheme; import com.linecorp.armeria.common.SerializationFormat; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.internal.client.ClientBuilderParamsUtil; import com.linecorp.armeria.internal.client.endpoint.UndefinedEndpointGroup; diff --git a/core/src/main/java/com/linecorp/armeria/client/ClientFactory.java b/core/src/main/java/com/linecorp/armeria/client/ClientFactory.java index aec7929db09..a95abd1cac2 100644 --- a/core/src/main/java/com/linecorp/armeria/client/ClientFactory.java +++ b/core/src/main/java/com/linecorp/armeria/client/ClientFactory.java @@ -29,6 +29,7 @@ import java.util.concurrent.ExecutionException; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -40,7 +41,6 @@ import com.linecorp.armeria.common.Scheme; import com.linecorp.armeria.common.SerializationFormat; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.common.util.ListenableAsyncCloseable; import com.linecorp.armeria.common.util.ReleasableHolder; diff --git a/core/src/main/java/com/linecorp/armeria/client/ClientFactoryBuilder.java b/core/src/main/java/com/linecorp/armeria/client/ClientFactoryBuilder.java index 2f0f795a0c8..9c479a0afcf 100644 --- a/core/src/main/java/com/linecorp/armeria/client/ClientFactoryBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/client/ClientFactoryBuilder.java @@ -46,6 +46,8 @@ import javax.net.ssl.KeyManagerFactory; import javax.net.ssl.TrustManagerFactory; +import org.jspecify.annotations.Nullable; + import com.google.common.annotations.VisibleForTesting; import com.google.common.base.MoreObjects; import com.google.common.base.MoreObjects.ToStringHelper; @@ -64,7 +66,6 @@ import com.linecorp.armeria.common.TlsPeerVerifierFactory; import com.linecorp.armeria.common.TlsProvider; import com.linecorp.armeria.common.TlsSetters; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.outlier.OutlierDetection; import com.linecorp.armeria.common.util.EventLoopGroups; diff --git a/core/src/main/java/com/linecorp/armeria/client/ClientRequestContext.java b/core/src/main/java/com/linecorp/armeria/client/ClientRequestContext.java index ea4a1cda800..4fbafd390f9 100644 --- a/core/src/main/java/com/linecorp/armeria/client/ClientRequestContext.java +++ b/core/src/main/java/com/linecorp/armeria/client/ClientRequestContext.java @@ -28,6 +28,8 @@ import java.util.function.Function; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; + import com.google.errorprone.annotations.MustBeClosed; import com.linecorp.armeria.client.endpoint.EndpointGroup; @@ -43,7 +45,6 @@ import com.linecorp.armeria.common.Response; import com.linecorp.armeria.common.RpcRequest; import com.linecorp.armeria.common.TimeoutException; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.util.SafeCloseable; diff --git a/core/src/main/java/com/linecorp/armeria/client/ClientRequestContextBuilder.java b/core/src/main/java/com/linecorp/armeria/client/ClientRequestContextBuilder.java index 65ce8bef323..43e445d9459 100644 --- a/core/src/main/java/com/linecorp/armeria/client/ClientRequestContextBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/client/ClientRequestContextBuilder.java @@ -22,6 +22,8 @@ import javax.net.ssl.SSLSession; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.endpoint.EndpointGroup; import com.linecorp.armeria.common.AbstractRequestContextBuilder; import com.linecorp.armeria.common.HttpMethod; @@ -29,7 +31,6 @@ import com.linecorp.armeria.common.RequestId; import com.linecorp.armeria.common.RpcRequest; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.ClientConnectionTimings; import com.linecorp.armeria.common.util.SystemInfo; import com.linecorp.armeria.internal.client.DefaultClientRequestContext; diff --git a/core/src/main/java/com/linecorp/armeria/client/ClientRequestContextCaptor.java b/core/src/main/java/com/linecorp/armeria/client/ClientRequestContextCaptor.java index abda9672568..bb1719d5f6d 100644 --- a/core/src/main/java/com/linecorp/armeria/client/ClientRequestContextCaptor.java +++ b/core/src/main/java/com/linecorp/armeria/client/ClientRequestContextCaptor.java @@ -19,7 +19,8 @@ import java.util.NoSuchElementException; import java.util.function.Supplier; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.util.SafeCloseable; /** diff --git a/core/src/main/java/com/linecorp/armeria/client/ClientRequestContextWrapper.java b/core/src/main/java/com/linecorp/armeria/client/ClientRequestContextWrapper.java index 3013ab6c22d..48825916ca4 100644 --- a/core/src/main/java/com/linecorp/armeria/client/ClientRequestContextWrapper.java +++ b/core/src/main/java/com/linecorp/armeria/client/ClientRequestContextWrapper.java @@ -22,6 +22,8 @@ import java.util.function.Consumer; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.endpoint.EndpointGroup; import com.linecorp.armeria.common.ExchangeType; import com.linecorp.armeria.common.HttpHeaders; @@ -30,7 +32,6 @@ import com.linecorp.armeria.common.RequestContextWrapper; import com.linecorp.armeria.common.RequestId; import com.linecorp.armeria.common.RpcRequest; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.util.TimeoutMode; diff --git a/core/src/main/java/com/linecorp/armeria/client/ClientTlsConfig.java b/core/src/main/java/com/linecorp/armeria/client/ClientTlsConfig.java index dea42bafd1c..ea1d13b3828 100644 --- a/core/src/main/java/com/linecorp/armeria/client/ClientTlsConfig.java +++ b/core/src/main/java/com/linecorp/armeria/client/ClientTlsConfig.java @@ -20,11 +20,12 @@ import java.util.Set; import java.util.function.Consumer; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.linecorp.armeria.common.AbstractTlsConfig; import com.linecorp.armeria.common.TlsProvider; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.metric.MeterIdPrefix; diff --git a/core/src/main/java/com/linecorp/armeria/client/ClientTlsSpec.java b/core/src/main/java/com/linecorp/armeria/client/ClientTlsSpec.java index 44b9fa61741..ed9b8fa1654 100644 --- a/core/src/main/java/com/linecorp/armeria/client/ClientTlsSpec.java +++ b/core/src/main/java/com/linecorp/armeria/client/ClientTlsSpec.java @@ -23,10 +23,11 @@ import javax.net.ssl.KeyManagerFactory; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.AbstractTlsSpec; import com.linecorp.armeria.common.TlsKeyPair; import com.linecorp.armeria.common.TlsPeerVerifierFactory; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.util.TlsEngineType; diff --git a/core/src/main/java/com/linecorp/armeria/client/ClientTlsSpecBuilder.java b/core/src/main/java/com/linecorp/armeria/client/ClientTlsSpecBuilder.java index 6ba73616620..9341419464d 100644 --- a/core/src/main/java/com/linecorp/armeria/client/ClientTlsSpecBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/client/ClientTlsSpecBuilder.java @@ -23,9 +23,10 @@ import javax.net.ssl.KeyManagerFactory; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.AbstractTlsSpecBuilder; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.internal.common.util.SslContextUtil; diff --git a/core/src/main/java/com/linecorp/armeria/client/Clients.java b/core/src/main/java/com/linecorp/armeria/client/Clients.java index fb983a73620..f450efbdc32 100644 --- a/core/src/main/java/com/linecorp/armeria/client/Clients.java +++ b/core/src/main/java/com/linecorp/armeria/client/Clients.java @@ -21,6 +21,8 @@ import java.util.function.Consumer; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.google.errorprone.annotations.MustBeClosed; @@ -31,7 +33,6 @@ import com.linecorp.armeria.common.Scheme; import com.linecorp.armeria.common.SerializationFormat; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.util.SafeCloseable; import com.linecorp.armeria.common.util.Unwrappable; diff --git a/core/src/main/java/com/linecorp/armeria/client/ConnectionPoolMetrics.java b/core/src/main/java/com/linecorp/armeria/client/ConnectionPoolMetrics.java index db9e33223bc..d5c444379c3 100644 --- a/core/src/main/java/com/linecorp/armeria/client/ConnectionPoolMetrics.java +++ b/core/src/main/java/com/linecorp/armeria/client/ConnectionPoolMetrics.java @@ -28,6 +28,7 @@ import java.util.concurrent.ThreadLocalRandom; import java.util.concurrent.TimeUnit; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -35,7 +36,6 @@ import com.google.errorprone.annotations.concurrent.GuardedBy; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.metric.MeterIdPrefix; import com.linecorp.armeria.common.util.SafeCloseable; import com.linecorp.armeria.common.util.ThreadFactories; diff --git a/core/src/main/java/com/linecorp/armeria/client/DecoratingClientFactory.java b/core/src/main/java/com/linecorp/armeria/client/DecoratingClientFactory.java index f61839eac07..2a78d09bcf5 100644 --- a/core/src/main/java/com/linecorp/armeria/client/DecoratingClientFactory.java +++ b/core/src/main/java/com/linecorp/armeria/client/DecoratingClientFactory.java @@ -20,11 +20,12 @@ import java.util.concurrent.CompletableFuture; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.endpoint.EndpointGroup; import com.linecorp.armeria.common.Scheme; import com.linecorp.armeria.common.SerializationFormat; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.AbstractUnwrappable; import com.linecorp.armeria.common.util.ReleasableHolder; diff --git a/core/src/main/java/com/linecorp/armeria/client/DefaultClientFactory.java b/core/src/main/java/com/linecorp/armeria/client/DefaultClientFactory.java index 9c4cc44aadb..011cc5d6812 100644 --- a/core/src/main/java/com/linecorp/armeria/client/DefaultClientFactory.java +++ b/core/src/main/java/com/linecorp/armeria/client/DefaultClientFactory.java @@ -26,6 +26,7 @@ import java.util.concurrent.CompletableFuture; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -39,7 +40,6 @@ import com.linecorp.armeria.common.Scheme; import com.linecorp.armeria.common.SessionProtocol; import com.linecorp.armeria.common.TlsProvider; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.AsyncCloseableSupport; import com.linecorp.armeria.common.util.ReleasableHolder; import com.linecorp.armeria.common.util.ShutdownHooks; diff --git a/core/src/main/java/com/linecorp/armeria/client/DefaultDnsCache.java b/core/src/main/java/com/linecorp/armeria/client/DefaultDnsCache.java index a9b2b6e2f0f..8a2bb000416 100644 --- a/core/src/main/java/com/linecorp/armeria/client/DefaultDnsCache.java +++ b/core/src/main/java/com/linecorp/armeria/client/DefaultDnsCache.java @@ -26,6 +26,7 @@ import java.util.concurrent.ScheduledFuture; import java.util.concurrent.TimeUnit; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -40,7 +41,6 @@ import com.google.common.collect.ImmutableList; import com.google.common.primitives.Ints; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.metric.MeterIdPrefix; import com.linecorp.armeria.internal.common.metric.CaffeineMetricSupport; diff --git a/core/src/main/java/com/linecorp/armeria/client/DefaultDnsQueryLifecycleObserver.java b/core/src/main/java/com/linecorp/armeria/client/DefaultDnsQueryLifecycleObserver.java index 102a2c5f64e..eec656cb1e0 100644 --- a/core/src/main/java/com/linecorp/armeria/client/DefaultDnsQueryLifecycleObserver.java +++ b/core/src/main/java/com/linecorp/armeria/client/DefaultDnsQueryLifecycleObserver.java @@ -19,10 +19,11 @@ import java.util.List; import java.util.stream.Collectors; +import org.jspecify.annotations.Nullable; + import com.google.common.base.Ascii; import com.google.common.collect.ImmutableList; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.metric.MeterIdPrefix; import com.linecorp.armeria.internal.common.util.StringUtil; diff --git a/core/src/main/java/com/linecorp/armeria/client/DefaultEventLoopScheduler.java b/core/src/main/java/com/linecorp/armeria/client/DefaultEventLoopScheduler.java index be96031c1d3..d03a91ecf9d 100644 --- a/core/src/main/java/com/linecorp/armeria/client/DefaultEventLoopScheduler.java +++ b/core/src/main/java/com/linecorp/armeria/client/DefaultEventLoopScheduler.java @@ -30,6 +30,7 @@ import java.util.concurrent.locks.ReentrantLock; import java.util.function.ToIntFunction; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -39,7 +40,6 @@ import com.linecorp.armeria.client.endpoint.EndpointGroup; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.ReleasableHolder; import com.linecorp.armeria.internal.common.util.ReentrantShortLock; diff --git a/core/src/main/java/com/linecorp/armeria/client/DefaultRequestOptions.java b/core/src/main/java/com/linecorp/armeria/client/DefaultRequestOptions.java index 573c7913e73..a6b3b0a59e6 100644 --- a/core/src/main/java/com/linecorp/armeria/client/DefaultRequestOptions.java +++ b/core/src/main/java/com/linecorp/armeria/client/DefaultRequestOptions.java @@ -19,11 +19,12 @@ import java.util.Map; import java.util.Objects; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.google.common.collect.ImmutableMap; import com.linecorp.armeria.common.ExchangeType; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import io.netty.util.AttributeKey; diff --git a/core/src/main/java/com/linecorp/armeria/client/DefaultWebClient.java b/core/src/main/java/com/linecorp/armeria/client/DefaultWebClient.java index 77adbb3ead9..ed93f70a42e 100644 --- a/core/src/main/java/com/linecorp/armeria/client/DefaultWebClient.java +++ b/core/src/main/java/com/linecorp/armeria/client/DefaultWebClient.java @@ -18,6 +18,8 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.google.common.base.Strings; import com.linecorp.armeria.client.endpoint.EndpointGroup; @@ -28,7 +30,6 @@ import com.linecorp.armeria.common.RequestTargetForm; import com.linecorp.armeria.common.Scheme; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.client.ClientUtil; import com.linecorp.armeria.internal.client.DefaultClientRequestContext; import com.linecorp.armeria.internal.client.TailPreClient; diff --git a/core/src/main/java/com/linecorp/armeria/client/DnsCache.java b/core/src/main/java/com/linecorp/armeria/client/DnsCache.java index 3728529fd84..c16dd5bbff7 100644 --- a/core/src/main/java/com/linecorp/armeria/client/DnsCache.java +++ b/core/src/main/java/com/linecorp/armeria/client/DnsCache.java @@ -21,9 +21,10 @@ import java.net.UnknownHostException; import java.util.List; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import io.netty.handler.codec.dns.DnsQuestion; diff --git a/core/src/main/java/com/linecorp/armeria/client/DnsCacheListener.java b/core/src/main/java/com/linecorp/armeria/client/DnsCacheListener.java index 154e9e651d3..76951a28e4c 100644 --- a/core/src/main/java/com/linecorp/armeria/client/DnsCacheListener.java +++ b/core/src/main/java/com/linecorp/armeria/client/DnsCacheListener.java @@ -19,7 +19,8 @@ import java.net.UnknownHostException; import java.util.List; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; import io.netty.handler.codec.dns.DnsQuestion; diff --git a/core/src/main/java/com/linecorp/armeria/client/DnsResolverGroupBuilder.java b/core/src/main/java/com/linecorp/armeria/client/DnsResolverGroupBuilder.java index eb90ff00c94..21c1d702748 100644 --- a/core/src/main/java/com/linecorp/armeria/client/DnsResolverGroupBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/client/DnsResolverGroupBuilder.java @@ -22,8 +22,9 @@ import java.time.Duration; import java.util.function.ToLongFunction; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.retry.Backoff; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import io.micrometer.core.instrument.MeterRegistry; diff --git a/core/src/main/java/com/linecorp/armeria/client/DnsTimeoutException.java b/core/src/main/java/com/linecorp/armeria/client/DnsTimeoutException.java index 64497183aa5..82ad01e4905 100644 --- a/core/src/main/java/com/linecorp/armeria/client/DnsTimeoutException.java +++ b/core/src/main/java/com/linecorp/armeria/client/DnsTimeoutException.java @@ -16,9 +16,10 @@ package com.linecorp.armeria.client; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.Flags; import com.linecorp.armeria.common.TimeoutException; -import com.linecorp.armeria.common.annotation.Nullable; /** * A {@link TimeoutException} raised when a response has not been received from a DNS server within timeout. diff --git a/core/src/main/java/com/linecorp/armeria/client/Endpoint.java b/core/src/main/java/com/linecorp/armeria/client/Endpoint.java index 9a5ed4b7ecd..1114e56bb4f 100644 --- a/core/src/main/java/com/linecorp/armeria/client/Endpoint.java +++ b/core/src/main/java/com/linecorp/armeria/client/Endpoint.java @@ -39,6 +39,8 @@ import javax.annotation.Nonnull; +import org.jspecify.annotations.Nullable; + import com.github.benmanes.caffeine.cache.Cache; import com.github.benmanes.caffeine.cache.Caffeine; import com.google.common.annotations.VisibleForTesting; @@ -53,7 +55,6 @@ import com.linecorp.armeria.common.Scheme; import com.linecorp.armeria.common.SerializationFormat; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.loadbalancer.Weighted; import com.linecorp.armeria.common.util.DomainSocketAddress; diff --git a/core/src/main/java/com/linecorp/armeria/client/EventLoopScheduler.java b/core/src/main/java/com/linecorp/armeria/client/EventLoopScheduler.java index 6e30be54cd3..441c3e8b3ad 100644 --- a/core/src/main/java/com/linecorp/armeria/client/EventLoopScheduler.java +++ b/core/src/main/java/com/linecorp/armeria/client/EventLoopScheduler.java @@ -16,9 +16,10 @@ package com.linecorp.armeria.client; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.endpoint.EndpointGroup; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.ReleasableHolder; import io.netty.channel.EventLoop; diff --git a/core/src/main/java/com/linecorp/armeria/client/FutureTransformingRequestPreparation.java b/core/src/main/java/com/linecorp/armeria/client/FutureTransformingRequestPreparation.java index ed099b4f398..ad2ff3b48e7 100644 --- a/core/src/main/java/com/linecorp/armeria/client/FutureTransformingRequestPreparation.java +++ b/core/src/main/java/com/linecorp/armeria/client/FutureTransformingRequestPreparation.java @@ -24,6 +24,7 @@ import java.util.concurrent.CompletableFuture; import java.util.function.Function; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -38,7 +39,6 @@ import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.MediaType; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.util.Exceptions; diff --git a/core/src/main/java/com/linecorp/armeria/client/Http1ClientKeepAliveHandler.java b/core/src/main/java/com/linecorp/armeria/client/Http1ClientKeepAliveHandler.java index 520c207e358..20ac28bc402 100644 --- a/core/src/main/java/com/linecorp/armeria/client/Http1ClientKeepAliveHandler.java +++ b/core/src/main/java/com/linecorp/armeria/client/Http1ClientKeepAliveHandler.java @@ -18,10 +18,11 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.HttpMethod; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.client.HttpSession; import com.linecorp.armeria.internal.client.UserAgentUtil; import com.linecorp.armeria.internal.common.ConnectionEventListener; diff --git a/core/src/main/java/com/linecorp/armeria/client/Http1ResponseDecoder.java b/core/src/main/java/com/linecorp/armeria/client/Http1ResponseDecoder.java index 886d2f95f96..663d51b244e 100644 --- a/core/src/main/java/com/linecorp/armeria/client/Http1ResponseDecoder.java +++ b/core/src/main/java/com/linecorp/armeria/client/Http1ResponseDecoder.java @@ -19,6 +19,7 @@ import static com.linecorp.armeria.internal.client.ClosedStreamExceptionUtil.newClosedSessionException; import static com.linecorp.armeria.internal.common.KeepAliveHandlerUtil.needsKeepAliveHandler; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -30,7 +31,6 @@ import com.linecorp.armeria.common.ProtocolViolationException; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.metric.MoreMeters; import com.linecorp.armeria.internal.common.ArmeriaHttpUtil; import com.linecorp.armeria.internal.common.InboundTrafficController; diff --git a/core/src/main/java/com/linecorp/armeria/client/Http2ResponseDecoder.java b/core/src/main/java/com/linecorp/armeria/client/Http2ResponseDecoder.java index fa462b9350f..cd4152ca34c 100644 --- a/core/src/main/java/com/linecorp/armeria/client/Http2ResponseDecoder.java +++ b/core/src/main/java/com/linecorp/armeria/client/Http2ResponseDecoder.java @@ -22,6 +22,7 @@ import static io.netty.handler.codec.http2.Http2Error.PROTOCOL_ERROR; import static io.netty.handler.codec.http2.Http2Exception.connectionError; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -31,7 +32,6 @@ import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.HttpStatusClass; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.ClosedStreamException; import com.linecorp.armeria.internal.common.ArmeriaHttpUtil; import com.linecorp.armeria.internal.common.Http2GoAwayHandler; diff --git a/core/src/main/java/com/linecorp/armeria/client/HttpChannelPool.java b/core/src/main/java/com/linecorp/armeria/client/HttpChannelPool.java index a499c41c7f6..8d8c8f46c82 100644 --- a/core/src/main/java/com/linecorp/armeria/client/HttpChannelPool.java +++ b/core/src/main/java/com/linecorp/armeria/client/HttpChannelPool.java @@ -35,6 +35,7 @@ import java.util.function.BiFunction; import java.util.function.Consumer; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -51,7 +52,6 @@ import com.linecorp.armeria.common.NonBlocking; import com.linecorp.armeria.common.SerializationFormat; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.ClientConnectionTimingsBuilder; import com.linecorp.armeria.common.util.AsyncCloseable; import com.linecorp.armeria.common.util.AsyncCloseableSupport; diff --git a/core/src/main/java/com/linecorp/armeria/client/HttpClientDelegate.java b/core/src/main/java/com/linecorp/armeria/client/HttpClientDelegate.java index 4d9b7c1f306..0ea996cdab8 100644 --- a/core/src/main/java/com/linecorp/armeria/client/HttpClientDelegate.java +++ b/core/src/main/java/com/linecorp/armeria/client/HttpClientDelegate.java @@ -24,6 +24,8 @@ import java.util.List; import java.util.function.BiConsumer; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.HttpChannelPool.PoolKey; import com.linecorp.armeria.client.endpoint.EmptyEndpointGroupException; import com.linecorp.armeria.client.proxy.HAProxyConfig; @@ -37,7 +39,6 @@ import com.linecorp.armeria.common.TlsKeyPair; import com.linecorp.armeria.common.TlsPeerVerifierFactory; import com.linecorp.armeria.common.TlsProvider; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.ClientConnectionTimings; import com.linecorp.armeria.common.logging.ClientConnectionTimingsBuilder; import com.linecorp.armeria.common.util.SafeCloseable; diff --git a/core/src/main/java/com/linecorp/armeria/client/HttpClientFactory.java b/core/src/main/java/com/linecorp/armeria/client/HttpClientFactory.java index fc4c7636839..a90b0ce1c27 100644 --- a/core/src/main/java/com/linecorp/armeria/client/HttpClientFactory.java +++ b/core/src/main/java/com/linecorp/armeria/client/HttpClientFactory.java @@ -31,6 +31,7 @@ import java.util.function.Supplier; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -46,7 +47,6 @@ import com.linecorp.armeria.common.Scheme; import com.linecorp.armeria.common.SerializationFormat; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.metric.MeterIdPrefix; import com.linecorp.armeria.common.util.AsyncCloseableSupport; import com.linecorp.armeria.common.util.ReleasableHolder; diff --git a/core/src/main/java/com/linecorp/armeria/client/HttpClientPipelineConfigurator.java b/core/src/main/java/com/linecorp/armeria/client/HttpClientPipelineConfigurator.java index d1efec6f1b9..f32d6cb1325 100644 --- a/core/src/main/java/com/linecorp/armeria/client/HttpClientPipelineConfigurator.java +++ b/core/src/main/java/com/linecorp/armeria/client/HttpClientPipelineConfigurator.java @@ -37,6 +37,7 @@ import javax.net.ssl.SSLEngine; import javax.net.ssl.SSLException; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; import org.slf4j.Logger; @@ -49,7 +50,6 @@ import com.linecorp.armeria.common.RequestId; import com.linecorp.armeria.common.RequestTarget; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.ClientConnectionTimingsBuilder; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.common.util.SystemInfo; diff --git a/core/src/main/java/com/linecorp/armeria/client/HttpResponseDecoder.java b/core/src/main/java/com/linecorp/armeria/client/HttpResponseDecoder.java index bbce2e5adb2..7dbdf25cf32 100644 --- a/core/src/main/java/com/linecorp/armeria/client/HttpResponseDecoder.java +++ b/core/src/main/java/com/linecorp/armeria/client/HttpResponseDecoder.java @@ -16,7 +16,8 @@ package com.linecorp.armeria.client; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.internal.client.DecodedHttpResponse; import com.linecorp.armeria.internal.client.HttpSession; import com.linecorp.armeria.internal.common.InboundTrafficController; diff --git a/core/src/main/java/com/linecorp/armeria/client/HttpResponseWrapper.java b/core/src/main/java/com/linecorp/armeria/client/HttpResponseWrapper.java index 09336ac0a45..8a8c1b6b95c 100644 --- a/core/src/main/java/com/linecorp/armeria/client/HttpResponseWrapper.java +++ b/core/src/main/java/com/linecorp/armeria/client/HttpResponseWrapper.java @@ -21,6 +21,7 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.TimeUnit; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -33,7 +34,6 @@ import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.ResponseCompleteException; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLogProperty; import com.linecorp.armeria.common.stream.CancelledSubscriptionException; import com.linecorp.armeria.common.stream.StreamWriter; diff --git a/core/src/main/java/com/linecorp/armeria/client/HttpSessionHandler.java b/core/src/main/java/com/linecorp/armeria/client/HttpSessionHandler.java index 675307ca6da..a085991a209 100644 --- a/core/src/main/java/com/linecorp/armeria/client/HttpSessionHandler.java +++ b/core/src/main/java/com/linecorp/armeria/client/HttpSessionHandler.java @@ -30,6 +30,7 @@ import java.util.concurrent.ScheduledFuture; import java.util.concurrent.TimeUnit; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -42,7 +43,6 @@ import com.linecorp.armeria.common.RequestContext; import com.linecorp.armeria.common.SerializationFormat; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.outlier.OutlierDetection; import com.linecorp.armeria.common.outlier.OutlierDetectionDecision; diff --git a/core/src/main/java/com/linecorp/armeria/client/InvalidHttpResponseException.java b/core/src/main/java/com/linecorp/armeria/client/InvalidHttpResponseException.java index 890b9c49181..07f309899cc 100644 --- a/core/src/main/java/com/linecorp/armeria/client/InvalidHttpResponseException.java +++ b/core/src/main/java/com/linecorp/armeria/client/InvalidHttpResponseException.java @@ -19,9 +19,10 @@ import static com.google.common.base.Preconditions.checkArgument; import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.AggregatedHttpResponse; import com.linecorp.armeria.common.HttpResponse; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/client/InvalidResponseException.java b/core/src/main/java/com/linecorp/armeria/client/InvalidResponseException.java index f905e5c8207..c24b4fa2145 100644 --- a/core/src/main/java/com/linecorp/armeria/client/InvalidResponseException.java +++ b/core/src/main/java/com/linecorp/armeria/client/InvalidResponseException.java @@ -15,7 +15,7 @@ */ package com.linecorp.armeria.client; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * A {@link RuntimeException} raised when a client received an invalid response. diff --git a/core/src/main/java/com/linecorp/armeria/client/InvalidResponseHeadersException.java b/core/src/main/java/com/linecorp/armeria/client/InvalidResponseHeadersException.java index 7d43067b5de..b33b04294c0 100644 --- a/core/src/main/java/com/linecorp/armeria/client/InvalidResponseHeadersException.java +++ b/core/src/main/java/com/linecorp/armeria/client/InvalidResponseHeadersException.java @@ -17,8 +17,9 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; /** * An {@link InvalidResponseException} raised when a client received a response with invalid headers. diff --git a/core/src/main/java/com/linecorp/armeria/client/NoopHostFileEntriesResolver.java b/core/src/main/java/com/linecorp/armeria/client/NoopHostFileEntriesResolver.java index 8dc905697ca..bb14ed3c6e3 100644 --- a/core/src/main/java/com/linecorp/armeria/client/NoopHostFileEntriesResolver.java +++ b/core/src/main/java/com/linecorp/armeria/client/NoopHostFileEntriesResolver.java @@ -18,7 +18,7 @@ import java.net.InetAddress; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; import io.netty.resolver.HostsFileEntriesResolver; import io.netty.resolver.ResolvedAddressTypes; diff --git a/core/src/main/java/com/linecorp/armeria/client/NullTlsProvider.java b/core/src/main/java/com/linecorp/armeria/client/NullTlsProvider.java index 90519034de4..1c5c4e92144 100644 --- a/core/src/main/java/com/linecorp/armeria/client/NullTlsProvider.java +++ b/core/src/main/java/com/linecorp/armeria/client/NullTlsProvider.java @@ -16,9 +16,10 @@ package com.linecorp.armeria.client; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.TlsKeyPair; import com.linecorp.armeria.common.TlsProvider; -import com.linecorp.armeria.common.annotation.Nullable; enum NullTlsProvider implements TlsProvider { INSTANCE; diff --git a/core/src/main/java/com/linecorp/armeria/client/RedirectingClient.java b/core/src/main/java/com/linecorp/armeria/client/RedirectingClient.java index 1f83fa3610f..c8b729a0d05 100644 --- a/core/src/main/java/com/linecorp/armeria/client/RedirectingClient.java +++ b/core/src/main/java/com/linecorp/armeria/client/RedirectingClient.java @@ -29,6 +29,8 @@ import java.util.function.BiPredicate; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.google.common.annotations.VisibleForTesting; import com.google.common.base.Splitter; import com.google.common.collect.ImmutableSet; @@ -53,7 +55,6 @@ import com.linecorp.armeria.common.RequestTargetForm; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLogBuilder; import com.linecorp.armeria.common.logging.RequestLogProperty; import com.linecorp.armeria.common.stream.AbortedStreamException; diff --git a/core/src/main/java/com/linecorp/armeria/client/RefreshingAddressResolver.java b/core/src/main/java/com/linecorp/armeria/client/RefreshingAddressResolver.java index b27403ca9c6..ceea750d753 100644 --- a/core/src/main/java/com/linecorp/armeria/client/RefreshingAddressResolver.java +++ b/core/src/main/java/com/linecorp/armeria/client/RefreshingAddressResolver.java @@ -31,6 +31,7 @@ import java.util.concurrent.TimeUnit; import java.util.function.ToLongFunction; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -39,7 +40,6 @@ import com.google.common.base.MoreObjects; import com.linecorp.armeria.client.retry.Backoff; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.internal.client.dns.DefaultDnsResolver; import com.linecorp.armeria.internal.client.dns.DnsQuestionWithoutTrailingDot; diff --git a/core/src/main/java/com/linecorp/armeria/client/RefreshingAddressResolverGroup.java b/core/src/main/java/com/linecorp/armeria/client/RefreshingAddressResolverGroup.java index b8b4c601da1..cc9f65abe0e 100644 --- a/core/src/main/java/com/linecorp/armeria/client/RefreshingAddressResolverGroup.java +++ b/core/src/main/java/com/linecorp/armeria/client/RefreshingAddressResolverGroup.java @@ -21,6 +21,8 @@ import java.util.function.Consumer; import java.util.function.ToLongFunction; +import org.jspecify.annotations.Nullable; + import com.github.benmanes.caffeine.cache.Cache; import com.github.benmanes.caffeine.cache.Caffeine; import com.github.benmanes.caffeine.cache.RemovalListener; @@ -30,7 +32,6 @@ import com.linecorp.armeria.client.RefreshingAddressResolver.CacheEntry; import com.linecorp.armeria.client.retry.Backoff; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.SystemInfo; import com.linecorp.armeria.internal.client.dns.DefaultDnsResolver; diff --git a/core/src/main/java/com/linecorp/armeria/client/RequestOptions.java b/core/src/main/java/com/linecorp/armeria/client/RequestOptions.java index 1c2d31f6093..5cb011b9ac9 100644 --- a/core/src/main/java/com/linecorp/armeria/client/RequestOptions.java +++ b/core/src/main/java/com/linecorp/armeria/client/RequestOptions.java @@ -21,12 +21,13 @@ import java.util.Map; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.ExchangeType; import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.Request; import com.linecorp.armeria.common.Response; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import io.netty.util.AttributeKey; diff --git a/core/src/main/java/com/linecorp/armeria/client/RequestOptionsBuilder.java b/core/src/main/java/com/linecorp/armeria/client/RequestOptionsBuilder.java index 3e20f258762..575ca2abcef 100644 --- a/core/src/main/java/com/linecorp/armeria/client/RequestOptionsBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/client/RequestOptionsBuilder.java @@ -24,10 +24,11 @@ import java.util.HashMap; import java.util.Map; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableMap; import com.linecorp.armeria.common.ExchangeType; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import io.netty.util.AttributeKey; diff --git a/core/src/main/java/com/linecorp/armeria/client/RequestOptionsSetters.java b/core/src/main/java/com/linecorp/armeria/client/RequestOptionsSetters.java index be2cd008221..3c48b9f2308 100644 --- a/core/src/main/java/com/linecorp/armeria/client/RequestOptionsSetters.java +++ b/core/src/main/java/com/linecorp/armeria/client/RequestOptionsSetters.java @@ -18,12 +18,13 @@ import java.time.Duration; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.ExchangeType; import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.Request; import com.linecorp.armeria.common.Response; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import io.netty.util.AttributeKey; diff --git a/core/src/main/java/com/linecorp/armeria/client/RestClientBuilder.java b/core/src/main/java/com/linecorp/armeria/client/RestClientBuilder.java index 399fe338173..27b95eb0539 100644 --- a/core/src/main/java/com/linecorp/armeria/client/RestClientBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/client/RestClientBuilder.java @@ -23,12 +23,13 @@ import java.util.function.Function; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.endpoint.EndpointGroup; import com.linecorp.armeria.client.redirect.RedirectConfig; import com.linecorp.armeria.common.RequestId; import com.linecorp.armeria.common.SessionProtocol; import com.linecorp.armeria.common.SuccessFunction; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.auth.AuthToken; import com.linecorp.armeria.common.auth.BasicToken; diff --git a/core/src/main/java/com/linecorp/armeria/client/RestClientPreparation.java b/core/src/main/java/com/linecorp/armeria/client/RestClientPreparation.java index 8a187953483..cfdc35fc9e6 100644 --- a/core/src/main/java/com/linecorp/armeria/client/RestClientPreparation.java +++ b/core/src/main/java/com/linecorp/armeria/client/RestClientPreparation.java @@ -23,6 +23,7 @@ import java.util.Map.Entry; import java.util.concurrent.CompletableFuture; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; import com.fasterxml.jackson.core.type.TypeReference; @@ -39,7 +40,6 @@ import com.linecorp.armeria.common.JacksonObjectMapperProvider; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseEntity; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import io.netty.util.AttributeKey; diff --git a/core/src/main/java/com/linecorp/armeria/client/SessionProtocolNegotiationException.java b/core/src/main/java/com/linecorp/armeria/client/SessionProtocolNegotiationException.java index 6eced0cba29..fa9069f468a 100644 --- a/core/src/main/java/com/linecorp/armeria/client/SessionProtocolNegotiationException.java +++ b/core/src/main/java/com/linecorp/armeria/client/SessionProtocolNegotiationException.java @@ -18,9 +18,10 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.Flags; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; /** * An exception triggered when failed to negotiate the desired {@link SessionProtocol} with a server. diff --git a/core/src/main/java/com/linecorp/armeria/client/TimeoutExceptionPredicate.java b/core/src/main/java/com/linecorp/armeria/client/TimeoutExceptionPredicate.java index 53c25057bc9..05a00ced27a 100644 --- a/core/src/main/java/com/linecorp/armeria/client/TimeoutExceptionPredicate.java +++ b/core/src/main/java/com/linecorp/armeria/client/TimeoutExceptionPredicate.java @@ -16,8 +16,9 @@ package com.linecorp.armeria.client; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.TimeoutException; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.internal.client.dns.DnsUtil; diff --git a/core/src/main/java/com/linecorp/armeria/client/TransformingRequestPreparation.java b/core/src/main/java/com/linecorp/armeria/client/TransformingRequestPreparation.java index d76de68401a..45098487de3 100644 --- a/core/src/main/java/com/linecorp/armeria/client/TransformingRequestPreparation.java +++ b/core/src/main/java/com/linecorp/armeria/client/TransformingRequestPreparation.java @@ -22,6 +22,7 @@ import java.util.Map; import java.util.Map.Entry; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; import com.google.errorprone.annotations.FormatMethod; @@ -34,7 +35,6 @@ import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.MediaType; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import io.netty.util.AttributeKey; diff --git a/core/src/main/java/com/linecorp/armeria/client/WebClient.java b/core/src/main/java/com/linecorp/armeria/client/WebClient.java index d88c0fd8917..e62020473e9 100644 --- a/core/src/main/java/com/linecorp/armeria/client/WebClient.java +++ b/core/src/main/java/com/linecorp/armeria/client/WebClient.java @@ -22,6 +22,8 @@ import java.net.URI; import java.nio.charset.Charset; +import org.jspecify.annotations.Nullable; + import com.google.errorprone.annotations.CheckReturnValue; import com.linecorp.armeria.client.endpoint.EndpointGroup; @@ -33,7 +35,6 @@ import com.linecorp.armeria.common.QueryParams; import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.util.BlockingTaskExecutor; import com.linecorp.armeria.common.util.Unwrappable; diff --git a/core/src/main/java/com/linecorp/armeria/client/WebClientBuilder.java b/core/src/main/java/com/linecorp/armeria/client/WebClientBuilder.java index 6a36afce33e..3ce570fd155 100644 --- a/core/src/main/java/com/linecorp/armeria/client/WebClientBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/client/WebClientBuilder.java @@ -23,12 +23,13 @@ import java.util.function.Function; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.endpoint.EndpointGroup; import com.linecorp.armeria.client.redirect.RedirectConfig; import com.linecorp.armeria.common.RequestId; import com.linecorp.armeria.common.SessionProtocol; import com.linecorp.armeria.common.SuccessFunction; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.auth.AuthToken; import com.linecorp.armeria.common.auth.BasicToken; import com.linecorp.armeria.common.auth.OAuth1aToken; diff --git a/core/src/main/java/com/linecorp/armeria/client/WebClientRequestPreparation.java b/core/src/main/java/com/linecorp/armeria/client/WebClientRequestPreparation.java index 6486be67ac8..ce273e5421b 100644 --- a/core/src/main/java/com/linecorp/armeria/client/WebClientRequestPreparation.java +++ b/core/src/main/java/com/linecorp/armeria/client/WebClientRequestPreparation.java @@ -26,6 +26,7 @@ import java.util.List; import java.util.Map; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; import com.fasterxml.jackson.core.type.TypeReference; @@ -44,7 +45,6 @@ import com.linecorp.armeria.common.JacksonObjectMapperProvider; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseEntity; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import io.netty.util.AttributeKey; diff --git a/core/src/main/java/com/linecorp/armeria/client/WebClientUtil.java b/core/src/main/java/com/linecorp/armeria/client/WebClientUtil.java index eaae60f2edf..a780c0511c6 100644 --- a/core/src/main/java/com/linecorp/armeria/client/WebClientUtil.java +++ b/core/src/main/java/com/linecorp/armeria/client/WebClientUtil.java @@ -17,8 +17,9 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.QueryParams; -import com.linecorp.armeria.common.annotation.Nullable; final class WebClientUtil { diff --git a/core/src/main/java/com/linecorp/armeria/client/WebSocketHttp1ClientChannelHandler.java b/core/src/main/java/com/linecorp/armeria/client/WebSocketHttp1ClientChannelHandler.java index cf6d0171792..c8ddfe9abcd 100644 --- a/core/src/main/java/com/linecorp/armeria/client/WebSocketHttp1ClientChannelHandler.java +++ b/core/src/main/java/com/linecorp/armeria/client/WebSocketHttp1ClientChannelHandler.java @@ -20,6 +20,7 @@ import static com.linecorp.armeria.internal.client.ClosedStreamExceptionUtil.newClosedSessionException; import static io.netty.handler.codec.http.LastHttpContent.EMPTY_LAST_CONTENT; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -29,7 +30,6 @@ import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.ProtocolViolationException; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.client.DecodedHttpResponse; import com.linecorp.armeria.internal.client.HttpSession; import com.linecorp.armeria.internal.common.ArmeriaHttpUtil; diff --git a/core/src/main/java/com/linecorp/armeria/client/WebSocketHttp1ResponseWrapper.java b/core/src/main/java/com/linecorp/armeria/client/WebSocketHttp1ResponseWrapper.java index 47abd673080..c8cdd50dcb1 100644 --- a/core/src/main/java/com/linecorp/armeria/client/WebSocketHttp1ResponseWrapper.java +++ b/core/src/main/java/com/linecorp/armeria/client/WebSocketHttp1ResponseWrapper.java @@ -16,8 +16,9 @@ package com.linecorp.armeria.client; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.ClosedSessionException; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.client.DecodedHttpResponse; import com.linecorp.armeria.internal.client.websocket.WebSocketClientUtil; diff --git a/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/AbstractCircuitBreakerClient.java b/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/AbstractCircuitBreakerClient.java index 82395df94d7..b278d58b3c2 100644 --- a/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/AbstractCircuitBreakerClient.java +++ b/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/AbstractCircuitBreakerClient.java @@ -23,6 +23,8 @@ import java.util.concurrent.CompletionStage; import java.util.function.BiFunction; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.linecorp.armeria.client.Client; @@ -30,7 +32,6 @@ import com.linecorp.armeria.client.SimpleDecoratingClient; import com.linecorp.armeria.common.Request; import com.linecorp.armeria.common.Response; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.circuitbreaker.CircuitBreakerCallback; import com.linecorp.armeria.common.util.CompletionActions; diff --git a/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/AbstractCircuitBreakerClientBuilder.java b/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/AbstractCircuitBreakerClientBuilder.java index e0e061ec8bf..09e7e5850cf 100644 --- a/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/AbstractCircuitBreakerClientBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/AbstractCircuitBreakerClientBuilder.java @@ -21,11 +21,12 @@ import java.util.function.BiFunction; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.Client; import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.common.Request; import com.linecorp.armeria.common.Response; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerBuilder.java b/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerBuilder.java index 67933f59b9e..32c2aa47026 100644 --- a/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerBuilder.java @@ -23,9 +23,10 @@ import java.util.Collections; import java.util.List; +import org.jspecify.annotations.Nullable; + import com.google.common.annotations.VisibleForTesting; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Ticker; /** diff --git a/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerClient.java b/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerClient.java index 798f39148d5..6a6557340d1 100644 --- a/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerClient.java +++ b/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerClient.java @@ -23,6 +23,8 @@ import java.util.function.BiFunction; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.client.HttpClient; import com.linecorp.armeria.common.HttpMethod; @@ -30,7 +32,6 @@ import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpResponseDuplicator; import com.linecorp.armeria.common.Response; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.circuitbreaker.CircuitBreakerCallback; import com.linecorp.armeria.common.logging.RequestLogProperty; diff --git a/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerClientHandler.java b/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerClientHandler.java index 57b25191a18..9e7d5e48617 100644 --- a/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerClientHandler.java +++ b/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerClientHandler.java @@ -18,9 +18,10 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.common.Request; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.circuitbreaker.CircuitBreakerCallback; diff --git a/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerConfig.java b/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerConfig.java index f9c78d2d692..be1bb79dd3f 100644 --- a/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerConfig.java +++ b/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerConfig.java @@ -19,9 +19,9 @@ import java.time.Duration; import java.util.List; -import com.google.common.base.MoreObjects; +import org.jspecify.annotations.Nullable; -import com.linecorp.armeria.common.annotation.Nullable; +import com.google.common.base.MoreObjects; /** * Stores configurations of circuit breaker. diff --git a/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerFactory.java b/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerFactory.java index e80ba47d630..60e4a8e4a53 100644 --- a/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerFactory.java +++ b/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerFactory.java @@ -16,7 +16,7 @@ package com.linecorp.armeria.client.circuitbreaker; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * A functional interface that represents a mapper factory, mapping a combination of host, method and path diff --git a/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerRpcClient.java b/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerRpcClient.java index eebde7dbaed..f62cbe955a7 100644 --- a/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerRpcClient.java +++ b/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerRpcClient.java @@ -21,11 +21,12 @@ import java.util.function.BiFunction; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.client.RpcClient; import com.linecorp.armeria.common.RpcRequest; import com.linecorp.armeria.common.RpcResponse; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.circuitbreaker.CircuitBreakerCallback; diff --git a/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerRule.java b/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerRule.java index 8648bf2c7db..f6c6e1a2508 100644 --- a/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerRule.java +++ b/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerRule.java @@ -22,6 +22,8 @@ import java.util.concurrent.CompletionStage; import java.util.function.BiPredicate; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; import com.google.common.collect.Iterables; @@ -36,7 +38,6 @@ import com.linecorp.armeria.common.Response; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.TimeoutException; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerRuleBuilder.java b/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerRuleBuilder.java index 4086fb6eeef..14ec0c92b3a 100644 --- a/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerRuleBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerRuleBuilder.java @@ -26,11 +26,12 @@ import java.util.function.BiFunction; import java.util.function.BiPredicate; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.AbstractRuleBuilder; import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.Response; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.client.RuleFilter; /** diff --git a/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerRuleUtil.java b/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerRuleUtil.java index 90b7fffd69e..4af53de4126 100644 --- a/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerRuleUtil.java +++ b/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerRuleUtil.java @@ -19,11 +19,12 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.CompletionStage; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpResponseDuplicator; import com.linecorp.armeria.common.Response; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.UnmodifiableFuture; final class CircuitBreakerRuleUtil { diff --git a/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerRuleWithContent.java b/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerRuleWithContent.java index 676c8f1f651..8a673fd4c43 100644 --- a/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerRuleWithContent.java +++ b/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/CircuitBreakerRuleWithContent.java @@ -23,6 +23,8 @@ import java.util.function.BiFunction; import java.util.function.BiPredicate; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; import com.google.common.collect.Iterables; @@ -33,7 +35,6 @@ import com.linecorp.armeria.common.HttpMethod; import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.Response; -import com.linecorp.armeria.common.annotation.Nullable; /** * Determines whether a {@link Response} should be reported as a success or failure to a diff --git a/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/DefaultCircuitBreakerCallback.java b/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/DefaultCircuitBreakerCallback.java index 7f27f148af4..93e0e981e51 100644 --- a/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/DefaultCircuitBreakerCallback.java +++ b/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/DefaultCircuitBreakerCallback.java @@ -18,8 +18,9 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.circuitbreaker.CircuitBreakerCallback; final class DefaultCircuitBreakerCallback implements CircuitBreakerCallback { diff --git a/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/DefaultCircuitBreakerClientHandler.java b/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/DefaultCircuitBreakerClientHandler.java index a66f3f5dc1f..205c5b9a74d 100644 --- a/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/DefaultCircuitBreakerClientHandler.java +++ b/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/DefaultCircuitBreakerClientHandler.java @@ -18,12 +18,12 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.common.Request; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.circuitbreaker.CircuitBreakerCallback; final class DefaultCircuitBreakerClientHandler implements CircuitBreakerClientHandler { diff --git a/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/EventCount.java b/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/EventCount.java index 9846b7f9d52..b7af1066403 100644 --- a/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/EventCount.java +++ b/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/EventCount.java @@ -18,7 +18,7 @@ import static com.google.common.base.Preconditions.checkArgument; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * An immutable object that stores the count of events. diff --git a/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/NonBlockingCircuitBreaker.java b/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/NonBlockingCircuitBreaker.java index 05beb916a36..0408bd04f1d 100644 --- a/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/NonBlockingCircuitBreaker.java +++ b/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/NonBlockingCircuitBreaker.java @@ -22,6 +22,7 @@ import java.util.concurrent.atomic.AtomicLong; import java.util.concurrent.atomic.AtomicReference; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -29,7 +30,6 @@ import com.google.common.base.MoreObjects; import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.circuitbreaker.CircuitBreakerCallback; import com.linecorp.armeria.common.util.EventCount; import com.linecorp.armeria.common.util.EventCounter; diff --git a/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/package-info.java b/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/package-info.java index b07081e487b..40ee6547f07 100644 --- a/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/client/circuitbreaker/package-info.java @@ -122,7 +122,7 @@ *

{@code exceptionFilter}

* A filter that decides whether a circuit breaker should deal with a given error. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.client.circuitbreaker; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/client/cookie/package-info.java b/core/src/main/java/com/linecorp/armeria/client/cookie/package-info.java index ffd10a6f7da..990ba833964 100644 --- a/core/src/main/java/com/linecorp/armeria/client/cookie/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/client/cookie/package-info.java @@ -17,7 +17,7 @@ /** * Cookie aware client. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.client.cookie; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/client/encoding/DecodingClient.java b/core/src/main/java/com/linecorp/armeria/client/encoding/DecodingClient.java index 1c5dcfeed17..5731fe00315 100644 --- a/core/src/main/java/com/linecorp/armeria/client/encoding/DecodingClient.java +++ b/core/src/main/java/com/linecorp/armeria/client/encoding/DecodingClient.java @@ -24,6 +24,8 @@ import java.util.Set; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.google.common.base.Splitter; import com.google.common.base.Strings; import com.google.common.collect.ImmutableList; @@ -40,7 +42,6 @@ import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.RequestHeadersBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.encoding.DefaultHttpDecodedResponse; /** diff --git a/core/src/main/java/com/linecorp/armeria/client/encoding/package-info.java b/core/src/main/java/com/linecorp/armeria/client/encoding/package-info.java index 58721ac9f52..1e9c0df5a10 100644 --- a/core/src/main/java/com/linecorp/armeria/client/encoding/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/client/encoding/package-info.java @@ -17,7 +17,7 @@ /** * HTTP content decoding client. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.client.encoding; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/client/endpoint/AbstractEndpointGroup.java b/core/src/main/java/com/linecorp/armeria/client/endpoint/AbstractEndpointGroup.java index b714cdb9e2f..b19bdd3aca4 100644 --- a/core/src/main/java/com/linecorp/armeria/client/endpoint/AbstractEndpointGroup.java +++ b/core/src/main/java/com/linecorp/armeria/client/endpoint/AbstractEndpointGroup.java @@ -18,8 +18,9 @@ import java.util.List; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.Endpoint; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.AbstractListenable; abstract class AbstractEndpointGroup extends AbstractListenable> implements EndpointGroup { diff --git a/core/src/main/java/com/linecorp/armeria/client/endpoint/AbstractEndpointSelector.java b/core/src/main/java/com/linecorp/armeria/client/endpoint/AbstractEndpointSelector.java index 95a4206168c..0e21f280f11 100644 --- a/core/src/main/java/com/linecorp/armeria/client/endpoint/AbstractEndpointSelector.java +++ b/core/src/main/java/com/linecorp/armeria/client/endpoint/AbstractEndpointSelector.java @@ -23,11 +23,12 @@ import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.atomic.AtomicIntegerFieldUpdater; +import org.jspecify.annotations.Nullable; + import com.google.common.annotations.VisibleForTesting; import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.client.Endpoint; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.internal.client.AbstractAsyncSelector; import com.linecorp.armeria.internal.client.ClientPendingThrowableUtil; diff --git a/core/src/main/java/com/linecorp/armeria/client/endpoint/CompositeEndpointGroup.java b/core/src/main/java/com/linecorp/armeria/client/endpoint/CompositeEndpointGroup.java index 1fa6fdd8aaa..a0c5ea0e1bd 100644 --- a/core/src/main/java/com/linecorp/armeria/client/endpoint/CompositeEndpointGroup.java +++ b/core/src/main/java/com/linecorp/armeria/client/endpoint/CompositeEndpointGroup.java @@ -24,12 +24,13 @@ import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.atomic.AtomicReference; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.google.common.collect.ImmutableList; import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.client.Endpoint; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.AsyncCloseable; import com.linecorp.armeria.common.util.AsyncCloseableSupport; import com.linecorp.armeria.common.util.ListenableAsyncCloseable; diff --git a/core/src/main/java/com/linecorp/armeria/client/endpoint/DefaultEndpointSelector.java b/core/src/main/java/com/linecorp/armeria/client/endpoint/DefaultEndpointSelector.java index 6b584109253..18984119c46 100644 --- a/core/src/main/java/com/linecorp/armeria/client/endpoint/DefaultEndpointSelector.java +++ b/core/src/main/java/com/linecorp/armeria/client/endpoint/DefaultEndpointSelector.java @@ -18,9 +18,10 @@ import java.util.List; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.client.Endpoint; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.loadbalancer.LoadBalancer; import com.linecorp.armeria.common.util.ListenableAsyncCloseable; import com.linecorp.armeria.internal.common.util.ReentrantShortLock; diff --git a/core/src/main/java/com/linecorp/armeria/client/endpoint/DynamicEndpointGroup.java b/core/src/main/java/com/linecorp/armeria/client/endpoint/DynamicEndpointGroup.java index 1d9991301ed..e7d8e351347 100644 --- a/core/src/main/java/com/linecorp/armeria/client/endpoint/DynamicEndpointGroup.java +++ b/core/src/main/java/com/linecorp/armeria/client/endpoint/DynamicEndpointGroup.java @@ -33,6 +33,7 @@ import java.util.concurrent.locks.Lock; import java.util.function.Consumer; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -43,7 +44,6 @@ import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.client.Endpoint; import com.linecorp.armeria.common.Flags; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.util.AsyncCloseableSupport; import com.linecorp.armeria.common.util.EventLoopCheckingFuture; diff --git a/core/src/main/java/com/linecorp/armeria/client/endpoint/DynamicEndpointGroupBuilder.java b/core/src/main/java/com/linecorp/armeria/client/endpoint/DynamicEndpointGroupBuilder.java index 3b4ca4ea29c..cb7d685171c 100644 --- a/core/src/main/java/com/linecorp/armeria/client/endpoint/DynamicEndpointGroupBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/client/endpoint/DynamicEndpointGroupBuilder.java @@ -17,8 +17,9 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.Flags; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/client/endpoint/EmptyEndpointGroupException.java b/core/src/main/java/com/linecorp/armeria/client/endpoint/EmptyEndpointGroupException.java index 0e8289fb852..0b3cfc60f47 100644 --- a/core/src/main/java/com/linecorp/armeria/client/endpoint/EmptyEndpointGroupException.java +++ b/core/src/main/java/com/linecorp/armeria/client/endpoint/EmptyEndpointGroupException.java @@ -15,9 +15,10 @@ */ package com.linecorp.armeria.client.endpoint; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.Endpoint; import com.linecorp.armeria.common.Flags; -import com.linecorp.armeria.common.annotation.Nullable; /** * An {@link EndpointGroupException} raised when the resolution of an {@link EndpointGroup} fails diff --git a/core/src/main/java/com/linecorp/armeria/client/endpoint/EndpointGroup.java b/core/src/main/java/com/linecorp/armeria/client/endpoint/EndpointGroup.java index 0b4e5aca137..1ec970f6a22 100644 --- a/core/src/main/java/com/linecorp/armeria/client/endpoint/EndpointGroup.java +++ b/core/src/main/java/com/linecorp/armeria/client/endpoint/EndpointGroup.java @@ -25,12 +25,13 @@ import java.util.concurrent.ScheduledExecutorService; import java.util.function.Consumer; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.client.Endpoint; import com.linecorp.armeria.client.retry.RetryingClient; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.util.AsyncCloseable; import com.linecorp.armeria.common.util.Listenable; diff --git a/core/src/main/java/com/linecorp/armeria/client/endpoint/EndpointGroupException.java b/core/src/main/java/com/linecorp/armeria/client/endpoint/EndpointGroupException.java index 56af8d0a06f..81d52b2489f 100644 --- a/core/src/main/java/com/linecorp/armeria/client/endpoint/EndpointGroupException.java +++ b/core/src/main/java/com/linecorp/armeria/client/endpoint/EndpointGroupException.java @@ -16,7 +16,7 @@ package com.linecorp.armeria.client.endpoint; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * A {@link RuntimeException} raised when the resolution of an {@link EndpointGroup} fails. diff --git a/core/src/main/java/com/linecorp/armeria/client/endpoint/EndpointGroupUtil.java b/core/src/main/java/com/linecorp/armeria/client/endpoint/EndpointGroupUtil.java index 681dd0852c5..3180f633993 100644 --- a/core/src/main/java/com/linecorp/armeria/client/endpoint/EndpointGroupUtil.java +++ b/core/src/main/java/com/linecorp/armeria/client/endpoint/EndpointGroupUtil.java @@ -19,7 +19,7 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; final class EndpointGroupUtil { diff --git a/core/src/main/java/com/linecorp/armeria/client/endpoint/EndpointSelector.java b/core/src/main/java/com/linecorp/armeria/client/endpoint/EndpointSelector.java index 725a74ee285..d575ea4a7da 100644 --- a/core/src/main/java/com/linecorp/armeria/client/endpoint/EndpointSelector.java +++ b/core/src/main/java/com/linecorp/armeria/client/endpoint/EndpointSelector.java @@ -19,11 +19,12 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.ScheduledExecutorService; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.client.Endpoint; import com.linecorp.armeria.common.Flags; import com.linecorp.armeria.common.Request; -import com.linecorp.armeria.common.annotation.Nullable; /** * Selects an {@link Endpoint} from an {@link EndpointGroup}. diff --git a/core/src/main/java/com/linecorp/armeria/client/endpoint/OrElseEndpointGroup.java b/core/src/main/java/com/linecorp/armeria/client/endpoint/OrElseEndpointGroup.java index 8c221eb252d..70771c8941c 100644 --- a/core/src/main/java/com/linecorp/armeria/client/endpoint/OrElseEndpointGroup.java +++ b/core/src/main/java/com/linecorp/armeria/client/endpoint/OrElseEndpointGroup.java @@ -22,11 +22,12 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.ScheduledExecutorService; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.client.Endpoint; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.AsyncCloseableSupport; import com.linecorp.armeria.common.util.ListenableAsyncCloseable; diff --git a/core/src/main/java/com/linecorp/armeria/client/endpoint/PropertiesEndpointGroup.java b/core/src/main/java/com/linecorp/armeria/client/endpoint/PropertiesEndpointGroup.java index 40539aa67db..59bcca7b9aa 100644 --- a/core/src/main/java/com/linecorp/armeria/client/endpoint/PropertiesEndpointGroup.java +++ b/core/src/main/java/com/linecorp/armeria/client/endpoint/PropertiesEndpointGroup.java @@ -27,12 +27,13 @@ import java.util.Properties; import java.util.concurrent.CompletableFuture; +import org.jspecify.annotations.Nullable; + import com.google.common.annotations.VisibleForTesting; import com.google.common.collect.ImmutableList; import com.linecorp.armeria.client.Endpoint; import com.linecorp.armeria.client.endpoint.FileWatcherRegistry.FileWatchRegisterKey; -import com.linecorp.armeria.common.annotation.Nullable; /** * A {@link Properties} backed {@link EndpointGroup}. The list of {@link Endpoint}s are loaded from the diff --git a/core/src/main/java/com/linecorp/armeria/client/endpoint/PropertiesEndpointGroupBuilder.java b/core/src/main/java/com/linecorp/armeria/client/endpoint/PropertiesEndpointGroupBuilder.java index 697a89c3e0b..4a2e941dce8 100644 --- a/core/src/main/java/com/linecorp/armeria/client/endpoint/PropertiesEndpointGroupBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/client/endpoint/PropertiesEndpointGroupBuilder.java @@ -27,10 +27,11 @@ import java.util.Map.Entry; import java.util.Properties; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.linecorp.armeria.client.Endpoint; -import com.linecorp.armeria.common.annotation.Nullable; /** * Builds a {@link PropertiesEndpointGroup}. diff --git a/core/src/main/java/com/linecorp/armeria/client/endpoint/RestartableThread.java b/core/src/main/java/com/linecorp/armeria/client/endpoint/RestartableThread.java index 8c3ba52104a..a7090e034c7 100644 --- a/core/src/main/java/com/linecorp/armeria/client/endpoint/RestartableThread.java +++ b/core/src/main/java/com/linecorp/armeria/client/endpoint/RestartableThread.java @@ -21,7 +21,8 @@ import java.util.concurrent.locks.ReentrantLock; import java.util.function.Supplier; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.internal.common.util.ReentrantShortLock; /** diff --git a/core/src/main/java/com/linecorp/armeria/client/endpoint/RoundRobinStrategy.java b/core/src/main/java/com/linecorp/armeria/client/endpoint/RoundRobinStrategy.java index ff87f4a8875..470240d643d 100644 --- a/core/src/main/java/com/linecorp/armeria/client/endpoint/RoundRobinStrategy.java +++ b/core/src/main/java/com/linecorp/armeria/client/endpoint/RoundRobinStrategy.java @@ -18,10 +18,11 @@ import java.util.List; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.client.Endpoint; import com.linecorp.armeria.client.endpoint.DefaultEndpointSelector.LoadBalancerFactory; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.loadbalancer.LoadBalancer; enum RoundRobinStrategy diff --git a/core/src/main/java/com/linecorp/armeria/client/endpoint/StickyEndpointSelectionStrategy.java b/core/src/main/java/com/linecorp/armeria/client/endpoint/StickyEndpointSelectionStrategy.java index ff639161c6f..13a2b7975e3 100644 --- a/core/src/main/java/com/linecorp/armeria/client/endpoint/StickyEndpointSelectionStrategy.java +++ b/core/src/main/java/com/linecorp/armeria/client/endpoint/StickyEndpointSelectionStrategy.java @@ -20,11 +20,12 @@ import java.util.List; import java.util.function.ToLongFunction; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.client.Endpoint; import com.linecorp.armeria.client.endpoint.DefaultEndpointSelector.LoadBalancerFactory; import com.linecorp.armeria.common.HttpRequest; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.loadbalancer.LoadBalancer; /** diff --git a/core/src/main/java/com/linecorp/armeria/client/endpoint/WeightRampingUpStrategy.java b/core/src/main/java/com/linecorp/armeria/client/endpoint/WeightRampingUpStrategy.java index 138fcd44f0b..6cc6ed9c71b 100644 --- a/core/src/main/java/com/linecorp/armeria/client/endpoint/WeightRampingUpStrategy.java +++ b/core/src/main/java/com/linecorp/armeria/client/endpoint/WeightRampingUpStrategy.java @@ -22,10 +22,11 @@ import java.util.function.Function; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.client.Endpoint; import com.linecorp.armeria.client.endpoint.DefaultEndpointSelector.LoadBalancerFactory; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.loadbalancer.LoadBalancer; import com.linecorp.armeria.common.loadbalancer.UpdatableLoadBalancer; import com.linecorp.armeria.common.loadbalancer.WeightTransition; diff --git a/core/src/main/java/com/linecorp/armeria/client/endpoint/WeightRampingUpStrategyBuilder.java b/core/src/main/java/com/linecorp/armeria/client/endpoint/WeightRampingUpStrategyBuilder.java index 8cd7c9a6567..80d8b82993b 100644 --- a/core/src/main/java/com/linecorp/armeria/client/endpoint/WeightRampingUpStrategyBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/client/endpoint/WeightRampingUpStrategyBuilder.java @@ -21,9 +21,10 @@ import java.util.function.Function; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.Endpoint; import com.linecorp.armeria.common.CommonPools; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.loadbalancer.AbstractRampingUpLoadBalancerBuilder; import com.linecorp.armeria.common.loadbalancer.WeightTransition; diff --git a/core/src/main/java/com/linecorp/armeria/client/endpoint/WeightedRoundRobinStrategy.java b/core/src/main/java/com/linecorp/armeria/client/endpoint/WeightedRoundRobinStrategy.java index 873130a7720..ca4ab1167f0 100644 --- a/core/src/main/java/com/linecorp/armeria/client/endpoint/WeightedRoundRobinStrategy.java +++ b/core/src/main/java/com/linecorp/armeria/client/endpoint/WeightedRoundRobinStrategy.java @@ -18,10 +18,11 @@ import java.util.List; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.client.Endpoint; import com.linecorp.armeria.client.endpoint.DefaultEndpointSelector.LoadBalancerFactory; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.loadbalancer.LoadBalancer; enum WeightedRoundRobinStrategy diff --git a/core/src/main/java/com/linecorp/armeria/client/endpoint/dns/DnsAddressEndpointGroup.java b/core/src/main/java/com/linecorp/armeria/client/endpoint/dns/DnsAddressEndpointGroup.java index fa961308957..98a57b21142 100644 --- a/core/src/main/java/com/linecorp/armeria/client/endpoint/dns/DnsAddressEndpointGroup.java +++ b/core/src/main/java/com/linecorp/armeria/client/endpoint/dns/DnsAddressEndpointGroup.java @@ -20,6 +20,8 @@ import java.util.List; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSortedSet; @@ -28,7 +30,6 @@ import com.linecorp.armeria.client.endpoint.EndpointSelectionStrategy; import com.linecorp.armeria.client.retry.Backoff; import com.linecorp.armeria.common.CommonPools; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.SystemInfo; import com.linecorp.armeria.internal.client.dns.ByteArrayDnsRecord; import com.linecorp.armeria.internal.client.dns.DefaultDnsResolver; diff --git a/core/src/main/java/com/linecorp/armeria/client/endpoint/dns/DnsAddressEndpointGroupBuilder.java b/core/src/main/java/com/linecorp/armeria/client/endpoint/dns/DnsAddressEndpointGroupBuilder.java index c907a02fa54..12ff8f0dea1 100644 --- a/core/src/main/java/com/linecorp/armeria/client/endpoint/dns/DnsAddressEndpointGroupBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/client/endpoint/dns/DnsAddressEndpointGroupBuilder.java @@ -17,10 +17,11 @@ import static com.google.common.base.Preconditions.checkArgument; +import org.jspecify.annotations.Nullable; + import com.google.common.annotations.VisibleForTesting; import com.linecorp.armeria.client.Endpoint; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.client.dns.DefaultDnsResolver; import io.netty.channel.EventLoop; diff --git a/core/src/main/java/com/linecorp/armeria/client/endpoint/dns/DnsEndpointGroup.java b/core/src/main/java/com/linecorp/armeria/client/endpoint/dns/DnsEndpointGroup.java index aeee34feaf7..370617c2f90 100644 --- a/core/src/main/java/com/linecorp/armeria/client/endpoint/dns/DnsEndpointGroup.java +++ b/core/src/main/java/com/linecorp/armeria/client/endpoint/dns/DnsEndpointGroup.java @@ -24,6 +24,7 @@ import java.util.concurrent.TimeUnit; import java.util.stream.Collectors; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -36,7 +37,6 @@ import com.linecorp.armeria.client.endpoint.DynamicEndpointGroup; import com.linecorp.armeria.client.endpoint.EndpointSelectionStrategy; import com.linecorp.armeria.client.retry.Backoff; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.client.dns.DefaultDnsResolver; import com.linecorp.armeria.internal.client.dns.DnsQuestionWithoutTrailingDot; import com.linecorp.armeria.internal.client.dns.DnsUtil; diff --git a/core/src/main/java/com/linecorp/armeria/client/endpoint/dns/DnsEndpointGroupBuilder.java b/core/src/main/java/com/linecorp/armeria/client/endpoint/dns/DnsEndpointGroupBuilder.java index cca0945a26c..26381991d63 100644 --- a/core/src/main/java/com/linecorp/armeria/client/endpoint/dns/DnsEndpointGroupBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/client/endpoint/dns/DnsEndpointGroupBuilder.java @@ -25,6 +25,8 @@ import java.util.List; import java.util.function.Consumer; +import org.jspecify.annotations.Nullable; + import com.google.common.base.Ascii; import com.google.common.collect.ImmutableList; @@ -35,7 +37,6 @@ import com.linecorp.armeria.client.endpoint.EndpointSelectionStrategy; import com.linecorp.armeria.client.retry.Backoff; import com.linecorp.armeria.common.CommonPools; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.util.TransportType; import com.linecorp.armeria.internal.client.dns.DefaultDnsResolver; diff --git a/core/src/main/java/com/linecorp/armeria/client/endpoint/dns/DnsTextEndpointGroup.java b/core/src/main/java/com/linecorp/armeria/client/endpoint/dns/DnsTextEndpointGroup.java index 4b9ef114558..48560f6ded3 100644 --- a/core/src/main/java/com/linecorp/armeria/client/endpoint/dns/DnsTextEndpointGroup.java +++ b/core/src/main/java/com/linecorp/armeria/client/endpoint/dns/DnsTextEndpointGroup.java @@ -19,6 +19,8 @@ import java.util.List; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSortedSet; @@ -27,7 +29,6 @@ import com.linecorp.armeria.client.endpoint.EndpointSelectionStrategy; import com.linecorp.armeria.client.retry.Backoff; import com.linecorp.armeria.common.CommonPools; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.client.dns.ByteArrayDnsRecord; import com.linecorp.armeria.internal.client.dns.DefaultDnsResolver; import com.linecorp.armeria.internal.client.dns.DnsQuestionWithoutTrailingDot; diff --git a/core/src/main/java/com/linecorp/armeria/client/endpoint/dns/DnsTextEndpointGroupBuilder.java b/core/src/main/java/com/linecorp/armeria/client/endpoint/dns/DnsTextEndpointGroupBuilder.java index c18de6d94f0..916932d214b 100644 --- a/core/src/main/java/com/linecorp/armeria/client/endpoint/dns/DnsTextEndpointGroupBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/client/endpoint/dns/DnsTextEndpointGroupBuilder.java @@ -19,8 +19,9 @@ import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.Endpoint; -import com.linecorp.armeria.common.annotation.Nullable; import io.netty.channel.EventLoop; diff --git a/core/src/main/java/com/linecorp/armeria/client/endpoint/dns/package-info.java b/core/src/main/java/com/linecorp/armeria/client/endpoint/dns/package-info.java index 268649dfa17..489d9c8e258 100644 --- a/core/src/main/java/com/linecorp/armeria/client/endpoint/dns/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/client/endpoint/dns/package-info.java @@ -17,7 +17,7 @@ /** * DNS-based {@link com.linecorp.armeria.client.endpoint.EndpointGroup} implementation. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.client.endpoint.dns; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/client/endpoint/healthcheck/AbstractHealthCheckedEndpointGroupBuilder.java b/core/src/main/java/com/linecorp/armeria/client/endpoint/healthcheck/AbstractHealthCheckedEndpointGroupBuilder.java index 48e5f2b8188..dbf5d151dea 100644 --- a/core/src/main/java/com/linecorp/armeria/client/endpoint/healthcheck/AbstractHealthCheckedEndpointGroupBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/client/endpoint/healthcheck/AbstractHealthCheckedEndpointGroupBuilder.java @@ -25,6 +25,8 @@ import java.util.function.Function; import java.util.function.Predicate; +import org.jspecify.annotations.Nullable; + import com.google.common.annotations.VisibleForTesting; import com.google.common.math.LongMath; @@ -41,7 +43,6 @@ import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.auth.AuthToken; import com.linecorp.armeria.common.util.AsyncCloseable; diff --git a/core/src/main/java/com/linecorp/armeria/client/endpoint/healthcheck/DefaultHealthCheckerContext.java b/core/src/main/java/com/linecorp/armeria/client/endpoint/healthcheck/DefaultHealthCheckerContext.java index 7c7e9ea5ff2..17ccd806d00 100644 --- a/core/src/main/java/com/linecorp/armeria/client/endpoint/healthcheck/DefaultHealthCheckerContext.java +++ b/core/src/main/java/com/linecorp/armeria/client/endpoint/healthcheck/DefaultHealthCheckerContext.java @@ -31,6 +31,8 @@ import java.util.concurrent.locks.ReentrantLock; import java.util.function.BiConsumer; +import org.jspecify.annotations.Nullable; + import com.google.common.annotations.VisibleForTesting; import com.google.common.base.MoreObjects; import com.google.common.collect.ImmutableList; @@ -44,7 +46,6 @@ import com.linecorp.armeria.common.Attributes; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.AsyncCloseable; import com.linecorp.armeria.common.util.EventLoopCheckingFuture; import com.linecorp.armeria.internal.common.util.ReentrantShortLock; diff --git a/core/src/main/java/com/linecorp/armeria/client/endpoint/healthcheck/HealthCheckContextGroup.java b/core/src/main/java/com/linecorp/armeria/client/endpoint/healthcheck/HealthCheckContextGroup.java index 3746efeb9db..a24bc60cf07 100644 --- a/core/src/main/java/com/linecorp/armeria/client/endpoint/healthcheck/HealthCheckContextGroup.java +++ b/core/src/main/java/com/linecorp/armeria/client/endpoint/healthcheck/HealthCheckContextGroup.java @@ -24,10 +24,11 @@ import java.util.concurrent.CompletableFuture; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.linecorp.armeria.client.Endpoint; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.AsyncCloseable; import com.linecorp.armeria.common.util.Exceptions; diff --git a/core/src/main/java/com/linecorp/armeria/client/endpoint/healthcheck/HealthCheckedEndpointGroup.java b/core/src/main/java/com/linecorp/armeria/client/endpoint/healthcheck/HealthCheckedEndpointGroup.java index a83597ec653..85d0a67279a 100644 --- a/core/src/main/java/com/linecorp/armeria/client/endpoint/healthcheck/HealthCheckedEndpointGroup.java +++ b/core/src/main/java/com/linecorp/armeria/client/endpoint/healthcheck/HealthCheckedEndpointGroup.java @@ -36,6 +36,7 @@ import java.util.function.Predicate; import java.util.stream.Collectors; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -51,7 +52,6 @@ import com.linecorp.armeria.client.endpoint.EndpointGroup; import com.linecorp.armeria.client.retry.Backoff; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.metric.MeterIdPrefix; import com.linecorp.armeria.common.util.AsyncCloseable; import com.linecorp.armeria.internal.common.util.ReentrantShortLock; diff --git a/core/src/main/java/com/linecorp/armeria/client/endpoint/healthcheck/HealthCheckerContext.java b/core/src/main/java/com/linecorp/armeria/client/endpoint/healthcheck/HealthCheckerContext.java index 22e365844bf..22ff0d84fb2 100644 --- a/core/src/main/java/com/linecorp/armeria/client/endpoint/healthcheck/HealthCheckerContext.java +++ b/core/src/main/java/com/linecorp/armeria/client/endpoint/healthcheck/HealthCheckerContext.java @@ -18,13 +18,14 @@ import java.util.concurrent.ExecutorService; import java.util.concurrent.ScheduledExecutorService; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.Client; import com.linecorp.armeria.client.ClientOptions; import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.client.Endpoint; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/client/endpoint/healthcheck/PartialHealthCheckStrategyBuilder.java b/core/src/main/java/com/linecorp/armeria/client/endpoint/healthcheck/PartialHealthCheckStrategyBuilder.java index e8a4a5b2e40..6e6d1699afc 100644 --- a/core/src/main/java/com/linecorp/armeria/client/endpoint/healthcheck/PartialHealthCheckStrategyBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/client/endpoint/healthcheck/PartialHealthCheckStrategyBuilder.java @@ -17,8 +17,9 @@ import static com.google.common.base.Preconditions.checkArgument; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.endpoint.healthcheck.PartialHealthCheckStrategy.EndpointLimitingFunction; -import com.linecorp.armeria.common.annotation.Nullable; /** * A builder for creating a new {@link PartialHealthCheckStrategy}. diff --git a/core/src/main/java/com/linecorp/armeria/client/endpoint/healthcheck/package-info.java b/core/src/main/java/com/linecorp/armeria/client/endpoint/healthcheck/package-info.java index 218a9aceea3..0de1cbf2e21 100644 --- a/core/src/main/java/com/linecorp/armeria/client/endpoint/healthcheck/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/client/endpoint/healthcheck/package-info.java @@ -18,7 +18,7 @@ * Filters out unhealthy {@link com.linecorp.armeria.client.Endpoint}s from an existing * {@link com.linecorp.armeria.client.endpoint.EndpointGroup} by sending health check requests. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.client.endpoint.healthcheck; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/client/endpoint/package-info.java b/core/src/main/java/com/linecorp/armeria/client/endpoint/package-info.java index bd250b821c4..35103d22da2 100644 --- a/core/src/main/java/com/linecorp/armeria/client/endpoint/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/client/endpoint/package-info.java @@ -22,7 +22,7 @@ *
  • {@link com.linecorp.armeria.client.endpoint.EndpointGroup}
  • * */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.client.endpoint; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/client/limit/DefaultConcurrencyLimit.java b/core/src/main/java/com/linecorp/armeria/client/limit/DefaultConcurrencyLimit.java index 567c8a27144..ee68233a8aa 100644 --- a/core/src/main/java/com/linecorp/armeria/client/limit/DefaultConcurrencyLimit.java +++ b/core/src/main/java/com/linecorp/armeria/client/limit/DefaultConcurrencyLimit.java @@ -28,6 +28,7 @@ import java.util.function.IntSupplier; import java.util.function.Predicate; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -36,7 +37,6 @@ import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.common.ContextAwareEventLoop; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.SafeCloseable; import com.linecorp.armeria.common.util.UnmodifiableFuture; diff --git a/core/src/main/java/com/linecorp/armeria/client/limit/package-info.java b/core/src/main/java/com/linecorp/armeria/client/limit/package-info.java index bd583f73cdf..269e9ac7aac 100644 --- a/core/src/main/java/com/linecorp/armeria/client/limit/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/client/limit/package-info.java @@ -16,7 +16,7 @@ /** * Limits the number of executed {@link com.linecorp.armeria.common.Request}s. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.client.limit; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/client/logging/ContentPreviewingClient.java b/core/src/main/java/com/linecorp/armeria/client/logging/ContentPreviewingClient.java index dae5137558b..6ab1194194b 100644 --- a/core/src/main/java/com/linecorp/armeria/client/logging/ContentPreviewingClient.java +++ b/core/src/main/java/com/linecorp/armeria/client/logging/ContentPreviewingClient.java @@ -24,6 +24,8 @@ import java.util.function.BiFunction; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.client.HttpClient; import com.linecorp.armeria.client.SimpleDecoratingHttpClient; @@ -34,7 +36,6 @@ import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.Response; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.ContentPreviewer; import com.linecorp.armeria.common.logging.ContentPreviewerFactory; import com.linecorp.armeria.common.logging.RequestLog; diff --git a/core/src/main/java/com/linecorp/armeria/client/logging/ContentPreviewingClientBuilder.java b/core/src/main/java/com/linecorp/armeria/client/logging/ContentPreviewingClientBuilder.java index 48081ef920c..4316c117727 100644 --- a/core/src/main/java/com/linecorp/armeria/client/logging/ContentPreviewingClientBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/client/logging/ContentPreviewingClientBuilder.java @@ -21,9 +21,10 @@ import java.util.function.BiFunction; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.HttpClient; import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.ContentPreviewerFactory; import com.linecorp.armeria.common.util.Functions; diff --git a/core/src/main/java/com/linecorp/armeria/client/logging/LoggingClientBuilder.java b/core/src/main/java/com/linecorp/armeria/client/logging/LoggingClientBuilder.java index 0f098152b3a..5de1383b662 100644 --- a/core/src/main/java/com/linecorp/armeria/client/logging/LoggingClientBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/client/logging/LoggingClientBuilder.java @@ -19,6 +19,7 @@ import java.util.function.Function; import java.util.function.Predicate; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import com.linecorp.armeria.client.ClientRequestContext; @@ -27,7 +28,6 @@ import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.HttpStatusClass; import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.LogLevel; import com.linecorp.armeria.common.logging.LogWriter; import com.linecorp.armeria.common.logging.RequestLog; diff --git a/core/src/main/java/com/linecorp/armeria/client/logging/LoggingRpcClientBuilder.java b/core/src/main/java/com/linecorp/armeria/client/logging/LoggingRpcClientBuilder.java index 607f71765f0..53d0a29cfa9 100644 --- a/core/src/main/java/com/linecorp/armeria/client/logging/LoggingRpcClientBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/client/logging/LoggingRpcClientBuilder.java @@ -19,6 +19,7 @@ import java.util.function.Function; import java.util.function.Predicate; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import com.linecorp.armeria.client.ClientRequestContext; @@ -27,7 +28,6 @@ import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.HttpStatusClass; import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.LogLevel; import com.linecorp.armeria.common.logging.LogWriter; import com.linecorp.armeria.common.logging.RequestLog; diff --git a/core/src/main/java/com/linecorp/armeria/client/logging/package-info.java b/core/src/main/java/com/linecorp/armeria/client/logging/package-info.java index 806c8e3760d..667f15c5bfb 100644 --- a/core/src/main/java/com/linecorp/armeria/client/logging/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/client/logging/package-info.java @@ -17,7 +17,7 @@ /** * Logging client decorators. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.client.logging; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/client/metric/AbstractMetricCollectingClient.java b/core/src/main/java/com/linecorp/armeria/client/metric/AbstractMetricCollectingClient.java index a68054271e3..2f6f548d24a 100644 --- a/core/src/main/java/com/linecorp/armeria/client/metric/AbstractMetricCollectingClient.java +++ b/core/src/main/java/com/linecorp/armeria/client/metric/AbstractMetricCollectingClient.java @@ -19,13 +19,14 @@ import java.util.function.BiPredicate; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.Client; import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.client.SimpleDecoratingClient; import com.linecorp.armeria.common.Request; import com.linecorp.armeria.common.RequestContext; import com.linecorp.armeria.common.Response; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.metric.MeterIdPrefixFunction; import com.linecorp.armeria.internal.common.metric.RequestMetricSupport; diff --git a/core/src/main/java/com/linecorp/armeria/client/metric/MetricCollectingClient.java b/core/src/main/java/com/linecorp/armeria/client/metric/MetricCollectingClient.java index 59337abcb02..92e5690633d 100644 --- a/core/src/main/java/com/linecorp/armeria/client/metric/MetricCollectingClient.java +++ b/core/src/main/java/com/linecorp/armeria/client/metric/MetricCollectingClient.java @@ -20,11 +20,12 @@ import java.util.function.BiPredicate; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.HttpClient; import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.metric.MeterIdPrefixFunction; diff --git a/core/src/main/java/com/linecorp/armeria/client/metric/MetricCollectingRpcClient.java b/core/src/main/java/com/linecorp/armeria/client/metric/MetricCollectingRpcClient.java index 727cfbc408e..174e38be2f8 100644 --- a/core/src/main/java/com/linecorp/armeria/client/metric/MetricCollectingRpcClient.java +++ b/core/src/main/java/com/linecorp/armeria/client/metric/MetricCollectingRpcClient.java @@ -20,11 +20,12 @@ import java.util.function.BiPredicate; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.RpcClient; import com.linecorp.armeria.common.RequestContext; import com.linecorp.armeria.common.RpcRequest; import com.linecorp.armeria.common.RpcResponse; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.metric.MeterIdPrefixFunction; diff --git a/core/src/main/java/com/linecorp/armeria/client/metric/package-info.java b/core/src/main/java/com/linecorp/armeria/client/metric/package-info.java index 5ec35186cf1..67bfda3de43 100644 --- a/core/src/main/java/com/linecorp/armeria/client/metric/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/client/metric/package-info.java @@ -17,7 +17,7 @@ /** * Metric-collecting client decorators. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.client.metric; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/client/observation/DefaultHttpClientObservationConvention.java b/core/src/main/java/com/linecorp/armeria/client/observation/DefaultHttpClientObservationConvention.java index 68c16b9b1bc..1c53b31ba98 100644 --- a/core/src/main/java/com/linecorp/armeria/client/observation/DefaultHttpClientObservationConvention.java +++ b/core/src/main/java/com/linecorp/armeria/client/observation/DefaultHttpClientObservationConvention.java @@ -20,6 +20,8 @@ import java.net.InetSocketAddress; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.linecorp.armeria.client.ClientRequestContext; @@ -27,7 +29,6 @@ import com.linecorp.armeria.client.observation.HttpClientObservationDocumentation.LowCardinalityKeys; import com.linecorp.armeria.common.SerializationFormat; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.logging.RequestLogAccess; import com.linecorp.armeria.common.logging.RequestLogProperty; diff --git a/core/src/main/java/com/linecorp/armeria/client/observation/ObservationClient.java b/core/src/main/java/com/linecorp/armeria/client/observation/ObservationClient.java index 21da214ee71..63e1fefd1f8 100644 --- a/core/src/main/java/com/linecorp/armeria/client/observation/ObservationClient.java +++ b/core/src/main/java/com/linecorp/armeria/client/observation/ObservationClient.java @@ -20,6 +20,8 @@ import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.client.HttpClient; import com.linecorp.armeria.client.SimpleDecoratingHttpClient; @@ -27,7 +29,6 @@ import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.RequestHeadersBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.internal.common.RequestContextExtension; import com.linecorp.armeria.server.observation.ObservationService; diff --git a/core/src/main/java/com/linecorp/armeria/client/observation/package-info.java b/core/src/main/java/com/linecorp/armeria/client/observation/package-info.java index eae4ef33f51..cdc12b08238 100644 --- a/core/src/main/java/com/linecorp/armeria/client/observation/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/client/observation/package-info.java @@ -18,8 +18,9 @@ * Observation basing on Micrometer Observation. */ @UnstableApi -@NonNullByDefault +@NullMarked package com.linecorp.armeria.client.observation; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/core/src/main/java/com/linecorp/armeria/client/package-info.java b/core/src/main/java/com/linecorp/armeria/client/package-info.java index 77b6c6b2e78..161d101b8e5 100644 --- a/core/src/main/java/com/linecorp/armeria/client/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/client/package-info.java @@ -23,7 +23,7 @@ *
  • {@link com.linecorp.armeria.client.ClientBuilder}
  • * */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.client; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/client/proxy/ConnectProxyConfig.java b/core/src/main/java/com/linecorp/armeria/client/proxy/ConnectProxyConfig.java index 7cb08d5dda2..7d5f870ad19 100644 --- a/core/src/main/java/com/linecorp/armeria/client/proxy/ConnectProxyConfig.java +++ b/core/src/main/java/com/linecorp/armeria/client/proxy/ConnectProxyConfig.java @@ -19,10 +19,11 @@ import java.net.InetSocketAddress; import java.util.Objects; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.linecorp.armeria.common.HttpHeaders; -import com.linecorp.armeria.common.annotation.Nullable; /** * CONNECT proxy configuration. diff --git a/core/src/main/java/com/linecorp/armeria/client/proxy/DirectProxyConfig.java b/core/src/main/java/com/linecorp/armeria/client/proxy/DirectProxyConfig.java index 7eb33e83ee0..e91176111f8 100644 --- a/core/src/main/java/com/linecorp/armeria/client/proxy/DirectProxyConfig.java +++ b/core/src/main/java/com/linecorp/armeria/client/proxy/DirectProxyConfig.java @@ -18,7 +18,7 @@ import java.net.InetSocketAddress; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * Represents a direct connection without a proxy. diff --git a/core/src/main/java/com/linecorp/armeria/client/proxy/HAProxyConfig.java b/core/src/main/java/com/linecorp/armeria/client/proxy/HAProxyConfig.java index 2633755e043..0a33daf7d06 100644 --- a/core/src/main/java/com/linecorp/armeria/client/proxy/HAProxyConfig.java +++ b/core/src/main/java/com/linecorp/armeria/client/proxy/HAProxyConfig.java @@ -22,9 +22,10 @@ import java.net.InetSocketAddress; import java.util.Objects; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.ServiceRequestContext; /** diff --git a/core/src/main/java/com/linecorp/armeria/client/proxy/ProxyConfig.java b/core/src/main/java/com/linecorp/armeria/client/proxy/ProxyConfig.java index e26c2590b01..def7b5a3c46 100644 --- a/core/src/main/java/com/linecorp/armeria/client/proxy/ProxyConfig.java +++ b/core/src/main/java/com/linecorp/armeria/client/proxy/ProxyConfig.java @@ -22,9 +22,10 @@ import java.net.InetSocketAddress; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.ClientFactory; import com.linecorp.armeria.common.HttpHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.server.ServiceRequestContext; diff --git a/core/src/main/java/com/linecorp/armeria/client/proxy/Socks4ProxyConfig.java b/core/src/main/java/com/linecorp/armeria/client/proxy/Socks4ProxyConfig.java index d8f76ef6fa5..5e99d6e4f54 100644 --- a/core/src/main/java/com/linecorp/armeria/client/proxy/Socks4ProxyConfig.java +++ b/core/src/main/java/com/linecorp/armeria/client/proxy/Socks4ProxyConfig.java @@ -19,9 +19,9 @@ import java.net.InetSocketAddress; import java.util.Objects; -import com.google.common.base.MoreObjects; +import org.jspecify.annotations.Nullable; -import com.linecorp.armeria.common.annotation.Nullable; +import com.google.common.base.MoreObjects; /** * SOCKS4 proxy configuration. diff --git a/core/src/main/java/com/linecorp/armeria/client/proxy/Socks5ProxyConfig.java b/core/src/main/java/com/linecorp/armeria/client/proxy/Socks5ProxyConfig.java index b100ff90439..dbf68578810 100644 --- a/core/src/main/java/com/linecorp/armeria/client/proxy/Socks5ProxyConfig.java +++ b/core/src/main/java/com/linecorp/armeria/client/proxy/Socks5ProxyConfig.java @@ -19,9 +19,9 @@ import java.net.InetSocketAddress; import java.util.Objects; -import com.google.common.base.MoreObjects; +import org.jspecify.annotations.Nullable; -import com.linecorp.armeria.common.annotation.Nullable; +import com.google.common.base.MoreObjects; /** * SOCKS5 proxy configuration. diff --git a/core/src/main/java/com/linecorp/armeria/client/proxy/WrappingProxyConfigSelector.java b/core/src/main/java/com/linecorp/armeria/client/proxy/WrappingProxyConfigSelector.java index 2795da54963..dff392d2066 100644 --- a/core/src/main/java/com/linecorp/armeria/client/proxy/WrappingProxyConfigSelector.java +++ b/core/src/main/java/com/linecorp/armeria/client/proxy/WrappingProxyConfigSelector.java @@ -27,12 +27,12 @@ import java.net.URISyntaxException; import java.util.List; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.linecorp.armeria.client.Endpoint; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; /** * See {@link ProxyConfigSelector#of(ProxySelector)} for more information. diff --git a/core/src/main/java/com/linecorp/armeria/client/proxy/package-info.java b/core/src/main/java/com/linecorp/armeria/client/proxy/package-info.java index 0e46294c38f..c582551f09f 100644 --- a/core/src/main/java/com/linecorp/armeria/client/proxy/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/client/proxy/package-info.java @@ -17,7 +17,7 @@ /** * Proxy configuration. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.client.proxy; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/client/redirect/RedirectConfig.java b/core/src/main/java/com/linecorp/armeria/client/redirect/RedirectConfig.java index dd501690415..3101e1cc6ff 100644 --- a/core/src/main/java/com/linecorp/armeria/client/redirect/RedirectConfig.java +++ b/core/src/main/java/com/linecorp/armeria/client/redirect/RedirectConfig.java @@ -21,9 +21,10 @@ import java.util.Set; import java.util.function.BiPredicate; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/client/redirect/RedirectConfigBuilder.java b/core/src/main/java/com/linecorp/armeria/client/redirect/RedirectConfigBuilder.java index 1d1cfccef57..5effbcce804 100644 --- a/core/src/main/java/com/linecorp/armeria/client/redirect/RedirectConfigBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/client/redirect/RedirectConfigBuilder.java @@ -24,6 +24,8 @@ import java.util.Set; import java.util.function.BiPredicate; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; @@ -31,7 +33,6 @@ import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.client.WebClient; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/client/redirect/RedirectsException.java b/core/src/main/java/com/linecorp/armeria/client/redirect/RedirectsException.java index c98c4a4c647..7905dd3d455 100644 --- a/core/src/main/java/com/linecorp/armeria/client/redirect/RedirectsException.java +++ b/core/src/main/java/com/linecorp/armeria/client/redirect/RedirectsException.java @@ -15,7 +15,8 @@ */ package com.linecorp.armeria.client.redirect; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/client/redirect/package-info.java b/core/src/main/java/com/linecorp/armeria/client/redirect/package-info.java index 92e858ee40f..67ad3d5ad92 100644 --- a/core/src/main/java/com/linecorp/armeria/client/redirect/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/client/redirect/package-info.java @@ -17,7 +17,7 @@ /** * automatic redirection. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.client.redirect; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/client/retry/AbstractBackoffBuilder.java b/core/src/main/java/com/linecorp/armeria/client/retry/AbstractBackoffBuilder.java index c2c194f1d05..29abcc1c31c 100644 --- a/core/src/main/java/com/linecorp/armeria/client/retry/AbstractBackoffBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/client/retry/AbstractBackoffBuilder.java @@ -21,7 +21,7 @@ import java.util.concurrent.ThreadLocalRandom; import java.util.function.Supplier; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * A skeletal builder implementation for {@link Backoff}. diff --git a/core/src/main/java/com/linecorp/armeria/client/retry/AbstractRetryingClient.java b/core/src/main/java/com/linecorp/armeria/client/retry/AbstractRetryingClient.java index e8e5cc277e3..aaade35dde7 100644 --- a/core/src/main/java/com/linecorp/armeria/client/retry/AbstractRetryingClient.java +++ b/core/src/main/java/com/linecorp/armeria/client/retry/AbstractRetryingClient.java @@ -21,6 +21,7 @@ import java.util.concurrent.TimeUnit; import java.util.function.Consumer; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -34,7 +35,6 @@ import com.linecorp.armeria.common.Request; import com.linecorp.armeria.common.Response; import com.linecorp.armeria.common.RpcRequest; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.TimeoutMode; import com.linecorp.armeria.internal.client.ClientUtil; diff --git a/core/src/main/java/com/linecorp/armeria/client/retry/AbstractRetryingClientBuilder.java b/core/src/main/java/com/linecorp/armeria/client/retry/AbstractRetryingClientBuilder.java index 75553cdc940..023dd78bef5 100644 --- a/core/src/main/java/com/linecorp/armeria/client/retry/AbstractRetryingClientBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/client/retry/AbstractRetryingClientBuilder.java @@ -22,13 +22,14 @@ import java.time.Duration; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.google.common.base.MoreObjects.ToStringHelper; import com.linecorp.armeria.client.Client; import com.linecorp.armeria.common.Flags; import com.linecorp.armeria.common.Response; -import com.linecorp.armeria.common.annotation.Nullable; /** * Builds a new {@link AbstractRetryingClient} or its decorator function. diff --git a/core/src/main/java/com/linecorp/armeria/client/retry/Backoff.java b/core/src/main/java/com/linecorp/armeria/client/retry/Backoff.java index 5b8a289fd33..3b28c3ab663 100644 --- a/core/src/main/java/com/linecorp/armeria/client/retry/Backoff.java +++ b/core/src/main/java/com/linecorp/armeria/client/retry/Backoff.java @@ -23,8 +23,9 @@ import java.util.concurrent.ThreadLocalRandom; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.Flags; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.util.Unwrappable; diff --git a/core/src/main/java/com/linecorp/armeria/client/retry/BackoffSpec.java b/core/src/main/java/com/linecorp/armeria/client/retry/BackoffSpec.java index 0a9639aad99..54ebc9a04c5 100644 --- a/core/src/main/java/com/linecorp/armeria/client/retry/BackoffSpec.java +++ b/core/src/main/java/com/linecorp/armeria/client/retry/BackoffSpec.java @@ -21,6 +21,8 @@ import java.util.List; +import org.jspecify.annotations.Nullable; + import com.google.common.annotations.VisibleForTesting; import com.google.common.base.Ascii; import com.google.common.base.MoreObjects; @@ -28,8 +30,6 @@ import com.google.common.base.Splitter; import com.google.common.collect.ImmutableList; -import com.linecorp.armeria.common.annotation.Nullable; - /** * A specification of a {@link Backoff} configuration represented by a string. The string syntax is * a series of comma-separated options(key-values pair) and each values is colon-separated. diff --git a/core/src/main/java/com/linecorp/armeria/client/retry/RetryConfig.java b/core/src/main/java/com/linecorp/armeria/client/retry/RetryConfig.java index 44d953668b5..d36bfd28df2 100644 --- a/core/src/main/java/com/linecorp/armeria/client/retry/RetryConfig.java +++ b/core/src/main/java/com/linecorp/armeria/client/retry/RetryConfig.java @@ -19,13 +19,13 @@ import static com.google.common.base.Preconditions.checkArgument; import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.Response; import com.linecorp.armeria.common.RpcResponse; -import com.linecorp.armeria.common.annotation.Nullable; /** * Holds retry config used by a {@link RetryingClient}. diff --git a/core/src/main/java/com/linecorp/armeria/client/retry/RetryConfigBuilder.java b/core/src/main/java/com/linecorp/armeria/client/retry/RetryConfigBuilder.java index 5d759e93fcf..5543d37f461 100644 --- a/core/src/main/java/com/linecorp/armeria/client/retry/RetryConfigBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/client/retry/RetryConfigBuilder.java @@ -21,13 +21,14 @@ import java.time.Duration; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.google.common.base.MoreObjects.ToStringHelper; import com.linecorp.armeria.client.retry.RetryLimiters.AlwaysRetryLimiter; import com.linecorp.armeria.common.Flags; import com.linecorp.armeria.common.Response; -import com.linecorp.armeria.common.annotation.Nullable; /** * Builds a {@link RetryConfig}. diff --git a/core/src/main/java/com/linecorp/armeria/client/retry/RetryDecision.java b/core/src/main/java/com/linecorp/armeria/client/retry/RetryDecision.java index 44ae89d9e4e..e432a710f17 100644 --- a/core/src/main/java/com/linecorp/armeria/client/retry/RetryDecision.java +++ b/core/src/main/java/com/linecorp/armeria/client/retry/RetryDecision.java @@ -18,11 +18,11 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.google.common.base.MoreObjects.ToStringHelper; -import com.linecorp.armeria.common.annotation.Nullable; - /** * A {@link RetryDecision} that determines whether a {@link RetryRule} retries with a {@link Backoff}, * skips the current {@link RetryRule} or no retries. diff --git a/core/src/main/java/com/linecorp/armeria/client/retry/RetryRule.java b/core/src/main/java/com/linecorp/armeria/client/retry/RetryRule.java index f47aa032866..5c811c3e2bc 100644 --- a/core/src/main/java/com/linecorp/armeria/client/retry/RetryRule.java +++ b/core/src/main/java/com/linecorp/armeria/client/retry/RetryRule.java @@ -22,6 +22,8 @@ import java.util.concurrent.CompletionStage; import java.util.function.BiPredicate; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; import com.google.common.collect.Iterables; @@ -37,7 +39,6 @@ import com.linecorp.armeria.common.Response; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.TimeoutException; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/client/retry/RetryRuleBuilder.java b/core/src/main/java/com/linecorp/armeria/client/retry/RetryRuleBuilder.java index 4e230b0a23c..fba24aa9d52 100644 --- a/core/src/main/java/com/linecorp/armeria/client/retry/RetryRuleBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/client/retry/RetryRuleBuilder.java @@ -25,10 +25,11 @@ import java.util.function.BiFunction; import java.util.function.BiPredicate; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.AbstractRuleBuilder; import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.UnmodifiableFuture; import com.linecorp.armeria.internal.client.RuleFilter; diff --git a/core/src/main/java/com/linecorp/armeria/client/retry/RetryRuleUtil.java b/core/src/main/java/com/linecorp/armeria/client/retry/RetryRuleUtil.java index 5ab40a2eb77..b370f3fb0b2 100644 --- a/core/src/main/java/com/linecorp/armeria/client/retry/RetryRuleUtil.java +++ b/core/src/main/java/com/linecorp/armeria/client/retry/RetryRuleUtil.java @@ -19,11 +19,12 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.CompletionStage; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpResponseDuplicator; import com.linecorp.armeria.common.Response; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.UnmodifiableFuture; final class RetryRuleUtil { diff --git a/core/src/main/java/com/linecorp/armeria/client/retry/RetryRuleWithContent.java b/core/src/main/java/com/linecorp/armeria/client/retry/RetryRuleWithContent.java index 9865e722b95..0e431130904 100644 --- a/core/src/main/java/com/linecorp/armeria/client/retry/RetryRuleWithContent.java +++ b/core/src/main/java/com/linecorp/armeria/client/retry/RetryRuleWithContent.java @@ -23,6 +23,8 @@ import java.util.function.BiFunction; import java.util.function.BiPredicate; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; import com.google.common.collect.Iterables; @@ -36,7 +38,6 @@ import com.linecorp.armeria.common.HttpStatusClass; import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.Response; -import com.linecorp.armeria.common.annotation.Nullable; /** * Determines whether a failed request should be retried using the content of a {@link Response}. diff --git a/core/src/main/java/com/linecorp/armeria/client/retry/RetryingClient.java b/core/src/main/java/com/linecorp/armeria/client/retry/RetryingClient.java index a1e3e238e7c..0d5437ce39e 100644 --- a/core/src/main/java/com/linecorp/armeria/client/retry/RetryingClient.java +++ b/core/src/main/java/com/linecorp/armeria/client/retry/RetryingClient.java @@ -26,6 +26,7 @@ import java.util.concurrent.CompletionStage; import java.util.function.Function; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -43,7 +44,6 @@ import com.linecorp.armeria.common.RequestHeadersBuilder; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.SplitHttpResponse; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.logging.RequestLogAccess; import com.linecorp.armeria.common.logging.RequestLogBuilder; diff --git a/core/src/main/java/com/linecorp/armeria/client/retry/package-info.java b/core/src/main/java/com/linecorp/armeria/client/retry/package-info.java index 20540948492..e2a41e08300 100644 --- a/core/src/main/java/com/linecorp/armeria/client/retry/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/client/retry/package-info.java @@ -17,7 +17,7 @@ /** * A {@link com.linecorp.armeria.client.Client} decorator that handles failures and retries requests. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.client.retry; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/client/websocket/WebSocketClientBuilder.java b/core/src/main/java/com/linecorp/armeria/client/websocket/WebSocketClientBuilder.java index 992308ed527..91e7501a89b 100644 --- a/core/src/main/java/com/linecorp/armeria/client/websocket/WebSocketClientBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/client/websocket/WebSocketClientBuilder.java @@ -31,6 +31,8 @@ import java.util.function.Function; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; @@ -58,7 +60,6 @@ import com.linecorp.armeria.common.Scheme; import com.linecorp.armeria.common.SerializationFormat; import com.linecorp.armeria.common.SuccessFunction; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.auth.AuthToken; import com.linecorp.armeria.common.auth.BasicToken; diff --git a/core/src/main/java/com/linecorp/armeria/client/websocket/WebSocketSession.java b/core/src/main/java/com/linecorp/armeria/client/websocket/WebSocketSession.java index db2e7da5a5a..8bbb3fd7121 100644 --- a/core/src/main/java/com/linecorp/armeria/client/websocket/WebSocketSession.java +++ b/core/src/main/java/com/linecorp/armeria/client/websocket/WebSocketSession.java @@ -19,6 +19,7 @@ import java.util.concurrent.CompletableFuture; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; import com.google.common.base.MoreObjects; @@ -27,7 +28,6 @@ import com.linecorp.armeria.common.HttpData; import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.stream.PublisherBasedStreamMessage; import com.linecorp.armeria.common.stream.StreamMessage; diff --git a/core/src/main/java/com/linecorp/armeria/client/websocket/package-info.java b/core/src/main/java/com/linecorp/armeria/client/websocket/package-info.java index 848479aec63..80086109444 100644 --- a/core/src/main/java/com/linecorp/armeria/client/websocket/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/client/websocket/package-info.java @@ -17,7 +17,7 @@ /** * Client-side classes for the WebSocket Protocol. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.client.websocket; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/common/AbstractContextAwareExecutor.java b/core/src/main/java/com/linecorp/armeria/common/AbstractContextAwareExecutor.java index 16b165e347b..a75ae8aa388 100644 --- a/core/src/main/java/com/linecorp/armeria/common/AbstractContextAwareExecutor.java +++ b/core/src/main/java/com/linecorp/armeria/common/AbstractContextAwareExecutor.java @@ -20,10 +20,10 @@ import java.util.concurrent.Executor; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.context.ArmeriaContextPropagation; abstract class AbstractContextAwareExecutor implements Executor { diff --git a/core/src/main/java/com/linecorp/armeria/common/AbstractHttpEntity.java b/core/src/main/java/com/linecorp/armeria/common/AbstractHttpEntity.java index 94781926477..f0687e96d99 100644 --- a/core/src/main/java/com/linecorp/armeria/common/AbstractHttpEntity.java +++ b/core/src/main/java/com/linecorp/armeria/common/AbstractHttpEntity.java @@ -16,12 +16,12 @@ package com.linecorp.armeria.common; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.google.common.base.MoreObjects.ToStringHelper; import com.google.common.base.Objects; -import com.linecorp.armeria.common.annotation.Nullable; - abstract class AbstractHttpEntity implements HttpEntity { private final HttpHeaders headers; diff --git a/core/src/main/java/com/linecorp/armeria/common/AbstractHttpHeadersBuilder.java b/core/src/main/java/com/linecorp/armeria/common/AbstractHttpHeadersBuilder.java index b0fef50fea9..1b9a962119f 100644 --- a/core/src/main/java/com/linecorp/armeria/common/AbstractHttpHeadersBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/common/AbstractHttpHeadersBuilder.java @@ -15,7 +15,7 @@ */ package com.linecorp.armeria.common; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; import io.netty.util.AsciiString; diff --git a/core/src/main/java/com/linecorp/armeria/common/AbstractHttpHeadersJsonDeserializer.java b/core/src/main/java/com/linecorp/armeria/common/AbstractHttpHeadersJsonDeserializer.java index fbf527a43db..e1d0aeccd4f 100644 --- a/core/src/main/java/com/linecorp/armeria/common/AbstractHttpHeadersJsonDeserializer.java +++ b/core/src/main/java/com/linecorp/armeria/common/AbstractHttpHeadersJsonDeserializer.java @@ -22,6 +22,8 @@ import java.util.Iterator; import java.util.Map.Entry; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.databind.DeserializationContext; import com.fasterxml.jackson.databind.JsonDeserializer; @@ -30,8 +32,6 @@ import com.fasterxml.jackson.databind.deser.std.StdDeserializer; import com.fasterxml.jackson.databind.node.ObjectNode; -import com.linecorp.armeria.common.annotation.Nullable; - import io.netty.util.AsciiString; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/AbstractHttpMessageBuilder.java b/core/src/main/java/com/linecorp/armeria/common/AbstractHttpMessageBuilder.java index 91e6e49e358..785370c2428 100644 --- a/core/src/main/java/com/linecorp/armeria/common/AbstractHttpMessageBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/common/AbstractHttpMessageBuilder.java @@ -22,13 +22,13 @@ import java.nio.charset.StandardCharsets; import java.util.Map.Entry; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; import com.fasterxml.jackson.core.JsonProcessingException; import com.google.errorprone.annotations.FormatMethod; import com.google.errorprone.annotations.FormatString; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.internal.common.JacksonUtil; diff --git a/core/src/main/java/com/linecorp/armeria/common/AbstractHttpRequestBuilder.java b/core/src/main/java/com/linecorp/armeria/common/AbstractHttpRequestBuilder.java index 5dee216529f..6aea26eae58 100644 --- a/core/src/main/java/com/linecorp/armeria/common/AbstractHttpRequestBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/common/AbstractHttpRequestBuilder.java @@ -26,12 +26,12 @@ import java.util.Map; import java.util.Map.Entry; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; import com.google.errorprone.annotations.FormatMethod; import com.google.errorprone.annotations.FormatString; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.StreamMessage; import com.linecorp.armeria.internal.common.util.TemporaryThreadLocals; diff --git a/core/src/main/java/com/linecorp/armeria/common/AbstractRequestContextBuilder.java b/core/src/main/java/com/linecorp/armeria/common/AbstractRequestContextBuilder.java index 89945e7869b..db3dc3fdc49 100644 --- a/core/src/main/java/com/linecorp/armeria/common/AbstractRequestContextBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/common/AbstractRequestContextBuilder.java @@ -27,9 +27,10 @@ import javax.net.ssl.SSLSession; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.Client; import com.linecorp.armeria.client.ClientRequestContextBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.metric.NoopMeterRegistry; import com.linecorp.armeria.internal.common.DefaultRequestTarget; import com.linecorp.armeria.server.Service; diff --git a/core/src/main/java/com/linecorp/armeria/common/AbstractTlsConfig.java b/core/src/main/java/com/linecorp/armeria/common/AbstractTlsConfig.java index ff5dd754fd3..eada6ca8838 100644 --- a/core/src/main/java/com/linecorp/armeria/common/AbstractTlsConfig.java +++ b/core/src/main/java/com/linecorp/armeria/common/AbstractTlsConfig.java @@ -19,7 +19,8 @@ import java.util.Objects; import java.util.function.Consumer; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.metric.MeterIdPrefix; diff --git a/core/src/main/java/com/linecorp/armeria/common/AbstractTlsConfigBuilder.java b/core/src/main/java/com/linecorp/armeria/common/AbstractTlsConfigBuilder.java index 77e51eb2df0..914511b4454 100644 --- a/core/src/main/java/com/linecorp/armeria/common/AbstractTlsConfigBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/common/AbstractTlsConfigBuilder.java @@ -23,7 +23,8 @@ import javax.net.ssl.KeyManagerFactory; import javax.net.ssl.TrustManagerFactory; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.metric.MeterIdPrefix; diff --git a/core/src/main/java/com/linecorp/armeria/common/AbstractTlsSpec.java b/core/src/main/java/com/linecorp/armeria/common/AbstractTlsSpec.java index d509dbcd3f0..d713efc450d 100644 --- a/core/src/main/java/com/linecorp/armeria/common/AbstractTlsSpec.java +++ b/core/src/main/java/com/linecorp/armeria/common/AbstractTlsSpec.java @@ -25,12 +25,13 @@ import javax.net.ssl.KeyManagerFactory; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.google.common.base.Objects; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.util.TlsEngineType; import com.linecorp.armeria.internal.common.util.SslContextUtil; diff --git a/core/src/main/java/com/linecorp/armeria/common/AbstractTlsSpecBuilder.java b/core/src/main/java/com/linecorp/armeria/common/AbstractTlsSpecBuilder.java index a88440cd766..c4b4b29c500 100644 --- a/core/src/main/java/com/linecorp/armeria/common/AbstractTlsSpecBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/common/AbstractTlsSpecBuilder.java @@ -23,10 +23,11 @@ import java.util.List; import java.util.Set; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.util.TlsEngineType; import com.linecorp.armeria.internal.common.util.SslContextUtil; diff --git a/core/src/main/java/com/linecorp/armeria/common/AggregatedHttpObject.java b/core/src/main/java/com/linecorp/armeria/common/AggregatedHttpObject.java index aedbc7826c7..18ab7c3c85c 100644 --- a/core/src/main/java/com/linecorp/armeria/common/AggregatedHttpObject.java +++ b/core/src/main/java/com/linecorp/armeria/common/AggregatedHttpObject.java @@ -18,7 +18,7 @@ import java.nio.charset.Charset; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * A complete HTTP headers and content that are readily available. diff --git a/core/src/main/java/com/linecorp/armeria/common/AggregatedHttpRequest.java b/core/src/main/java/com/linecorp/armeria/common/AggregatedHttpRequest.java index 4b600a0d8e6..b21395d7a0a 100644 --- a/core/src/main/java/com/linecorp/armeria/common/AggregatedHttpRequest.java +++ b/core/src/main/java/com/linecorp/armeria/common/AggregatedHttpRequest.java @@ -26,12 +26,12 @@ import java.util.Locale; import java.util.Locale.LanguageRange; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.google.errorprone.annotations.FormatMethod; import com.google.errorprone.annotations.FormatString; -import com.linecorp.armeria.common.annotation.Nullable; - /** * A complete HTTP request whose content is readily available as a single {@link HttpData}. */ diff --git a/core/src/main/java/com/linecorp/armeria/common/AggregationOptions.java b/core/src/main/java/com/linecorp/armeria/common/AggregationOptions.java index 08e62ef2932..424290b7c3c 100644 --- a/core/src/main/java/com/linecorp/armeria/common/AggregationOptions.java +++ b/core/src/main/java/com/linecorp/armeria/common/AggregationOptions.java @@ -16,7 +16,8 @@ package com.linecorp.armeria.common; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.unsafe.PooledObjects; diff --git a/core/src/main/java/com/linecorp/armeria/common/AggregationOptionsBuilder.java b/core/src/main/java/com/linecorp/armeria/common/AggregationOptionsBuilder.java index 147196de695..b36ee0750d9 100644 --- a/core/src/main/java/com/linecorp/armeria/common/AggregationOptionsBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/common/AggregationOptionsBuilder.java @@ -18,7 +18,8 @@ import static java.util.Objects.requireNonNull; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.unsafe.PooledObjects; diff --git a/core/src/main/java/com/linecorp/armeria/common/AttributesBuilder.java b/core/src/main/java/com/linecorp/armeria/common/AttributesBuilder.java index c48b1db8b63..ef59b3274c2 100644 --- a/core/src/main/java/com/linecorp/armeria/common/AttributesBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/common/AttributesBuilder.java @@ -16,7 +16,8 @@ package com.linecorp.armeria.common; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; import io.netty.util.AttributeKey; diff --git a/core/src/main/java/com/linecorp/armeria/common/AttributesGetters.java b/core/src/main/java/com/linecorp/armeria/common/AttributesGetters.java index 4a56575ad29..0841ab33ffa 100644 --- a/core/src/main/java/com/linecorp/armeria/common/AttributesGetters.java +++ b/core/src/main/java/com/linecorp/armeria/common/AttributesGetters.java @@ -19,7 +19,8 @@ import java.util.Iterator; import java.util.Map.Entry; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; import io.netty.util.AttributeKey; diff --git a/core/src/main/java/com/linecorp/armeria/common/AttributesSetters.java b/core/src/main/java/com/linecorp/armeria/common/AttributesSetters.java index 6e9a01db1fb..e14f63fb8c8 100644 --- a/core/src/main/java/com/linecorp/armeria/common/AttributesSetters.java +++ b/core/src/main/java/com/linecorp/armeria/common/AttributesSetters.java @@ -16,7 +16,8 @@ package com.linecorp.armeria.common; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; import io.netty.util.AttributeKey; diff --git a/core/src/main/java/com/linecorp/armeria/common/Bytes.java b/core/src/main/java/com/linecorp/armeria/common/Bytes.java index 810c5abd917..8778084844f 100644 --- a/core/src/main/java/com/linecorp/armeria/common/Bytes.java +++ b/core/src/main/java/com/linecorp/armeria/common/Bytes.java @@ -24,9 +24,9 @@ import java.nio.charset.StandardCharsets; import java.util.concurrent.Executor; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.stream.StreamMessage; import com.linecorp.armeria.common.stream.SubscriptionOption; diff --git a/core/src/main/java/com/linecorp/armeria/common/CacheControl.java b/core/src/main/java/com/linecorp/armeria/common/CacheControl.java index 8fdecb3c538..a1a9aabfd42 100644 --- a/core/src/main/java/com/linecorp/armeria/common/CacheControl.java +++ b/core/src/main/java/com/linecorp/armeria/common/CacheControl.java @@ -15,7 +15,7 @@ */ package com.linecorp.armeria.common; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * Directives for HTTP caching mechanisms in requests or responses. Use {@link ServerCacheControl} for diff --git a/core/src/main/java/com/linecorp/armeria/common/CacheControlBuilder.java b/core/src/main/java/com/linecorp/armeria/common/CacheControlBuilder.java index 457ddeb46b5..65ec9b4a364 100644 --- a/core/src/main/java/com/linecorp/armeria/common/CacheControlBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/common/CacheControlBuilder.java @@ -19,7 +19,7 @@ import java.time.Duration; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * A skeletal builder implementation of {@link CacheControl}. Use {@link ServerCacheControlBuilder} for diff --git a/core/src/main/java/com/linecorp/armeria/common/CancellationException.java b/core/src/main/java/com/linecorp/armeria/common/CancellationException.java index 31e97d7414b..4a731cb17d3 100644 --- a/core/src/main/java/com/linecorp/armeria/common/CancellationException.java +++ b/core/src/main/java/com/linecorp/armeria/common/CancellationException.java @@ -16,7 +16,7 @@ package com.linecorp.armeria.common; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * A {@link RuntimeException} raised when a requested invocation is forced to stop before its completion. diff --git a/core/src/main/java/com/linecorp/armeria/common/ClientCacheControl.java b/core/src/main/java/com/linecorp/armeria/common/ClientCacheControl.java index de1a0930b06..e577a489b19 100644 --- a/core/src/main/java/com/linecorp/armeria/common/ClientCacheControl.java +++ b/core/src/main/java/com/linecorp/armeria/common/ClientCacheControl.java @@ -22,11 +22,11 @@ import java.util.Map; import java.util.function.BiConsumer; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; -import com.linecorp.armeria.common.annotation.Nullable; - /** * Directives for HTTP caching mechanisms in requests. * diff --git a/core/src/main/java/com/linecorp/armeria/common/ClientCacheControlBuilder.java b/core/src/main/java/com/linecorp/armeria/common/ClientCacheControlBuilder.java index 28089a63513..8eb9ae717c7 100644 --- a/core/src/main/java/com/linecorp/armeria/common/ClientCacheControlBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/common/ClientCacheControlBuilder.java @@ -17,7 +17,7 @@ import java.time.Duration; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * Creates a new {@link ClientCacheControl} using the builder pattern. diff --git a/core/src/main/java/com/linecorp/armeria/common/ClientCookieDecoder.java b/core/src/main/java/com/linecorp/armeria/common/ClientCookieDecoder.java index 0867741779d..4d36d9b1372 100644 --- a/core/src/main/java/com/linecorp/armeria/common/ClientCookieDecoder.java +++ b/core/src/main/java/com/linecorp/armeria/common/ClientCookieDecoder.java @@ -35,11 +35,10 @@ import java.util.Arrays; import java.util.Date; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import com.linecorp.armeria.common.annotation.Nullable; - import io.netty.handler.codec.DateFormatter; import io.netty.handler.codec.http.cookie.CookieHeaderNames; import io.netty.handler.codec.http.cookie.CookieHeaderNames.SameSite; diff --git a/core/src/main/java/com/linecorp/armeria/common/ClosedSessionException.java b/core/src/main/java/com/linecorp/armeria/common/ClosedSessionException.java index ef8f68aa7e5..fcc880f03d0 100644 --- a/core/src/main/java/com/linecorp/armeria/common/ClosedSessionException.java +++ b/core/src/main/java/com/linecorp/armeria/common/ClosedSessionException.java @@ -15,7 +15,8 @@ */ package com.linecorp.armeria.common; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.stream.ClosedStreamException; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/CompletableRpcResponse.java b/core/src/main/java/com/linecorp/armeria/common/CompletableRpcResponse.java index 02a7fd44f6c..e261224f8e3 100644 --- a/core/src/main/java/com/linecorp/armeria/common/CompletableRpcResponse.java +++ b/core/src/main/java/com/linecorp/armeria/common/CompletableRpcResponse.java @@ -21,9 +21,10 @@ import java.util.concurrent.CancellationException; import java.util.concurrent.atomic.AtomicReferenceFieldUpdater; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.EventLoopCheckingFuture; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/ConcurrentAttributes.java b/core/src/main/java/com/linecorp/armeria/common/ConcurrentAttributes.java index 921a8002021..9f5302176d5 100644 --- a/core/src/main/java/com/linecorp/armeria/common/ConcurrentAttributes.java +++ b/core/src/main/java/com/linecorp/armeria/common/ConcurrentAttributes.java @@ -18,7 +18,8 @@ import static java.util.Objects.requireNonNull; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; import io.netty.util.AttributeKey; diff --git a/core/src/main/java/com/linecorp/armeria/common/ContentDisposition.java b/core/src/main/java/com/linecorp/armeria/common/ContentDisposition.java index 5c50bcdecb6..5e487679589 100644 --- a/core/src/main/java/com/linecorp/armeria/common/ContentDisposition.java +++ b/core/src/main/java/com/linecorp/armeria/common/ContentDisposition.java @@ -49,13 +49,13 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.google.common.base.Ascii; import com.google.common.collect.ImmutableList; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.multipart.MultipartFilenameDecodingMode; import com.linecorp.armeria.internal.common.util.TemporaryThreadLocals; diff --git a/core/src/main/java/com/linecorp/armeria/common/ContentDispositionBuilder.java b/core/src/main/java/com/linecorp/armeria/common/ContentDispositionBuilder.java index 18c2c59ae1d..825cf0d945d 100644 --- a/core/src/main/java/com/linecorp/armeria/common/ContentDispositionBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/common/ContentDispositionBuilder.java @@ -37,7 +37,7 @@ import java.nio.charset.Charset; import java.nio.charset.StandardCharsets; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * A builder class for creating {@link ContentDisposition}. diff --git a/core/src/main/java/com/linecorp/armeria/common/ContentTooLargeException.java b/core/src/main/java/com/linecorp/armeria/common/ContentTooLargeException.java index 2cbbb0600bb..cf9d160db4b 100644 --- a/core/src/main/java/com/linecorp/armeria/common/ContentTooLargeException.java +++ b/core/src/main/java/com/linecorp/armeria/common/ContentTooLargeException.java @@ -16,7 +16,8 @@ package com.linecorp.armeria.common; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.internal.common.util.TemporaryThreadLocals; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/ContentTooLargeExceptionBuilder.java b/core/src/main/java/com/linecorp/armeria/common/ContentTooLargeExceptionBuilder.java index 4158699bf54..1101a70947d 100644 --- a/core/src/main/java/com/linecorp/armeria/common/ContentTooLargeExceptionBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/common/ContentTooLargeExceptionBuilder.java @@ -19,7 +19,8 @@ import static com.google.common.base.Preconditions.checkArgument; import static java.util.Objects.requireNonNull; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/Cookie.java b/core/src/main/java/com/linecorp/armeria/common/Cookie.java index cdbd30182ec..693c6787541 100644 --- a/core/src/main/java/com/linecorp/armeria/common/Cookie.java +++ b/core/src/main/java/com/linecorp/armeria/common/Cookie.java @@ -38,11 +38,11 @@ import java.util.List; import java.util.function.Consumer; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; -import com.linecorp.armeria.common.annotation.Nullable; - /** * An interface defining an * HTTP cookie. diff --git a/core/src/main/java/com/linecorp/armeria/common/CookieBuilder.java b/core/src/main/java/com/linecorp/armeria/common/CookieBuilder.java index 543d4ca2adb..c58e3960dfe 100644 --- a/core/src/main/java/com/linecorp/armeria/common/CookieBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/common/CookieBuilder.java @@ -20,7 +20,7 @@ import java.util.BitSet; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * Builds a {@link Cookie}. diff --git a/core/src/main/java/com/linecorp/armeria/common/CookieUtil.java b/core/src/main/java/com/linecorp/armeria/common/CookieUtil.java index 26ab8d1a042..f08ce0dcdf6 100644 --- a/core/src/main/java/com/linecorp/armeria/common/CookieUtil.java +++ b/core/src/main/java/com/linecorp/armeria/common/CookieUtil.java @@ -37,13 +37,12 @@ import java.util.Iterator; import java.util.List; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; -import com.linecorp.armeria.common.annotation.Nullable; - import io.netty.handler.codec.http.HttpConstants; import io.netty.util.internal.InternalThreadLocalMap; diff --git a/core/src/main/java/com/linecorp/armeria/common/DefaultAggregatedHttpRequest.java b/core/src/main/java/com/linecorp/armeria/common/DefaultAggregatedHttpRequest.java index 2504369a3a1..a32fb54dee1 100644 --- a/core/src/main/java/com/linecorp/armeria/common/DefaultAggregatedHttpRequest.java +++ b/core/src/main/java/com/linecorp/armeria/common/DefaultAggregatedHttpRequest.java @@ -16,11 +16,11 @@ package com.linecorp.armeria.common; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.google.common.base.MoreObjects.ToStringHelper; -import com.linecorp.armeria.common.annotation.Nullable; - final class DefaultAggregatedHttpRequest extends AbstractAggregatedHttpMessage implements AggregatedHttpRequest { diff --git a/core/src/main/java/com/linecorp/armeria/common/DefaultAggregatedHttpResponse.java b/core/src/main/java/com/linecorp/armeria/common/DefaultAggregatedHttpResponse.java index d07badc2cad..d6b98e33afb 100644 --- a/core/src/main/java/com/linecorp/armeria/common/DefaultAggregatedHttpResponse.java +++ b/core/src/main/java/com/linecorp/armeria/common/DefaultAggregatedHttpResponse.java @@ -18,11 +18,11 @@ import java.util.List; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.google.common.base.MoreObjects.ToStringHelper; -import com.linecorp.armeria.common.annotation.Nullable; - final class DefaultAggregatedHttpResponse extends AbstractAggregatedHttpMessage implements AggregatedHttpResponse { diff --git a/core/src/main/java/com/linecorp/armeria/common/DefaultAggregationOptions.java b/core/src/main/java/com/linecorp/armeria/common/DefaultAggregationOptions.java index 935f9940af9..56564ed464f 100644 --- a/core/src/main/java/com/linecorp/armeria/common/DefaultAggregationOptions.java +++ b/core/src/main/java/com/linecorp/armeria/common/DefaultAggregationOptions.java @@ -18,9 +18,9 @@ import java.util.Objects; -import com.google.common.base.MoreObjects; +import org.jspecify.annotations.Nullable; -import com.linecorp.armeria.common.annotation.Nullable; +import com.google.common.base.MoreObjects; import io.netty.buffer.ByteBufAllocator; import io.netty.util.concurrent.EventExecutor; diff --git a/core/src/main/java/com/linecorp/armeria/common/DefaultConcurrentAttributes.java b/core/src/main/java/com/linecorp/armeria/common/DefaultConcurrentAttributes.java index a6f92f3cb7e..c32760bc597 100644 --- a/core/src/main/java/com/linecorp/armeria/common/DefaultConcurrentAttributes.java +++ b/core/src/main/java/com/linecorp/armeria/common/DefaultConcurrentAttributes.java @@ -41,11 +41,12 @@ import java.util.concurrent.atomic.AtomicReferenceArray; import java.util.concurrent.atomic.AtomicReferenceFieldUpdater; +import org.jspecify.annotations.Nullable; + import com.google.common.annotations.VisibleForTesting; import com.google.common.base.Objects; import com.google.common.collect.Iterators; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.util.ReentrantShortLock; import io.netty.util.AttributeKey; diff --git a/core/src/main/java/com/linecorp/armeria/common/DefaultCookie.java b/core/src/main/java/com/linecorp/armeria/common/DefaultCookie.java index 6ad287010e0..30436445552 100644 --- a/core/src/main/java/com/linecorp/armeria/common/DefaultCookie.java +++ b/core/src/main/java/com/linecorp/armeria/common/DefaultCookie.java @@ -32,11 +32,11 @@ import java.util.Objects; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.google.common.base.MoreObjects.ToStringHelper; -import com.linecorp.armeria.common.annotation.Nullable; - /** * The default {@link Cookie} implementation. */ diff --git a/core/src/main/java/com/linecorp/armeria/common/DefaultDependencyInjector.java b/core/src/main/java/com/linecorp/armeria/common/DefaultDependencyInjector.java index dc76512199e..76093def230 100644 --- a/core/src/main/java/com/linecorp/armeria/common/DefaultDependencyInjector.java +++ b/core/src/main/java/com/linecorp/armeria/common/DefaultDependencyInjector.java @@ -21,12 +21,12 @@ import java.util.Map; import java.util.concurrent.locks.Lock; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.google.common.base.MoreObjects; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.util.ReentrantShortLock; final class DefaultDependencyInjector implements DependencyInjector { diff --git a/core/src/main/java/com/linecorp/armeria/common/DefaultHttpHeaders.java b/core/src/main/java/com/linecorp/armeria/common/DefaultHttpHeaders.java index a974bd3c209..4698ff0126a 100644 --- a/core/src/main/java/com/linecorp/armeria/common/DefaultHttpHeaders.java +++ b/core/src/main/java/com/linecorp/armeria/common/DefaultHttpHeaders.java @@ -15,7 +15,7 @@ */ package com.linecorp.armeria.common; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; @SuppressWarnings("checkstyle:EqualsHashCode") class DefaultHttpHeaders extends HttpHeadersBase implements HttpHeaders { diff --git a/core/src/main/java/com/linecorp/armeria/common/DefaultQueryParams.java b/core/src/main/java/com/linecorp/armeria/common/DefaultQueryParams.java index c296681956d..0375199295e 100644 --- a/core/src/main/java/com/linecorp/armeria/common/DefaultQueryParams.java +++ b/core/src/main/java/com/linecorp/armeria/common/DefaultQueryParams.java @@ -15,7 +15,7 @@ */ package com.linecorp.armeria.common; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; @SuppressWarnings({ "checkstyle:EqualsHashCode", "EqualsAndHashcode" }) final class DefaultQueryParams extends QueryParamsBase implements QueryParams { diff --git a/core/src/main/java/com/linecorp/armeria/common/DefaultRequestEntity.java b/core/src/main/java/com/linecorp/armeria/common/DefaultRequestEntity.java index f3da2bf6aa3..4dca48c3849 100644 --- a/core/src/main/java/com/linecorp/armeria/common/DefaultRequestEntity.java +++ b/core/src/main/java/com/linecorp/armeria/common/DefaultRequestEntity.java @@ -16,7 +16,7 @@ package com.linecorp.armeria.common; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; final class DefaultRequestEntity extends AbstractHttpEntity implements RequestEntity { diff --git a/core/src/main/java/com/linecorp/armeria/common/DefaultRequestHeaders.java b/core/src/main/java/com/linecorp/armeria/common/DefaultRequestHeaders.java index 7df712e3221..1fd8242a656 100644 --- a/core/src/main/java/com/linecorp/armeria/common/DefaultRequestHeaders.java +++ b/core/src/main/java/com/linecorp/armeria/common/DefaultRequestHeaders.java @@ -20,7 +20,7 @@ import java.util.Locale; import java.util.Locale.LanguageRange; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; @SuppressWarnings({ "checkstyle:EqualsHashCode", "EqualsAndHashcode" }) final class DefaultRequestHeaders extends DefaultHttpHeaders implements RequestHeaders { diff --git a/core/src/main/java/com/linecorp/armeria/common/DefaultRequestHeadersBuilder.java b/core/src/main/java/com/linecorp/armeria/common/DefaultRequestHeadersBuilder.java index 1ad1740e42d..25cff573705 100644 --- a/core/src/main/java/com/linecorp/armeria/common/DefaultRequestHeadersBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/common/DefaultRequestHeadersBuilder.java @@ -24,12 +24,12 @@ import java.util.Locale; import java.util.Locale.LanguageRange; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; import com.google.common.collect.Iterables; -import com.linecorp.armeria.common.annotation.Nullable; - final class DefaultRequestHeadersBuilder extends AbstractHttpHeadersBuilder implements RequestHeadersBuilder { diff --git a/core/src/main/java/com/linecorp/armeria/common/DefaultRequestId.java b/core/src/main/java/com/linecorp/armeria/common/DefaultRequestId.java index 754b892c4df..b462e6f3a21 100644 --- a/core/src/main/java/com/linecorp/armeria/common/DefaultRequestId.java +++ b/core/src/main/java/com/linecorp/armeria/common/DefaultRequestId.java @@ -17,7 +17,8 @@ import java.util.concurrent.ThreadLocalRandom; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.internal.common.util.TemporaryThreadLocals; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/DefaultResponseEntity.java b/core/src/main/java/com/linecorp/armeria/common/DefaultResponseEntity.java index 91b8ed3c7e3..9c2772596c5 100644 --- a/core/src/main/java/com/linecorp/armeria/common/DefaultResponseEntity.java +++ b/core/src/main/java/com/linecorp/armeria/common/DefaultResponseEntity.java @@ -16,7 +16,7 @@ package com.linecorp.armeria.common; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; final class DefaultResponseEntity extends AbstractHttpEntity implements ResponseEntity { diff --git a/core/src/main/java/com/linecorp/armeria/common/DefaultResponseHeaders.java b/core/src/main/java/com/linecorp/armeria/common/DefaultResponseHeaders.java index bf4251eb0e5..827ec9cb0b9 100644 --- a/core/src/main/java/com/linecorp/armeria/common/DefaultResponseHeaders.java +++ b/core/src/main/java/com/linecorp/armeria/common/DefaultResponseHeaders.java @@ -15,7 +15,7 @@ */ package com.linecorp.armeria.common; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; @SuppressWarnings({ "checkstyle:EqualsHashCode", "EqualsAndHashcode" }) final class DefaultResponseHeaders extends DefaultHttpHeaders implements ResponseHeaders { diff --git a/core/src/main/java/com/linecorp/armeria/common/DefaultRpcRequest.java b/core/src/main/java/com/linecorp/armeria/common/DefaultRpcRequest.java index b285816cbab..97365fbaa1c 100644 --- a/core/src/main/java/com/linecorp/armeria/common/DefaultRpcRequest.java +++ b/core/src/main/java/com/linecorp/armeria/common/DefaultRpcRequest.java @@ -23,11 +23,11 @@ import java.util.Collections; import java.util.List; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.google.common.collect.ImmutableList; -import com.linecorp.armeria.common.annotation.Nullable; - /** * Default {@link RpcRequest} implementation. */ diff --git a/core/src/main/java/com/linecorp/armeria/common/DependencyInjector.java b/core/src/main/java/com/linecorp/armeria/common/DependencyInjector.java index a8ce54270ce..97372b559dc 100644 --- a/core/src/main/java/com/linecorp/armeria/common/DependencyInjector.java +++ b/core/src/main/java/com/linecorp/armeria/common/DependencyInjector.java @@ -17,9 +17,10 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.util.SafeCloseable; import com.linecorp.armeria.internal.common.ReflectiveDependencyInjector; diff --git a/core/src/main/java/com/linecorp/armeria/common/EmptyHttpResponseException.java b/core/src/main/java/com/linecorp/armeria/common/EmptyHttpResponseException.java index c3b51d1cd8f..3c1588a17f0 100644 --- a/core/src/main/java/com/linecorp/armeria/common/EmptyHttpResponseException.java +++ b/core/src/main/java/com/linecorp/armeria/common/EmptyHttpResponseException.java @@ -16,7 +16,8 @@ package com.linecorp.armeria.common; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/Flags.java b/core/src/main/java/com/linecorp/armeria/common/Flags.java index 42ef35cc0c7..69a5f24ea44 100644 --- a/core/src/main/java/com/linecorp/armeria/common/Flags.java +++ b/core/src/main/java/com/linecorp/armeria/common/Flags.java @@ -37,6 +37,7 @@ import javax.net.ssl.SSLEngine; import javax.net.ssl.SSLException; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -54,7 +55,6 @@ import com.linecorp.armeria.client.retry.Backoff; import com.linecorp.armeria.client.retry.RetryingClient; import com.linecorp.armeria.client.retry.RetryingRpcClient; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.multipart.MultipartFilenameDecodingMode; import com.linecorp.armeria.common.util.Exceptions; diff --git a/core/src/main/java/com/linecorp/armeria/common/FlagsProvider.java b/core/src/main/java/com/linecorp/armeria/common/FlagsProvider.java index e95d923f675..cdb6ec1535a 100644 --- a/core/src/main/java/com/linecorp/armeria/common/FlagsProvider.java +++ b/core/src/main/java/com/linecorp/armeria/common/FlagsProvider.java @@ -29,6 +29,8 @@ import javax.net.ssl.SSLEngine; import javax.net.ssl.SSLException; +import org.jspecify.annotations.Nullable; + import com.github.benmanes.caffeine.cache.CaffeineSpec; import com.linecorp.armeria.client.ClientBuilder; @@ -38,7 +40,6 @@ import com.linecorp.armeria.client.retry.Backoff; import com.linecorp.armeria.client.retry.RetryingClient; import com.linecorp.armeria.client.retry.RetryingRpcClient; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.multipart.MultipartFilenameDecodingMode; import com.linecorp.armeria.common.util.Exceptions; diff --git a/core/src/main/java/com/linecorp/armeria/common/FlagsUtil.java b/core/src/main/java/com/linecorp/armeria/common/FlagsUtil.java index 8efb627b38f..03a6c66e9a0 100644 --- a/core/src/main/java/com/linecorp/armeria/common/FlagsUtil.java +++ b/core/src/main/java/com/linecorp/armeria/common/FlagsUtil.java @@ -18,9 +18,9 @@ import java.util.List; import java.util.ServiceLoader; -import com.google.common.collect.ImmutableList; +import org.jspecify.annotations.Nullable; -import com.linecorp.armeria.common.annotation.Nullable; +import com.google.common.collect.ImmutableList; final class FlagsUtil { diff --git a/core/src/main/java/com/linecorp/armeria/common/HttpHeaderGetters.java b/core/src/main/java/com/linecorp/armeria/common/HttpHeaderGetters.java index 397e4536fdb..e880a167be7 100644 --- a/core/src/main/java/com/linecorp/armeria/common/HttpHeaderGetters.java +++ b/core/src/main/java/com/linecorp/armeria/common/HttpHeaderGetters.java @@ -25,9 +25,10 @@ import java.util.function.Consumer; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.Streams; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import io.netty.util.AsciiString; diff --git a/core/src/main/java/com/linecorp/armeria/common/HttpHeaderNames.java b/core/src/main/java/com/linecorp/armeria/common/HttpHeaderNames.java index d93e4141ca7..ff549509cad 100644 --- a/core/src/main/java/com/linecorp/armeria/common/HttpHeaderNames.java +++ b/core/src/main/java/com/linecorp/armeria/common/HttpHeaderNames.java @@ -35,11 +35,12 @@ import java.util.BitSet; import java.util.Map; +import org.jspecify.annotations.Nullable; + import com.google.common.base.Ascii; import com.google.common.collect.ImmutableMap; import com.google.common.math.IntMath; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import io.netty.util.AsciiString; @@ -71,8 +72,8 @@ public final class HttpHeaderNames { private static final String[] PROHIBITED_NAME_CHAR_NAMES; private static final byte LAST_PROHIBITED_NAME_CHAR; - @Nullable - private static ImmutableMap.Builder inverseMapBuilder = ImmutableMap.builder(); + private static ImmutableMap.@Nullable Builder inverseMapBuilder = + ImmutableMap.builder(); static { PROHIBITED_NAME_CHARS = new BitSet(); diff --git a/core/src/main/java/com/linecorp/armeria/common/HttpHeadersBase.java b/core/src/main/java/com/linecorp/armeria/common/HttpHeadersBase.java index e67e1309d6e..9c70290e14e 100644 --- a/core/src/main/java/com/linecorp/armeria/common/HttpHeadersBase.java +++ b/core/src/main/java/com/linecorp/armeria/common/HttpHeadersBase.java @@ -49,13 +49,14 @@ import java.util.StringJoiner; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.google.common.annotations.VisibleForTesting; import com.google.common.base.Splitter; import com.google.common.collect.ImmutableList; import com.google.common.collect.Iterables; import com.google.common.math.IntMath; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.util.StringUtil; import com.linecorp.armeria.internal.common.util.TemporaryThreadLocals; diff --git a/core/src/main/java/com/linecorp/armeria/common/HttpHeadersBuilder.java b/core/src/main/java/com/linecorp/armeria/common/HttpHeadersBuilder.java index 228deee99ad..389a708d034 100644 --- a/core/src/main/java/com/linecorp/armeria/common/HttpHeadersBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/common/HttpHeadersBuilder.java @@ -21,7 +21,7 @@ import java.util.Map; import java.util.Map.Entry; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * Builds an {@link HttpHeaders}. diff --git a/core/src/main/java/com/linecorp/armeria/common/HttpMethod.java b/core/src/main/java/com/linecorp/armeria/common/HttpMethod.java index c69acff75b9..c3cc6d70f63 100644 --- a/core/src/main/java/com/linecorp/armeria/common/HttpMethod.java +++ b/core/src/main/java/com/linecorp/armeria/common/HttpMethod.java @@ -35,9 +35,9 @@ import java.util.EnumSet; import java.util.Set; -import com.google.common.collect.Sets; +import org.jspecify.annotations.Nullable; -import com.linecorp.armeria.common.annotation.Nullable; +import com.google.common.collect.Sets; /** * HTTP request method. diff --git a/core/src/main/java/com/linecorp/armeria/common/HttpRequest.java b/core/src/main/java/com/linecorp/armeria/common/HttpRequest.java index 01a739afca1..ad14ff2ded5 100644 --- a/core/src/main/java/com/linecorp/armeria/common/HttpRequest.java +++ b/core/src/main/java/com/linecorp/armeria/common/HttpRequest.java @@ -31,6 +31,7 @@ import java.util.function.Consumer; import java.util.function.Function; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; @@ -44,7 +45,6 @@ import com.linecorp.armeria.common.FixedHttpRequest.OneElementFixedHttpRequest; import com.linecorp.armeria.common.FixedHttpRequest.RegularFixedHttpRequest; import com.linecorp.armeria.common.FixedHttpRequest.TwoElementFixedHttpRequest; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.stream.PublisherBasedStreamMessage; import com.linecorp.armeria.common.stream.StreamMessage; diff --git a/core/src/main/java/com/linecorp/armeria/common/HttpResponse.java b/core/src/main/java/com/linecorp/armeria/common/HttpResponse.java index c5073a0c6d9..27175c1c593 100644 --- a/core/src/main/java/com/linecorp/armeria/common/HttpResponse.java +++ b/core/src/main/java/com/linecorp/armeria/common/HttpResponse.java @@ -35,6 +35,7 @@ import java.util.function.Function; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; @@ -49,7 +50,6 @@ import com.linecorp.armeria.common.FixedHttpResponse.RegularFixedHttpResponse; import com.linecorp.armeria.common.FixedHttpResponse.ThreeElementFixedHttpResponse; import com.linecorp.armeria.common.FixedHttpResponse.TwoElementFixedHttpResponse; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.stream.PublisherBasedStreamMessage; import com.linecorp.armeria.common.stream.StreamMessage; diff --git a/core/src/main/java/com/linecorp/armeria/common/HttpStatus.java b/core/src/main/java/com/linecorp/armeria/common/HttpStatus.java index a7eff2274c3..5210b862894 100644 --- a/core/src/main/java/com/linecorp/armeria/common/HttpStatus.java +++ b/core/src/main/java/com/linecorp/armeria/common/HttpStatus.java @@ -18,7 +18,8 @@ import static java.util.Objects.requireNonNull; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.internal.common.util.StringUtil; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/ImmutableAttributes.java b/core/src/main/java/com/linecorp/armeria/common/ImmutableAttributes.java index 97d68463350..e3462b9b965 100644 --- a/core/src/main/java/com/linecorp/armeria/common/ImmutableAttributes.java +++ b/core/src/main/java/com/linecorp/armeria/common/ImmutableAttributes.java @@ -25,11 +25,11 @@ import java.util.Map.Entry; import java.util.NoSuchElementException; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableMap; import com.google.common.collect.Iterators; -import com.linecorp.armeria.common.annotation.Nullable; - import io.netty.util.AttributeKey; final class ImmutableAttributes implements Attributes { diff --git a/core/src/main/java/com/linecorp/armeria/common/ImmutableAttributesBuilder.java b/core/src/main/java/com/linecorp/armeria/common/ImmutableAttributesBuilder.java index 216a5c22117..243d91fad35 100644 --- a/core/src/main/java/com/linecorp/armeria/common/ImmutableAttributesBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/common/ImmutableAttributesBuilder.java @@ -21,7 +21,7 @@ import java.util.HashMap; import java.util.Map; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; import io.netty.util.AttributeKey; diff --git a/core/src/main/java/com/linecorp/armeria/common/IpAddressRejectedException.java b/core/src/main/java/com/linecorp/armeria/common/IpAddressRejectedException.java index 6413fa798a9..da0e5b3d57f 100644 --- a/core/src/main/java/com/linecorp/armeria/common/IpAddressRejectedException.java +++ b/core/src/main/java/com/linecorp/armeria/common/IpAddressRejectedException.java @@ -16,7 +16,8 @@ package com.linecorp.armeria.common; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/MappedTlsProvider.java b/core/src/main/java/com/linecorp/armeria/common/MappedTlsProvider.java index c350d228f19..f9f8cd50295 100644 --- a/core/src/main/java/com/linecorp/armeria/common/MappedTlsProvider.java +++ b/core/src/main/java/com/linecorp/armeria/common/MappedTlsProvider.java @@ -25,11 +25,11 @@ import java.util.Map; import java.util.Objects; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.google.common.collect.ImmutableList; -import com.linecorp.armeria.common.annotation.Nullable; - final class MappedTlsProvider implements TlsProvider { private final Map tlsKeyPairs; diff --git a/core/src/main/java/com/linecorp/armeria/common/MediaType.java b/core/src/main/java/com/linecorp/armeria/common/MediaType.java index 36dc28f6b02..72572a871cb 100644 --- a/core/src/main/java/com/linecorp/armeria/common/MediaType.java +++ b/core/src/main/java/com/linecorp/armeria/common/MediaType.java @@ -50,6 +50,8 @@ import java.util.function.Function; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.google.common.base.Ascii; @@ -64,7 +66,6 @@ import com.google.common.collect.Multimap; import com.google.common.collect.Multimaps; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/MediaTypeJsonDeserializer.java b/core/src/main/java/com/linecorp/armeria/common/MediaTypeJsonDeserializer.java index 4a5e94dbbc1..e4269245a68 100644 --- a/core/src/main/java/com/linecorp/armeria/common/MediaTypeJsonDeserializer.java +++ b/core/src/main/java/com/linecorp/armeria/common/MediaTypeJsonDeserializer.java @@ -17,14 +17,14 @@ import java.io.IOException; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.databind.DeserializationContext; import com.fasterxml.jackson.databind.JsonDeserializer; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.deser.std.StdDeserializer; -import com.linecorp.armeria.common.annotation.Nullable; - /** * Jackson {@link JsonDeserializer} for {@link MediaType}. */ diff --git a/core/src/main/java/com/linecorp/armeria/common/MediaTypeSet.java b/core/src/main/java/com/linecorp/armeria/common/MediaTypeSet.java index cdc011d6bf7..aae7ae1de5f 100644 --- a/core/src/main/java/com/linecorp/armeria/common/MediaTypeSet.java +++ b/core/src/main/java/com/linecorp/armeria/common/MediaTypeSet.java @@ -26,13 +26,13 @@ import java.util.List; import java.util.Set; +import org.jspecify.annotations.Nullable; + import com.google.common.annotations.VisibleForTesting; import com.google.common.collect.ImmutableList; import com.google.common.collect.Iterators; import com.google.common.collect.Lists; -import com.linecorp.armeria.common.annotation.Nullable; - /** * An immutable {@link Set} of {@link MediaType}s which provides useful methods for content negotiation. * diff --git a/core/src/main/java/com/linecorp/armeria/common/NoHttpContentException.java b/core/src/main/java/com/linecorp/armeria/common/NoHttpContentException.java index 081e90cc801..f94ad480e75 100644 --- a/core/src/main/java/com/linecorp/armeria/common/NoHttpContentException.java +++ b/core/src/main/java/com/linecorp/armeria/common/NoHttpContentException.java @@ -16,7 +16,8 @@ package com.linecorp.armeria.common; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/OrElseDependencyInjector.java b/core/src/main/java/com/linecorp/armeria/common/OrElseDependencyInjector.java index 058a6056b6e..a0761478edd 100644 --- a/core/src/main/java/com/linecorp/armeria/common/OrElseDependencyInjector.java +++ b/core/src/main/java/com/linecorp/armeria/common/OrElseDependencyInjector.java @@ -15,11 +15,10 @@ */ package com.linecorp.armeria.common; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import com.linecorp.armeria.common.annotation.Nullable; - final class OrElseDependencyInjector implements DependencyInjector { private static final Logger logger = LoggerFactory.getLogger(OrElseDependencyInjector.class); diff --git a/core/src/main/java/com/linecorp/armeria/common/PropagatingContextAwareBlockingTaskExecutor.java b/core/src/main/java/com/linecorp/armeria/common/PropagatingContextAwareBlockingTaskExecutor.java index f94bc42968d..94274eea83a 100644 --- a/core/src/main/java/com/linecorp/armeria/common/PropagatingContextAwareBlockingTaskExecutor.java +++ b/core/src/main/java/com/linecorp/armeria/common/PropagatingContextAwareBlockingTaskExecutor.java @@ -19,9 +19,10 @@ import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.BlockingTaskExecutor; final class PropagatingContextAwareBlockingTaskExecutor diff --git a/core/src/main/java/com/linecorp/armeria/common/PropagatingContextAwareExecutor.java b/core/src/main/java/com/linecorp/armeria/common/PropagatingContextAwareExecutor.java index e0a04fe6e40..db4d18f35b6 100644 --- a/core/src/main/java/com/linecorp/armeria/common/PropagatingContextAwareExecutor.java +++ b/core/src/main/java/com/linecorp/armeria/common/PropagatingContextAwareExecutor.java @@ -20,9 +20,9 @@ import java.util.concurrent.Executor; import java.util.function.Function; -import com.google.common.base.MoreObjects; +import org.jspecify.annotations.Nullable; -import com.linecorp.armeria.common.annotation.Nullable; +import com.google.common.base.MoreObjects; final class PropagatingContextAwareExecutor extends AbstractContextAwareExecutor { diff --git a/core/src/main/java/com/linecorp/armeria/common/PropagatingContextAwareExecutorService.java b/core/src/main/java/com/linecorp/armeria/common/PropagatingContextAwareExecutorService.java index e88b7ccf895..9af18f69fe3 100644 --- a/core/src/main/java/com/linecorp/armeria/common/PropagatingContextAwareExecutorService.java +++ b/core/src/main/java/com/linecorp/armeria/common/PropagatingContextAwareExecutorService.java @@ -20,9 +20,9 @@ import java.util.concurrent.ExecutorService; import java.util.function.Function; -import com.google.common.base.MoreObjects; +import org.jspecify.annotations.Nullable; -import com.linecorp.armeria.common.annotation.Nullable; +import com.google.common.base.MoreObjects; final class PropagatingContextAwareExecutorService extends AbstractContextAwareExecutorService { diff --git a/core/src/main/java/com/linecorp/armeria/common/PropagatingContextAwareScheduledExecutorService.java b/core/src/main/java/com/linecorp/armeria/common/PropagatingContextAwareScheduledExecutorService.java index 752db561a57..9adea986605 100644 --- a/core/src/main/java/com/linecorp/armeria/common/PropagatingContextAwareScheduledExecutorService.java +++ b/core/src/main/java/com/linecorp/armeria/common/PropagatingContextAwareScheduledExecutorService.java @@ -20,9 +20,9 @@ import java.util.concurrent.ScheduledExecutorService; import java.util.function.Function; -import com.google.common.base.MoreObjects; +import org.jspecify.annotations.Nullable; -import com.linecorp.armeria.common.annotation.Nullable; +import com.google.common.base.MoreObjects; final class PropagatingContextAwareScheduledExecutorService extends AbstractContextAwareScheduledExecutorService { diff --git a/core/src/main/java/com/linecorp/armeria/common/ProtocolViolationException.java b/core/src/main/java/com/linecorp/armeria/common/ProtocolViolationException.java index fd79fccd33e..28d1aa80fd4 100644 --- a/core/src/main/java/com/linecorp/armeria/common/ProtocolViolationException.java +++ b/core/src/main/java/com/linecorp/armeria/common/ProtocolViolationException.java @@ -15,7 +15,7 @@ */ package com.linecorp.armeria.common; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * A {@link RuntimeException} raised when a remote peer violated the current {@link SessionProtocol}. diff --git a/core/src/main/java/com/linecorp/armeria/common/PublisherBasedHttpResponse.java b/core/src/main/java/com/linecorp/armeria/common/PublisherBasedHttpResponse.java index 21a61529cd8..d4884253a93 100644 --- a/core/src/main/java/com/linecorp/armeria/common/PublisherBasedHttpResponse.java +++ b/core/src/main/java/com/linecorp/armeria/common/PublisherBasedHttpResponse.java @@ -19,9 +19,9 @@ import java.util.concurrent.CompletableFuture; import java.util.function.Function; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.PublisherBasedStreamMessage; import com.linecorp.armeria.internal.common.stream.SurroundingPublisher; diff --git a/core/src/main/java/com/linecorp/armeria/common/QueryParamGetters.java b/core/src/main/java/com/linecorp/armeria/common/QueryParamGetters.java index 0b39c9b8d82..0e1a39763da 100644 --- a/core/src/main/java/com/linecorp/armeria/common/QueryParamGetters.java +++ b/core/src/main/java/com/linecorp/armeria/common/QueryParamGetters.java @@ -25,9 +25,10 @@ import java.util.function.Consumer; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.Streams; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.util.TemporaryThreadLocals; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/QueryParams.java b/core/src/main/java/com/linecorp/armeria/common/QueryParams.java index bbf80acaf0b..25c1ac309ef 100644 --- a/core/src/main/java/com/linecorp/armeria/common/QueryParams.java +++ b/core/src/main/java/com/linecorp/armeria/common/QueryParams.java @@ -23,9 +23,10 @@ import java.util.Date; import java.util.function.Consumer; +import org.jspecify.annotations.Nullable; + import com.google.common.base.Strings; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.util.TemporaryThreadLocals; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/QueryParamsBase.java b/core/src/main/java/com/linecorp/armeria/common/QueryParamsBase.java index 46d35c365bc..b5c2cd38816 100644 --- a/core/src/main/java/com/linecorp/armeria/common/QueryParamsBase.java +++ b/core/src/main/java/com/linecorp/armeria/common/QueryParamsBase.java @@ -29,7 +29,7 @@ */ package com.linecorp.armeria.common; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * The base container implementation of {@link QueryParams} and {@link QueryParamsBuilder}. diff --git a/core/src/main/java/com/linecorp/armeria/common/QueryParamsBuilder.java b/core/src/main/java/com/linecorp/armeria/common/QueryParamsBuilder.java index 6590d326384..cf6119a8dc7 100644 --- a/core/src/main/java/com/linecorp/armeria/common/QueryParamsBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/common/QueryParamsBuilder.java @@ -21,7 +21,7 @@ import java.util.Map; import java.util.Map.Entry; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * Builds a {@link QueryParams}. diff --git a/core/src/main/java/com/linecorp/armeria/common/RefreshingTlsProvider.java b/core/src/main/java/com/linecorp/armeria/common/RefreshingTlsProvider.java index 03b900c13bf..3158ee30fc7 100644 --- a/core/src/main/java/com/linecorp/armeria/common/RefreshingTlsProvider.java +++ b/core/src/main/java/com/linecorp/armeria/common/RefreshingTlsProvider.java @@ -28,13 +28,12 @@ import java.util.function.Consumer; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.google.common.base.MoreObjects; -import com.linecorp.armeria.common.annotation.Nullable; - final class RefreshingTlsProvider implements TlsProvider { private static final Logger logger = LoggerFactory.getLogger(RefreshingTlsProvider.class); diff --git a/core/src/main/java/com/linecorp/armeria/common/RequestContext.java b/core/src/main/java/com/linecorp/armeria/common/RequestContext.java index 1f0935431ba..71932b219a4 100644 --- a/core/src/main/java/com/linecorp/armeria/common/RequestContext.java +++ b/core/src/main/java/com/linecorp/armeria/common/RequestContext.java @@ -38,12 +38,12 @@ import javax.net.ssl.SSLSession; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import com.google.errorprone.annotations.MustBeClosed; import com.linecorp.armeria.client.ClientRequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.logging.RequestLogAccess; diff --git a/core/src/main/java/com/linecorp/armeria/common/RequestContextStorage.java b/core/src/main/java/com/linecorp/armeria/common/RequestContextStorage.java index 1d90bda9203..6e5b2ee79fa 100644 --- a/core/src/main/java/com/linecorp/armeria/common/RequestContextStorage.java +++ b/core/src/main/java/com/linecorp/armeria/common/RequestContextStorage.java @@ -20,7 +20,8 @@ import java.util.function.Function; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.util.Unwrappable; import com.linecorp.armeria.internal.common.RequestContextUtil; diff --git a/core/src/main/java/com/linecorp/armeria/common/RequestContextStorageWrapper.java b/core/src/main/java/com/linecorp/armeria/common/RequestContextStorageWrapper.java index 6553e110d12..0edbcd6a652 100644 --- a/core/src/main/java/com/linecorp/armeria/common/RequestContextStorageWrapper.java +++ b/core/src/main/java/com/linecorp/armeria/common/RequestContextStorageWrapper.java @@ -17,7 +17,8 @@ import java.util.function.Function; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.util.AbstractUnwrappable; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/RequestContextWrapper.java b/core/src/main/java/com/linecorp/armeria/common/RequestContextWrapper.java index 2973d6965b3..faf322839c7 100644 --- a/core/src/main/java/com/linecorp/armeria/common/RequestContextWrapper.java +++ b/core/src/main/java/com/linecorp/armeria/common/RequestContextWrapper.java @@ -27,7 +27,8 @@ import javax.net.ssl.SSLSession; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.logging.RequestLogAccess; import com.linecorp.armeria.common.logging.RequestLogBuilder; import com.linecorp.armeria.common.util.AbstractUnwrappable; diff --git a/core/src/main/java/com/linecorp/armeria/common/RequestEntity.java b/core/src/main/java/com/linecorp/armeria/common/RequestEntity.java index b50183c8570..d39c4836343 100644 --- a/core/src/main/java/com/linecorp/armeria/common/RequestEntity.java +++ b/core/src/main/java/com/linecorp/armeria/common/RequestEntity.java @@ -18,7 +18,8 @@ import static java.util.Objects.requireNonNull; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/RequestHeaderGetters.java b/core/src/main/java/com/linecorp/armeria/common/RequestHeaderGetters.java index a7267c0b2c2..e9ff326754c 100644 --- a/core/src/main/java/com/linecorp/armeria/common/RequestHeaderGetters.java +++ b/core/src/main/java/com/linecorp/armeria/common/RequestHeaderGetters.java @@ -22,9 +22,9 @@ import java.util.Locale; import java.util.Locale.LanguageRange; -import com.google.common.collect.ImmutableList; +import org.jspecify.annotations.Nullable; -import com.linecorp.armeria.common.annotation.Nullable; +import com.google.common.collect.ImmutableList; /** * Provides the getter methods to {@link RequestHeaders} and {@link RequestHeadersBuilder}. diff --git a/core/src/main/java/com/linecorp/armeria/common/RequestTarget.java b/core/src/main/java/com/linecorp/armeria/common/RequestTarget.java index b3a7b434540..eb393f9e231 100644 --- a/core/src/main/java/com/linecorp/armeria/common/RequestTarget.java +++ b/core/src/main/java/com/linecorp/armeria/common/RequestTarget.java @@ -17,7 +17,8 @@ import static java.util.Objects.requireNonNull; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.internal.common.DefaultRequestTarget; import com.linecorp.armeria.internal.common.util.TemporaryThreadLocals; diff --git a/core/src/main/java/com/linecorp/armeria/common/RpcRequest.java b/core/src/main/java/com/linecorp/armeria/common/RpcRequest.java index 5a855f3aebe..cd98c641a82 100644 --- a/core/src/main/java/com/linecorp/armeria/common/RpcRequest.java +++ b/core/src/main/java/com/linecorp/armeria/common/RpcRequest.java @@ -21,9 +21,9 @@ import java.util.List; -import com.google.common.collect.ImmutableList; +import org.jspecify.annotations.Nullable; -import com.linecorp.armeria.common.annotation.Nullable; +import com.google.common.collect.ImmutableList; /** * An RPC {@link Request}. diff --git a/core/src/main/java/com/linecorp/armeria/common/RpcResponse.java b/core/src/main/java/com/linecorp/armeria/common/RpcResponse.java index b276394153f..5bcde41c6bc 100644 --- a/core/src/main/java/com/linecorp/armeria/common/RpcResponse.java +++ b/core/src/main/java/com/linecorp/armeria/common/RpcResponse.java @@ -22,7 +22,8 @@ import java.util.concurrent.CompletionStage; import java.util.concurrent.Future; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.util.Exceptions; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/Scheme.java b/core/src/main/java/com/linecorp/armeria/common/Scheme.java index 36d5ac714f2..c51cdd31ff4 100644 --- a/core/src/main/java/com/linecorp/armeria/common/Scheme.java +++ b/core/src/main/java/com/linecorp/armeria/common/Scheme.java @@ -20,11 +20,11 @@ import java.util.Map; +import org.jspecify.annotations.Nullable; + import com.google.common.base.Ascii; import com.google.common.collect.ImmutableMap; -import com.linecorp.armeria.common.annotation.Nullable; - /** * A pair of {@link SerializationFormat} and {@link SessionProtocol}. *

    diff --git a/core/src/main/java/com/linecorp/armeria/common/SerializationFormat.java b/core/src/main/java/com/linecorp/armeria/common/SerializationFormat.java index 98e29570e22..667e0e567b2 100644 --- a/core/src/main/java/com/linecorp/armeria/common/SerializationFormat.java +++ b/core/src/main/java/com/linecorp/armeria/common/SerializationFormat.java @@ -27,6 +27,7 @@ import java.util.ServiceLoader; import java.util.Set; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -39,7 +40,6 @@ import com.google.common.collect.Lists; import com.google.common.collect.Multimap; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/SerializationFormatProvider.java b/core/src/main/java/com/linecorp/armeria/common/SerializationFormatProvider.java index 8f7c583e12d..339a13d7ff1 100644 --- a/core/src/main/java/com/linecorp/armeria/common/SerializationFormatProvider.java +++ b/core/src/main/java/com/linecorp/armeria/common/SerializationFormatProvider.java @@ -20,11 +20,12 @@ import java.util.Set; +import org.jspecify.annotations.Nullable; + import com.google.common.base.Ascii; import com.google.common.base.MoreObjects; import com.google.common.collect.ImmutableList; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/ServerCacheControl.java b/core/src/main/java/com/linecorp/armeria/common/ServerCacheControl.java index 191ede659ec..3c03efbcc68 100644 --- a/core/src/main/java/com/linecorp/armeria/common/ServerCacheControl.java +++ b/core/src/main/java/com/linecorp/armeria/common/ServerCacheControl.java @@ -22,11 +22,11 @@ import java.util.Map; import java.util.function.BiConsumer; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; -import com.linecorp.armeria.common.annotation.Nullable; - /** * Directives for HTTP caching mechanisms in responses. * diff --git a/core/src/main/java/com/linecorp/armeria/common/ServerCacheControlBuilder.java b/core/src/main/java/com/linecorp/armeria/common/ServerCacheControlBuilder.java index fe92433ff77..f7b34de9cf1 100644 --- a/core/src/main/java/com/linecorp/armeria/common/ServerCacheControlBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/common/ServerCacheControlBuilder.java @@ -17,7 +17,7 @@ import java.time.Duration; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * Creates a new {@link ServerCacheControl} using the builder pattern. diff --git a/core/src/main/java/com/linecorp/armeria/common/SessionProtocol.java b/core/src/main/java/com/linecorp/armeria/common/SessionProtocol.java index 0d04e323718..64a722a17a9 100644 --- a/core/src/main/java/com/linecorp/armeria/common/SessionProtocol.java +++ b/core/src/main/java/com/linecorp/armeria/common/SessionProtocol.java @@ -23,11 +23,12 @@ import java.util.Map; import java.util.Set; +import org.jspecify.annotations.Nullable; + import com.google.common.base.Ascii; import com.google.common.collect.ImmutableMap; import com.google.common.collect.Sets; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/StreamTimeoutException.java b/core/src/main/java/com/linecorp/armeria/common/StreamTimeoutException.java index 112183f3f78..ea914ee3485 100644 --- a/core/src/main/java/com/linecorp/armeria/common/StreamTimeoutException.java +++ b/core/src/main/java/com/linecorp/armeria/common/StreamTimeoutException.java @@ -18,7 +18,8 @@ import java.time.Duration; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.stream.StreamMessage; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/StringMultimap.java b/core/src/main/java/com/linecorp/armeria/common/StringMultimap.java index 5e64edf5711..7f1da9255e6 100644 --- a/core/src/main/java/com/linecorp/armeria/common/StringMultimap.java +++ b/core/src/main/java/com/linecorp/armeria/common/StringMultimap.java @@ -48,12 +48,13 @@ import java.util.function.Consumer; import java.util.function.Predicate; +import org.jspecify.annotations.Nullable; + import com.google.common.annotations.VisibleForTesting; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; import com.google.common.collect.Iterators; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.util.StringUtil; import io.netty.handler.codec.DateFormatter; diff --git a/core/src/main/java/com/linecorp/armeria/common/StringMultimapBuilder.java b/core/src/main/java/com/linecorp/armeria/common/StringMultimapBuilder.java index ef75c855f5f..a851f0b1030 100644 --- a/core/src/main/java/com/linecorp/armeria/common/StringMultimapBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/common/StringMultimapBuilder.java @@ -29,11 +29,11 @@ import java.util.function.Consumer; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; -import com.linecorp.armeria.common.annotation.Nullable; - /** * Skeletal builder implementation of {@link StringMultimap} and/or its subtypes. * diff --git a/core/src/main/java/com/linecorp/armeria/common/StringMultimapGetters.java b/core/src/main/java/com/linecorp/armeria/common/StringMultimapGetters.java index a689418c912..aeefc1661c5 100644 --- a/core/src/main/java/com/linecorp/armeria/common/StringMultimapGetters.java +++ b/core/src/main/java/com/linecorp/armeria/common/StringMultimapGetters.java @@ -23,7 +23,7 @@ import java.util.function.Consumer; import java.util.stream.Stream; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * Provides the getter methods to {@link StringMultimap}. diff --git a/core/src/main/java/com/linecorp/armeria/common/StringValueConverter.java b/core/src/main/java/com/linecorp/armeria/common/StringValueConverter.java index a7fcfc4f103..6310f160367 100644 --- a/core/src/main/java/com/linecorp/armeria/common/StringValueConverter.java +++ b/core/src/main/java/com/linecorp/armeria/common/StringValueConverter.java @@ -35,7 +35,8 @@ import java.util.Calendar; import java.util.Date; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.internal.common.util.StringUtil; import io.netty.handler.codec.DateFormatter; diff --git a/core/src/main/java/com/linecorp/armeria/common/SystemPropertyFlagsProvider.java b/core/src/main/java/com/linecorp/armeria/common/SystemPropertyFlagsProvider.java index 990bcee8d1b..01719eb571d 100644 --- a/core/src/main/java/com/linecorp/armeria/common/SystemPropertyFlagsProvider.java +++ b/core/src/main/java/com/linecorp/armeria/common/SystemPropertyFlagsProvider.java @@ -28,6 +28,7 @@ import java.util.function.Predicate; import java.util.stream.Collectors; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -37,7 +38,6 @@ import com.google.common.collect.Streams; import com.linecorp.armeria.client.ResponseTimeoutMode; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.multipart.MultipartFilenameDecodingMode; import com.linecorp.armeria.common.util.InetAddressPredicates; import com.linecorp.armeria.common.util.Sampler; diff --git a/core/src/main/java/com/linecorp/armeria/common/ThreadLocalRequestContextStorage.java b/core/src/main/java/com/linecorp/armeria/common/ThreadLocalRequestContextStorage.java index cc110929c89..c266acef72b 100644 --- a/core/src/main/java/com/linecorp/armeria/common/ThreadLocalRequestContextStorage.java +++ b/core/src/main/java/com/linecorp/armeria/common/ThreadLocalRequestContextStorage.java @@ -19,7 +19,7 @@ import static com.linecorp.armeria.internal.common.RequestContextUtil.newIllegalContextPoppingException; import static java.util.Objects.requireNonNull; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; import io.netty.util.concurrent.FastThreadLocal; import io.netty.util.internal.InternalThreadLocalMap; diff --git a/core/src/main/java/com/linecorp/armeria/common/TimeoutException.java b/core/src/main/java/com/linecorp/armeria/common/TimeoutException.java index d48a5d519b1..fc486830cb4 100644 --- a/core/src/main/java/com/linecorp/armeria/common/TimeoutException.java +++ b/core/src/main/java/com/linecorp/armeria/common/TimeoutException.java @@ -16,7 +16,7 @@ package com.linecorp.armeria.common; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * A {@link RuntimeException} raised when a requested invocation does not complete before its deadline. diff --git a/core/src/main/java/com/linecorp/armeria/common/TlsKeyPair.java b/core/src/main/java/com/linecorp/armeria/common/TlsKeyPair.java index 51f5f2a8092..dfdc2a6a3dc 100644 --- a/core/src/main/java/com/linecorp/armeria/common/TlsKeyPair.java +++ b/core/src/main/java/com/linecorp/armeria/common/TlsKeyPair.java @@ -28,10 +28,11 @@ import java.security.cert.X509Certificate; import java.util.List; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.google.common.collect.ImmutableList; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.util.SystemInfo; import com.linecorp.armeria.internal.common.util.SelfSignedCertificate; diff --git a/core/src/main/java/com/linecorp/armeria/common/TlsProvider.java b/core/src/main/java/com/linecorp/armeria/common/TlsProvider.java index 28672f83099..5a7a5eb78eb 100644 --- a/core/src/main/java/com/linecorp/armeria/common/TlsProvider.java +++ b/core/src/main/java/com/linecorp/armeria/common/TlsProvider.java @@ -25,10 +25,11 @@ import java.util.function.Consumer; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.linecorp.armeria.client.ClientFactory; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.server.Server; diff --git a/core/src/main/java/com/linecorp/armeria/common/TlsSetters.java b/core/src/main/java/com/linecorp/armeria/common/TlsSetters.java index cf42957a4f6..7a1a47c63cb 100644 --- a/core/src/main/java/com/linecorp/armeria/common/TlsSetters.java +++ b/core/src/main/java/com/linecorp/armeria/common/TlsSetters.java @@ -24,7 +24,8 @@ import javax.net.ssl.KeyManagerFactory; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; import io.netty.handler.ssl.SslContextBuilder; diff --git a/core/src/main/java/com/linecorp/armeria/common/annotation/NonNullByDefault.java b/core/src/main/java/com/linecorp/armeria/common/annotation/NonNullByDefault.java index c9922723077..c0e20beca99 100644 --- a/core/src/main/java/com/linecorp/armeria/common/annotation/NonNullByDefault.java +++ b/core/src/main/java/com/linecorp/armeria/common/annotation/NonNullByDefault.java @@ -24,10 +24,15 @@ import javax.annotation.Nonnull; import javax.annotation.meta.TypeQualifierDefault; +import org.jspecify.annotations.NullMarked; + /** * Indicates the return values, parameters and fields are non-nullable by default. Annotate a package with * this annotation and annotate nullable return values, parameters and fields with {@link Nullable}. + * + * @deprecated use {@link NullMarked} */ +@Deprecated @Nonnull @Documented @Target(ElementType.PACKAGE) diff --git a/core/src/main/java/com/linecorp/armeria/common/annotation/Nullable.java b/core/src/main/java/com/linecorp/armeria/common/annotation/Nullable.java index cec410020e9..bbc51c5e727 100644 --- a/core/src/main/java/com/linecorp/armeria/common/annotation/Nullable.java +++ b/core/src/main/java/com/linecorp/armeria/common/annotation/Nullable.java @@ -29,7 +29,10 @@ /** * Indicates the return values, parameters and fields are nullable. * @see NonNullByDefault + * + * @deprecated use {@link org.jspecify.annotations.Nullable} */ +@Deprecated @Documented @TypeQualifierNickname @Nonnull(when = When.MAYBE) diff --git a/core/src/main/java/com/linecorp/armeria/common/annotation/package-info.java b/core/src/main/java/com/linecorp/armeria/common/annotation/package-info.java index 8d0cf73c8af..c563d7740cf 100644 --- a/core/src/main/java/com/linecorp/armeria/common/annotation/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/common/annotation/package-info.java @@ -17,5 +17,7 @@ /** * Common annotations. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.common.annotation; + +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/common/auth/AuthUtil.java b/core/src/main/java/com/linecorp/armeria/common/auth/AuthUtil.java index 1957e6f86ef..6fc94124e56 100644 --- a/core/src/main/java/com/linecorp/armeria/common/auth/AuthUtil.java +++ b/core/src/main/java/com/linecorp/armeria/common/auth/AuthUtil.java @@ -16,7 +16,7 @@ package com.linecorp.armeria.common.auth; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; final class AuthUtil { diff --git a/core/src/main/java/com/linecorp/armeria/common/auth/BasicToken.java b/core/src/main/java/com/linecorp/armeria/common/auth/BasicToken.java index 8d023b653e1..a13db55951e 100644 --- a/core/src/main/java/com/linecorp/armeria/common/auth/BasicToken.java +++ b/core/src/main/java/com/linecorp/armeria/common/auth/BasicToken.java @@ -23,10 +23,11 @@ import java.util.Base64; import java.util.Objects; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.linecorp.armeria.common.HttpHeaderNames; -import com.linecorp.armeria.common.annotation.Nullable; /** * The bearer token of diff --git a/core/src/main/java/com/linecorp/armeria/common/auth/OAuth1aToken.java b/core/src/main/java/com/linecorp/armeria/common/auth/OAuth1aToken.java index 8e7501f3799..f5d3531ca39 100644 --- a/core/src/main/java/com/linecorp/armeria/common/auth/OAuth1aToken.java +++ b/core/src/main/java/com/linecorp/armeria/common/auth/OAuth1aToken.java @@ -23,10 +23,11 @@ import java.util.Map.Entry; import java.util.Objects; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.linecorp.armeria.common.HttpHeaderNames; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.util.TemporaryThreadLocals; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/auth/OAuth1aTokenBuilder.java b/core/src/main/java/com/linecorp/armeria/common/auth/OAuth1aTokenBuilder.java index 97dd9739219..7b87b4e0c07 100644 --- a/core/src/main/java/com/linecorp/armeria/common/auth/OAuth1aTokenBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/common/auth/OAuth1aTokenBuilder.java @@ -30,11 +30,11 @@ import java.util.Map; import java.util.Map.Entry; +import org.jspecify.annotations.Nullable; + import com.google.common.base.Ascii; import com.google.common.collect.ImmutableMap; -import com.linecorp.armeria.common.annotation.Nullable; - /** * Builds a new {@link OAuth1aToken}. */ diff --git a/core/src/main/java/com/linecorp/armeria/common/auth/OAuth2Token.java b/core/src/main/java/com/linecorp/armeria/common/auth/OAuth2Token.java index 96781862de4..d9dfee452e0 100644 --- a/core/src/main/java/com/linecorp/armeria/common/auth/OAuth2Token.java +++ b/core/src/main/java/com/linecorp/armeria/common/auth/OAuth2Token.java @@ -19,8 +19,9 @@ import static com.linecorp.armeria.common.auth.AuthUtil.secureEquals; import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpHeaderNames; -import com.linecorp.armeria.common.annotation.Nullable; /** * The bearer token of OAuth 2.0 authentication. diff --git a/core/src/main/java/com/linecorp/armeria/common/auth/package-info.java b/core/src/main/java/com/linecorp/armeria/common/auth/package-info.java index 840ccb6c924..ac8800820d0 100644 --- a/core/src/main/java/com/linecorp/armeria/common/auth/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/common/auth/package-info.java @@ -17,7 +17,7 @@ /** * HTTP authorization common. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.common.auth; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/common/circuitbreaker/CircuitBreakerCallback.java b/core/src/main/java/com/linecorp/armeria/common/circuitbreaker/CircuitBreakerCallback.java index ded24c946f4..d8bbbfc91d9 100644 --- a/core/src/main/java/com/linecorp/armeria/common/circuitbreaker/CircuitBreakerCallback.java +++ b/core/src/main/java/com/linecorp/armeria/common/circuitbreaker/CircuitBreakerCallback.java @@ -16,11 +16,12 @@ package com.linecorp.armeria.common.circuitbreaker; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.circuitbreaker.CircuitBreaker; import com.linecorp.armeria.client.circuitbreaker.CircuitBreakerClient; import com.linecorp.armeria.client.circuitbreaker.CircuitBreakerClientHandler; import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/circuitbreaker/package-info.java b/core/src/main/java/com/linecorp/armeria/common/circuitbreaker/package-info.java index 36808aa1863..55c8b376d01 100644 --- a/core/src/main/java/com/linecorp/armeria/common/circuitbreaker/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/common/circuitbreaker/package-info.java @@ -17,7 +17,7 @@ /** * Provides the common classes for {@link com.linecorp.armeria.client.circuitbreaker.CircuitBreaker}. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.common.circuitbreaker; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/common/encoding/AbstractStreamDecoder.java b/core/src/main/java/com/linecorp/armeria/common/encoding/AbstractStreamDecoder.java index 6286ba02204..46964c470a0 100644 --- a/core/src/main/java/com/linecorp/armeria/common/encoding/AbstractStreamDecoder.java +++ b/core/src/main/java/com/linecorp/armeria/common/encoding/AbstractStreamDecoder.java @@ -16,9 +16,10 @@ package com.linecorp.armeria.common.encoding; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.ContentTooLargeException; import com.linecorp.armeria.common.HttpData; -import com.linecorp.armeria.common.annotation.Nullable; import io.netty.buffer.ByteBuf; import io.netty.buffer.ByteBufAllocator; diff --git a/core/src/main/java/com/linecorp/armeria/common/encoding/package-info.java b/core/src/main/java/com/linecorp/armeria/common/encoding/package-info.java index fc200c960d2..6228650d9e2 100644 --- a/core/src/main/java/com/linecorp/armeria/common/encoding/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/common/encoding/package-info.java @@ -17,7 +17,7 @@ /** * Provides the common classes for HTTP content encoding. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.common.encoding; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/common/loadbalancer/AbstractRampingUpLoadBalancerBuilder.java b/core/src/main/java/com/linecorp/armeria/common/loadbalancer/AbstractRampingUpLoadBalancerBuilder.java index e73a2731d63..8e0744b5df6 100644 --- a/core/src/main/java/com/linecorp/armeria/common/loadbalancer/AbstractRampingUpLoadBalancerBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/common/loadbalancer/AbstractRampingUpLoadBalancerBuilder.java @@ -23,8 +23,9 @@ import java.time.Duration; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.CommonPools; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.util.Ticker; diff --git a/core/src/main/java/com/linecorp/armeria/common/loadbalancer/LoadBalancer.java b/core/src/main/java/com/linecorp/armeria/common/loadbalancer/LoadBalancer.java index 97cf708f47f..ca0540cc43c 100644 --- a/core/src/main/java/com/linecorp/armeria/common/loadbalancer/LoadBalancer.java +++ b/core/src/main/java/com/linecorp/armeria/common/loadbalancer/LoadBalancer.java @@ -21,11 +21,12 @@ import java.util.function.ToIntFunction; import java.util.function.ToLongFunction; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.linecorp.armeria.client.Endpoint; import com.linecorp.armeria.common.HttpRequest; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.util.SafeCloseable; diff --git a/core/src/main/java/com/linecorp/armeria/common/loadbalancer/RampingUpLoadBalancer.java b/core/src/main/java/com/linecorp/armeria/common/loadbalancer/RampingUpLoadBalancer.java index f73e80f042d..8df0ffb7532 100644 --- a/core/src/main/java/com/linecorp/armeria/common/loadbalancer/RampingUpLoadBalancer.java +++ b/core/src/main/java/com/linecorp/armeria/common/loadbalancer/RampingUpLoadBalancer.java @@ -28,6 +28,7 @@ import java.util.function.Function; import java.util.function.ToIntFunction; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -37,7 +38,6 @@ import com.google.common.math.IntMath; import com.google.common.primitives.Ints; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Ticker; import com.linecorp.armeria.internal.common.loadbalancer.WeightedObject; import com.linecorp.armeria.internal.common.util.ReentrantShortLock; diff --git a/core/src/main/java/com/linecorp/armeria/common/loadbalancer/RampingUpLoadBalancerBuilder.java b/core/src/main/java/com/linecorp/armeria/common/loadbalancer/RampingUpLoadBalancerBuilder.java index 6fa6341410c..1d9dfde5ce6 100644 --- a/core/src/main/java/com/linecorp/armeria/common/loadbalancer/RampingUpLoadBalancerBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/common/loadbalancer/RampingUpLoadBalancerBuilder.java @@ -19,10 +19,11 @@ import java.util.List; import java.util.function.ToIntFunction; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.linecorp.armeria.common.CommonPools; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import io.netty.util.concurrent.EventExecutor; diff --git a/core/src/main/java/com/linecorp/armeria/common/loadbalancer/RoundRobinLoadBalancer.java b/core/src/main/java/com/linecorp/armeria/common/loadbalancer/RoundRobinLoadBalancer.java index d8f30be2fb1..6deddea58fd 100644 --- a/core/src/main/java/com/linecorp/armeria/common/loadbalancer/RoundRobinLoadBalancer.java +++ b/core/src/main/java/com/linecorp/armeria/common/loadbalancer/RoundRobinLoadBalancer.java @@ -19,11 +19,11 @@ import java.util.List; import java.util.concurrent.atomic.AtomicInteger; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.google.common.collect.ImmutableList; -import com.linecorp.armeria.common.annotation.Nullable; - /** * A round robin {@link LoadBalancer}. * diff --git a/core/src/main/java/com/linecorp/armeria/common/loadbalancer/SimpleLoadBalancer.java b/core/src/main/java/com/linecorp/armeria/common/loadbalancer/SimpleLoadBalancer.java index 82855b0cff8..eab537b7f32 100644 --- a/core/src/main/java/com/linecorp/armeria/common/loadbalancer/SimpleLoadBalancer.java +++ b/core/src/main/java/com/linecorp/armeria/common/loadbalancer/SimpleLoadBalancer.java @@ -16,7 +16,8 @@ package com.linecorp.armeria.common.loadbalancer; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/loadbalancer/StickyLoadBalancer.java b/core/src/main/java/com/linecorp/armeria/common/loadbalancer/StickyLoadBalancer.java index ce97b8d95d3..f3d0685de13 100644 --- a/core/src/main/java/com/linecorp/armeria/common/loadbalancer/StickyLoadBalancer.java +++ b/core/src/main/java/com/linecorp/armeria/common/loadbalancer/StickyLoadBalancer.java @@ -19,12 +19,12 @@ import java.util.List; import java.util.function.ToLongFunction; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.google.common.collect.ImmutableList; import com.google.common.hash.Hashing; -import com.linecorp.armeria.common.annotation.Nullable; - final class StickyLoadBalancer implements LoadBalancer { private final ToLongFunction contextHasher; diff --git a/core/src/main/java/com/linecorp/armeria/common/loadbalancer/WeightedRandomLoadBalancer.java b/core/src/main/java/com/linecorp/armeria/common/loadbalancer/WeightedRandomLoadBalancer.java index 8c828c9a9fa..8d6b61f014c 100644 --- a/core/src/main/java/com/linecorp/armeria/common/loadbalancer/WeightedRandomLoadBalancer.java +++ b/core/src/main/java/com/linecorp/armeria/common/loadbalancer/WeightedRandomLoadBalancer.java @@ -25,12 +25,13 @@ import java.util.concurrent.locks.ReentrantLock; import java.util.function.ToIntFunction; +import org.jspecify.annotations.Nullable; + import com.google.common.annotations.VisibleForTesting; import com.google.common.base.MoreObjects; import com.google.common.collect.Streams; import com.google.errorprone.annotations.concurrent.GuardedBy; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.loadbalancer.WeightedObject; import com.linecorp.armeria.internal.common.util.ReentrantShortLock; diff --git a/core/src/main/java/com/linecorp/armeria/common/loadbalancer/WeightedRoundRobinLoadBalancer.java b/core/src/main/java/com/linecorp/armeria/common/loadbalancer/WeightedRoundRobinLoadBalancer.java index b96d2110870..0571473a698 100644 --- a/core/src/main/java/com/linecorp/armeria/common/loadbalancer/WeightedRoundRobinLoadBalancer.java +++ b/core/src/main/java/com/linecorp/armeria/common/loadbalancer/WeightedRoundRobinLoadBalancer.java @@ -23,6 +23,7 @@ import java.util.concurrent.atomic.AtomicInteger; import java.util.function.ToIntFunction; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -31,7 +32,6 @@ import com.google.common.collect.Iterables; import com.google.common.collect.Streams; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.loadbalancer.WeightedObject; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/loadbalancer/package-info.java b/core/src/main/java/com/linecorp/armeria/common/loadbalancer/package-info.java index c5ea97a2536..a07f640e85e 100644 --- a/core/src/main/java/com/linecorp/armeria/common/loadbalancer/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/common/loadbalancer/package-info.java @@ -17,9 +17,10 @@ /** * Provides classes for load balancing. */ -@NonNullByDefault +@NullMarked @UnstableApi package com.linecorp.armeria.common.loadbalancer; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/core/src/main/java/com/linecorp/armeria/common/logging/AbstractHeadersSanitizerBuilder.java b/core/src/main/java/com/linecorp/armeria/common/logging/AbstractHeadersSanitizerBuilder.java index 09e4f8c0b6f..0a83bba1f9f 100644 --- a/core/src/main/java/com/linecorp/armeria/common/logging/AbstractHeadersSanitizerBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/common/logging/AbstractHeadersSanitizerBuilder.java @@ -22,10 +22,11 @@ import java.util.Set; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableSet; import com.linecorp.armeria.common.HttpHeaderNames; -import com.linecorp.armeria.common.annotation.Nullable; import io.netty.util.AsciiString; diff --git a/core/src/main/java/com/linecorp/armeria/common/logging/AbstractLogFormatterBuilder.java b/core/src/main/java/com/linecorp/armeria/common/logging/AbstractLogFormatterBuilder.java index 33d77e8885e..9716e38d292 100644 --- a/core/src/main/java/com/linecorp/armeria/common/logging/AbstractLogFormatterBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/common/logging/AbstractLogFormatterBuilder.java @@ -21,9 +21,10 @@ import java.util.function.BiFunction; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; /** * A skeletal builder implementation for {@link LogFormatter}. diff --git a/core/src/main/java/com/linecorp/armeria/common/logging/BeanFieldInfo.java b/core/src/main/java/com/linecorp/armeria/common/logging/BeanFieldInfo.java index 455b5a226d2..7262f68c3f5 100644 --- a/core/src/main/java/com/linecorp/armeria/common/logging/BeanFieldInfo.java +++ b/core/src/main/java/com/linecorp/armeria/common/logging/BeanFieldInfo.java @@ -18,7 +18,8 @@ import java.lang.annotation.Annotation; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/logging/BuiltInProperty.java b/core/src/main/java/com/linecorp/armeria/common/logging/BuiltInProperty.java index 72b4ba45212..07a1baabe39 100644 --- a/core/src/main/java/com/linecorp/armeria/common/logging/BuiltInProperty.java +++ b/core/src/main/java/com/linecorp/armeria/common/logging/BuiltInProperty.java @@ -29,6 +29,8 @@ import javax.net.ssl.SSLSession; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableMap; import com.google.common.io.BaseEncoding; @@ -43,7 +45,6 @@ import com.linecorp.armeria.common.RpcRequest; import com.linecorp.armeria.common.RpcResponse; import com.linecorp.armeria.common.Scheme; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.internal.common.util.StringUtil; import com.linecorp.armeria.server.HttpService; diff --git a/core/src/main/java/com/linecorp/armeria/common/logging/ContentPreviewer.java b/core/src/main/java/com/linecorp/armeria/common/logging/ContentPreviewer.java index 2a57728a21d..e956071eb8f 100644 --- a/core/src/main/java/com/linecorp/armeria/common/logging/ContentPreviewer.java +++ b/core/src/main/java/com/linecorp/armeria/common/logging/ContentPreviewer.java @@ -16,8 +16,9 @@ package com.linecorp.armeria.common.logging; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpData; -import com.linecorp.armeria.common.annotation.Nullable; /** * Produces the preview of {@link RequestLog}. diff --git a/core/src/main/java/com/linecorp/armeria/common/logging/DefaultRequestLog.java b/core/src/main/java/com/linecorp/armeria/common/logging/DefaultRequestLog.java index dac13587ebc..476d22ee30c 100644 --- a/core/src/main/java/com/linecorp/armeria/common/logging/DefaultRequestLog.java +++ b/core/src/main/java/com/linecorp/armeria/common/logging/DefaultRequestLog.java @@ -59,6 +59,7 @@ import javax.net.ssl.SSLSession; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -80,7 +81,6 @@ import com.linecorp.armeria.common.Scheme; import com.linecorp.armeria.common.SerializationFormat; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.EventLoopCheckingFuture; import com.linecorp.armeria.common.util.SystemInfo; import com.linecorp.armeria.common.util.UnmodifiableFuture; @@ -496,8 +496,7 @@ private static void completeSatisfiedFutures(RequestLogFuture[] satisfiedFutures } } - @Nullable - private RequestLogFuture[] removeSatisfiedFutures(List pendingFutures) { + private RequestLogFuture @Nullable [] removeSatisfiedFutures(List pendingFutures) { if (pendingFutures.isEmpty()) { return null; } diff --git a/core/src/main/java/com/linecorp/armeria/common/logging/ExportGroupBuilder.java b/core/src/main/java/com/linecorp/armeria/common/logging/ExportGroupBuilder.java index f40ee9cef89..0f5429c77d4 100644 --- a/core/src/main/java/com/linecorp/armeria/common/logging/ExportGroupBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/common/logging/ExportGroupBuilder.java @@ -21,10 +21,11 @@ import java.util.Set; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableSet; import com.linecorp.armeria.common.HttpHeaderNames; -import com.linecorp.armeria.common.annotation.Nullable; import io.netty.util.AsciiString; import io.netty.util.AttributeKey; diff --git a/core/src/main/java/com/linecorp/armeria/common/logging/FieldMasker.java b/core/src/main/java/com/linecorp/armeria/common/logging/FieldMasker.java index 8f507701872..e54b5e5b4a7 100644 --- a/core/src/main/java/com/linecorp/armeria/common/logging/FieldMasker.java +++ b/core/src/main/java/com/linecorp/armeria/common/logging/FieldMasker.java @@ -16,8 +16,9 @@ package com.linecorp.armeria.common.logging; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.logging.FieldMaskers.FallThroughFieldMasker; import com.linecorp.armeria.common.logging.FieldMaskers.NoMaskFieldMasker; diff --git a/core/src/main/java/com/linecorp/armeria/common/logging/FieldMaskerBuilder.java b/core/src/main/java/com/linecorp/armeria/common/logging/FieldMaskerBuilder.java index 7465062bb92..d0984ae02d9 100644 --- a/core/src/main/java/com/linecorp/armeria/common/logging/FieldMaskerBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/common/logging/FieldMaskerBuilder.java @@ -21,11 +21,12 @@ import java.util.List; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.google.common.collect.ImmutableList; import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/logging/FieldMaskers.java b/core/src/main/java/com/linecorp/armeria/common/logging/FieldMaskers.java index 09ebb70cd76..0f001d95704 100644 --- a/core/src/main/java/com/linecorp/armeria/common/logging/FieldMaskers.java +++ b/core/src/main/java/com/linecorp/armeria/common/logging/FieldMaskers.java @@ -16,7 +16,7 @@ package com.linecorp.armeria.common.logging; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; final class FieldMaskers { diff --git a/core/src/main/java/com/linecorp/armeria/common/logging/HeaderMaskingFunction.java b/core/src/main/java/com/linecorp/armeria/common/logging/HeaderMaskingFunction.java index c665f2446cb..7a682e55272 100644 --- a/core/src/main/java/com/linecorp/armeria/common/logging/HeaderMaskingFunction.java +++ b/core/src/main/java/com/linecorp/armeria/common/logging/HeaderMaskingFunction.java @@ -16,7 +16,7 @@ package com.linecorp.armeria.common.logging; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; import io.netty.util.AsciiString; diff --git a/core/src/main/java/com/linecorp/armeria/common/logging/HeadersSanitizer.java b/core/src/main/java/com/linecorp/armeria/common/logging/HeadersSanitizer.java index 4811b7fa78d..a973c17dae2 100644 --- a/core/src/main/java/com/linecorp/armeria/common/logging/HeadersSanitizer.java +++ b/core/src/main/java/com/linecorp/armeria/common/logging/HeadersSanitizer.java @@ -18,12 +18,13 @@ import java.util.function.BiFunction; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.databind.JsonNode; import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; /** * A sanitizer that sanitizes {@link HttpHeaders}. diff --git a/core/src/main/java/com/linecorp/armeria/common/logging/JsonHeadersSanitizerBuilder.java b/core/src/main/java/com/linecorp/armeria/common/logging/JsonHeadersSanitizerBuilder.java index 48a70be0737..4899b6b42a3 100644 --- a/core/src/main/java/com/linecorp/armeria/common/logging/JsonHeadersSanitizerBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/common/logging/JsonHeadersSanitizerBuilder.java @@ -18,10 +18,11 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.JacksonUtil; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/logging/JsonLogFormatter.java b/core/src/main/java/com/linecorp/armeria/common/logging/JsonLogFormatter.java index 1164d2e3947..1b29e04ec27 100644 --- a/core/src/main/java/com/linecorp/armeria/common/logging/JsonLogFormatter.java +++ b/core/src/main/java/com/linecorp/armeria/common/logging/JsonLogFormatter.java @@ -21,6 +21,7 @@ import java.util.List; import java.util.function.BiFunction; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -31,7 +32,6 @@ import com.linecorp.armeria.common.RequestContext; import com.linecorp.armeria.common.SerializationFormat; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.util.TextFormatter; diff --git a/core/src/main/java/com/linecorp/armeria/common/logging/LengthLimitingContentPreviewer.java b/core/src/main/java/com/linecorp/armeria/common/logging/LengthLimitingContentPreviewer.java index ea70a972806..86e23548491 100644 --- a/core/src/main/java/com/linecorp/armeria/common/logging/LengthLimitingContentPreviewer.java +++ b/core/src/main/java/com/linecorp/armeria/common/logging/LengthLimitingContentPreviewer.java @@ -22,12 +22,13 @@ import java.util.ArrayList; import java.util.List; +import org.jspecify.annotations.Nullable; + import com.google.common.math.IntMath; import com.google.common.primitives.Ints; import com.linecorp.armeria.common.ByteBufAccessMode; import com.linecorp.armeria.common.HttpData; -import com.linecorp.armeria.common.annotation.Nullable; import io.netty.buffer.ByteBuf; import io.netty.buffer.Unpooled; diff --git a/core/src/main/java/com/linecorp/armeria/common/logging/LogLevel.java b/core/src/main/java/com/linecorp/armeria/common/logging/LogLevel.java index fdffdb28fa3..84896df6214 100644 --- a/core/src/main/java/com/linecorp/armeria/common/logging/LogLevel.java +++ b/core/src/main/java/com/linecorp/armeria/common/logging/LogLevel.java @@ -17,10 +17,9 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; -import com.linecorp.armeria.common.annotation.Nullable; - /** * Log level. */ diff --git a/core/src/main/java/com/linecorp/armeria/common/logging/LogWriterBuilder.java b/core/src/main/java/com/linecorp/armeria/common/logging/LogWriterBuilder.java index 2a3e0f38f8a..6813e4468ee 100644 --- a/core/src/main/java/com/linecorp/armeria/common/logging/LogWriterBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/common/logging/LogWriterBuilder.java @@ -22,13 +22,13 @@ import java.util.function.BiPredicate; import java.util.function.Predicate; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.HttpStatusClass; import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/logging/LoggingDecoratorBuilder.java b/core/src/main/java/com/linecorp/armeria/common/logging/LoggingDecoratorBuilder.java index 6eacfed7396..828ed825dba 100644 --- a/core/src/main/java/com/linecorp/armeria/common/logging/LoggingDecoratorBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/common/logging/LoggingDecoratorBuilder.java @@ -22,6 +22,7 @@ import java.util.function.Function; import java.util.function.Predicate; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -29,7 +30,6 @@ import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.HttpStatusClass; import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/logging/NoopContentPreviewer.java b/core/src/main/java/com/linecorp/armeria/common/logging/NoopContentPreviewer.java index ec61dafd732..b7bb8ec246f 100644 --- a/core/src/main/java/com/linecorp/armeria/common/logging/NoopContentPreviewer.java +++ b/core/src/main/java/com/linecorp/armeria/common/logging/NoopContentPreviewer.java @@ -16,8 +16,9 @@ package com.linecorp.armeria.common.logging; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpData; -import com.linecorp.armeria.common.annotation.Nullable; /** * A skeletal {@link ContentPreviewer} implementation in order for a user to implement only the methods diff --git a/core/src/main/java/com/linecorp/armeria/common/logging/PreviewSpec.java b/core/src/main/java/com/linecorp/armeria/common/logging/PreviewSpec.java index 6706def7e71..83843d74dd5 100644 --- a/core/src/main/java/com/linecorp/armeria/common/logging/PreviewSpec.java +++ b/core/src/main/java/com/linecorp/armeria/common/logging/PreviewSpec.java @@ -19,9 +19,10 @@ import java.util.function.BiFunction; import java.util.function.BiPredicate; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import io.netty.buffer.ByteBuf; diff --git a/core/src/main/java/com/linecorp/armeria/common/logging/RegexBasedSanitizer.java b/core/src/main/java/com/linecorp/armeria/common/logging/RegexBasedSanitizer.java index 524727618a8..54facd48339 100644 --- a/core/src/main/java/com/linecorp/armeria/common/logging/RegexBasedSanitizer.java +++ b/core/src/main/java/com/linecorp/armeria/common/logging/RegexBasedSanitizer.java @@ -22,10 +22,11 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; /** * Regex based sanitizer. diff --git a/core/src/main/java/com/linecorp/armeria/common/logging/RequestContextExporter.java b/core/src/main/java/com/linecorp/armeria/common/logging/RequestContextExporter.java index 96bd382cef5..e7ff7a1b2b5 100644 --- a/core/src/main/java/com/linecorp/armeria/common/logging/RequestContextExporter.java +++ b/core/src/main/java/com/linecorp/armeria/common/logging/RequestContextExporter.java @@ -26,13 +26,14 @@ import java.util.Set; import java.util.concurrent.atomic.AtomicLong; +import org.jspecify.annotations.Nullable; + import com.google.common.annotations.VisibleForTesting; import com.google.common.collect.ImmutableMap; import com.google.common.collect.ImmutableSet; import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.ExportGroupBuilder.ExportEntry; import io.netty.util.AsciiString; @@ -61,15 +62,11 @@ public static RequestContextExporterBuilder builder() { @Nullable private final BuiltInProperties builtInProperties; - @Nullable - private final ExportEntry[] builtInPropertyArray; - @Nullable - private final ExportEntry>[] attrs; + private final ExportEntry @Nullable [] builtInPropertyArray; + private final ExportEntry> @Nullable [] attrs; private final int numAttrs; - @Nullable - private final ExportEntry[] reqHeaders; - @Nullable - private final ExportEntry[] resHeaders; + private final ExportEntry @Nullable [] reqHeaders; + private final ExportEntry @Nullable [] resHeaders; RequestContextExporter(Set> builtInPropertySet, Set>> attrs, @@ -329,8 +326,7 @@ private static final class State extends Object2ObjectOpenHashMap{@link com.linecorp.armeria.common.logging.RequestLogBuilder} * */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.common.logging; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/common/metric/AbstractMetricCollectingBuilder.java b/core/src/main/java/com/linecorp/armeria/common/metric/AbstractMetricCollectingBuilder.java index 62e551252c7..75b32330146 100644 --- a/core/src/main/java/com/linecorp/armeria/common/metric/AbstractMetricCollectingBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/common/metric/AbstractMetricCollectingBuilder.java @@ -19,10 +19,11 @@ import java.util.function.BiPredicate; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.ClientBuilder; import com.linecorp.armeria.common.RequestContext; import com.linecorp.armeria.common.SuccessFunction; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.server.ServerBuilder; diff --git a/core/src/main/java/com/linecorp/armeria/common/metric/DropwizardMeterRegistries.java b/core/src/main/java/com/linecorp/armeria/common/metric/DropwizardMeterRegistries.java index a9f1b9aae80..3bd4f3895a5 100644 --- a/core/src/main/java/com/linecorp/armeria/common/metric/DropwizardMeterRegistries.java +++ b/core/src/main/java/com/linecorp/armeria/common/metric/DropwizardMeterRegistries.java @@ -19,11 +19,11 @@ import static java.util.Comparator.comparing; import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.codahale.metrics.MetricRegistry; import com.google.common.annotations.VisibleForTesting; -import com.linecorp.armeria.common.annotation.Nullable; - import io.micrometer.core.instrument.Clock; import io.micrometer.core.instrument.Meter; import io.micrometer.core.instrument.Tag; diff --git a/core/src/main/java/com/linecorp/armeria/common/metric/MeterIdPrefix.java b/core/src/main/java/com/linecorp/armeria/common/metric/MeterIdPrefix.java index 861074edab4..a7ebc0811ad 100644 --- a/core/src/main/java/com/linecorp/armeria/common/metric/MeterIdPrefix.java +++ b/core/src/main/java/com/linecorp/armeria/common/metric/MeterIdPrefix.java @@ -24,9 +24,9 @@ import java.util.Collections; import java.util.List; -import com.google.common.collect.ImmutableList; +import org.jspecify.annotations.Nullable; -import com.linecorp.armeria.common.annotation.Nullable; +import com.google.common.collect.ImmutableList; import io.micrometer.core.instrument.Meter; import io.micrometer.core.instrument.Tag; diff --git a/core/src/main/java/com/linecorp/armeria/common/metric/NoopMeterRegistry.java b/core/src/main/java/com/linecorp/armeria/common/metric/NoopMeterRegistry.java index 8b2ea89aa15..9bddbfc5542 100644 --- a/core/src/main/java/com/linecorp/armeria/common/metric/NoopMeterRegistry.java +++ b/core/src/main/java/com/linecorp/armeria/common/metric/NoopMeterRegistry.java @@ -20,7 +20,7 @@ import java.util.function.ToDoubleFunction; import java.util.function.ToLongFunction; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; import io.micrometer.core.instrument.Clock; import io.micrometer.core.instrument.Counter; diff --git a/core/src/main/java/com/linecorp/armeria/common/metric/package-info.java b/core/src/main/java/com/linecorp/armeria/common/metric/package-info.java index cf85d26963b..d8900b2dbcb 100644 --- a/core/src/main/java/com/linecorp/armeria/common/metric/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/common/metric/package-info.java @@ -17,7 +17,7 @@ /** * Common metric collection utilities. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.common.metric; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/common/multipart/AggregatedBodyPart.java b/core/src/main/java/com/linecorp/armeria/common/multipart/AggregatedBodyPart.java index 49bb88bf4a0..cba645efa56 100644 --- a/core/src/main/java/com/linecorp/armeria/common/multipart/AggregatedBodyPart.java +++ b/core/src/main/java/com/linecorp/armeria/common/multipart/AggregatedBodyPart.java @@ -17,11 +17,12 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.AggregatedHttpObject; import com.linecorp.armeria.common.ContentDisposition; import com.linecorp.armeria.common.HttpData; import com.linecorp.armeria.common.HttpHeaders; -import com.linecorp.armeria.common.annotation.Nullable; /** * A complete body part whose headers and content are readily available. diff --git a/core/src/main/java/com/linecorp/armeria/common/multipart/AggregatedMultipart.java b/core/src/main/java/com/linecorp/armeria/common/multipart/AggregatedMultipart.java index 68103853452..abd70e76ecf 100644 --- a/core/src/main/java/com/linecorp/armeria/common/multipart/AggregatedMultipart.java +++ b/core/src/main/java/com/linecorp/armeria/common/multipart/AggregatedMultipart.java @@ -23,9 +23,9 @@ import java.util.List; import java.util.Set; -import com.google.common.collect.ImmutableList; +import org.jspecify.annotations.Nullable; -import com.linecorp.armeria.common.annotation.Nullable; +import com.google.common.collect.ImmutableList; /** * A complete multipart whose body parts are readily available. diff --git a/core/src/main/java/com/linecorp/armeria/common/multipart/BodyPart.java b/core/src/main/java/com/linecorp/armeria/common/multipart/BodyPart.java index faadcda3d40..f0f5fa95772 100644 --- a/core/src/main/java/com/linecorp/armeria/common/multipart/BodyPart.java +++ b/core/src/main/java/com/linecorp/armeria/common/multipart/BodyPart.java @@ -23,6 +23,7 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.ExecutorService; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; import com.google.errorprone.annotations.CheckReturnValue; @@ -31,7 +32,6 @@ import com.linecorp.armeria.common.HttpData; import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.MediaType; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.ByteStreamMessage; import com.linecorp.armeria.common.stream.StreamMessage; diff --git a/core/src/main/java/com/linecorp/armeria/common/multipart/BodyPartBuilder.java b/core/src/main/java/com/linecorp/armeria/common/multipart/BodyPartBuilder.java index 1a526c030e0..d2968044220 100644 --- a/core/src/main/java/com/linecorp/armeria/common/multipart/BodyPartBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/common/multipart/BodyPartBuilder.java @@ -22,6 +22,7 @@ import java.nio.file.Path; import java.util.List; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; import com.google.common.collect.ImmutableList; @@ -30,7 +31,6 @@ import com.linecorp.armeria.common.HttpData; import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.MediaType; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.ByteStreamMessage; import com.linecorp.armeria.common.stream.StreamMessage; diff --git a/core/src/main/java/com/linecorp/armeria/common/multipart/DefaultBodyPart.java b/core/src/main/java/com/linecorp/armeria/common/multipart/DefaultBodyPart.java index 739151274ce..6cffe117b8a 100644 --- a/core/src/main/java/com/linecorp/armeria/common/multipart/DefaultBodyPart.java +++ b/core/src/main/java/com/linecorp/armeria/common/multipart/DefaultBodyPart.java @@ -22,11 +22,12 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.ExecutorService; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.linecorp.armeria.common.HttpData; import com.linecorp.armeria.common.HttpHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.ByteStreamMessage; import com.linecorp.armeria.common.stream.StreamMessages; import com.linecorp.armeria.internal.common.HttpObjectAggregator; diff --git a/core/src/main/java/com/linecorp/armeria/common/multipart/DefaultMultipart.java b/core/src/main/java/com/linecorp/armeria/common/multipart/DefaultMultipart.java index f0206dd6807..0367222487e 100644 --- a/core/src/main/java/com/linecorp/armeria/common/multipart/DefaultMultipart.java +++ b/core/src/main/java/com/linecorp/armeria/common/multipart/DefaultMultipart.java @@ -23,6 +23,7 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.ThreadLocalRandom; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; @@ -39,7 +40,6 @@ import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.ByteStreamMessage; import com.linecorp.armeria.common.stream.StreamMessage; import com.linecorp.armeria.common.stream.SubscriptionOption; diff --git a/core/src/main/java/com/linecorp/armeria/common/multipart/MimeParser.java b/core/src/main/java/com/linecorp/armeria/common/multipart/MimeParser.java index 7ad1a7486a9..9513dc10684 100644 --- a/core/src/main/java/com/linecorp/armeria/common/multipart/MimeParser.java +++ b/core/src/main/java/com/linecorp/armeria/common/multipart/MimeParser.java @@ -33,6 +33,7 @@ import java.nio.charset.StandardCharsets; import java.util.regex.Pattern; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -40,7 +41,6 @@ import com.linecorp.armeria.common.HttpData; import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.HttpHeadersBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.multipart.MultipartDecoder.BodyPartPublisher; import com.linecorp.armeria.common.stream.StreamDecoderInput; import com.linecorp.armeria.common.stream.StreamDecoderOutput; diff --git a/core/src/main/java/com/linecorp/armeria/common/multipart/Multipart.java b/core/src/main/java/com/linecorp/armeria/common/multipart/Multipart.java index 3b264fbae5a..126dfa5430d 100644 --- a/core/src/main/java/com/linecorp/armeria/common/multipart/Multipart.java +++ b/core/src/main/java/com/linecorp/armeria/common/multipart/Multipart.java @@ -24,6 +24,7 @@ import java.util.concurrent.CompletableFuture; import java.util.function.Function; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; import org.reactivestreams.Subscriber; @@ -38,7 +39,6 @@ import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.stream.ByteStreamMessage; import com.linecorp.armeria.common.stream.StreamMessage; diff --git a/core/src/main/java/com/linecorp/armeria/common/multipart/MultipartDecoder.java b/core/src/main/java/com/linecorp/armeria/common/multipart/MultipartDecoder.java index c0672443a8d..35de17a594d 100644 --- a/core/src/main/java/com/linecorp/armeria/common/multipart/MultipartDecoder.java +++ b/core/src/main/java/com/linecorp/armeria/common/multipart/MultipartDecoder.java @@ -21,13 +21,13 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.atomic.AtomicReferenceFieldUpdater; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; import com.google.common.math.LongMath; import com.linecorp.armeria.common.HttpData; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.AbortedStreamException; import com.linecorp.armeria.common.stream.CancelledSubscriptionException; import com.linecorp.armeria.common.stream.DefaultStreamMessage; diff --git a/core/src/main/java/com/linecorp/armeria/common/multipart/MultipartEncoder.java b/core/src/main/java/com/linecorp/armeria/common/multipart/MultipartEncoder.java index 04c7178b93b..3c8eae12637 100644 --- a/core/src/main/java/com/linecorp/armeria/common/multipart/MultipartEncoder.java +++ b/core/src/main/java/com/linecorp/armeria/common/multipart/MultipartEncoder.java @@ -22,11 +22,11 @@ import java.util.concurrent.atomic.AtomicIntegerFieldUpdater; import java.util.concurrent.atomic.AtomicReferenceFieldUpdater; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; import com.linecorp.armeria.common.HttpData; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.AbortedStreamException; import com.linecorp.armeria.common.stream.CancelledSubscriptionException; import com.linecorp.armeria.common.stream.DefaultStreamMessage; diff --git a/core/src/main/java/com/linecorp/armeria/common/multipart/package-info.java b/core/src/main/java/com/linecorp/armeria/common/multipart/package-info.java index 31320554fa4..59549da0e36 100644 --- a/core/src/main/java/com/linecorp/armeria/common/multipart/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/common/multipart/package-info.java @@ -17,7 +17,7 @@ /** * Multiple part messages support. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.common.multipart; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/common/outlier/DefaultOutlierDetector.java b/core/src/main/java/com/linecorp/armeria/common/outlier/DefaultOutlierDetector.java index fe73be356dd..332b5a5e6ca 100644 --- a/core/src/main/java/com/linecorp/armeria/common/outlier/DefaultOutlierDetector.java +++ b/core/src/main/java/com/linecorp/armeria/common/outlier/DefaultOutlierDetector.java @@ -18,9 +18,10 @@ import java.time.Duration; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.EventCount; import com.linecorp.armeria.common.util.EventCounter; import com.linecorp.armeria.common.util.Ticker; diff --git a/core/src/main/java/com/linecorp/armeria/common/outlier/OutlierDetectingRuleBuilder.java b/core/src/main/java/com/linecorp/armeria/common/outlier/OutlierDetectingRuleBuilder.java index f1674993737..3fce95b4ac3 100644 --- a/core/src/main/java/com/linecorp/armeria/common/outlier/OutlierDetectingRuleBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/common/outlier/OutlierDetectingRuleBuilder.java @@ -22,10 +22,11 @@ import java.util.function.BiFunction; import java.util.function.Predicate; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.RequestContext; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/outlier/OutlierRule.java b/core/src/main/java/com/linecorp/armeria/common/outlier/OutlierRule.java index 2d210fa56a3..647ff6d2f6d 100644 --- a/core/src/main/java/com/linecorp/armeria/common/outlier/OutlierRule.java +++ b/core/src/main/java/com/linecorp/armeria/common/outlier/OutlierRule.java @@ -19,9 +19,10 @@ import static com.linecorp.armeria.common.outlier.OutlierDetectingRuleBuilder.DEFAULT_RULE; import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.RequestContext; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/outlier/package-info.java b/core/src/main/java/com/linecorp/armeria/common/outlier/package-info.java index 7e7ac1447ad..ee3f95ae029 100644 --- a/core/src/main/java/com/linecorp/armeria/common/outlier/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/common/outlier/package-info.java @@ -17,9 +17,10 @@ /** * Provides classes for detecting outliers. */ -@NonNullByDefault +@NullMarked @UnstableApi package com.linecorp.armeria.common.outlier; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/core/src/main/java/com/linecorp/armeria/common/package-info.java b/core/src/main/java/com/linecorp/armeria/common/package-info.java index 09a203a53b9..fc59f42904e 100644 --- a/core/src/main/java/com/linecorp/armeria/common/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/common/package-info.java @@ -22,7 +22,7 @@ *

  • {@link com.linecorp.armeria.common.RequestContext}
  • * */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.common; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/common/sse/DefaultServerSentEvent.java b/core/src/main/java/com/linecorp/armeria/common/sse/DefaultServerSentEvent.java index 8eba5be73e6..1b5beca59ef 100644 --- a/core/src/main/java/com/linecorp/armeria/common/sse/DefaultServerSentEvent.java +++ b/core/src/main/java/com/linecorp/armeria/common/sse/DefaultServerSentEvent.java @@ -18,9 +18,9 @@ import java.time.Duration; import java.util.Objects; -import com.google.common.base.MoreObjects; +import org.jspecify.annotations.Nullable; -import com.linecorp.armeria.common.annotation.Nullable; +import com.google.common.base.MoreObjects; /** * A default implementation of the {@link ServerSentEvent} interface. diff --git a/core/src/main/java/com/linecorp/armeria/common/sse/ServerSentEvent.java b/core/src/main/java/com/linecorp/armeria/common/sse/ServerSentEvent.java index 0227cf1adbc..09363c78ab6 100644 --- a/core/src/main/java/com/linecorp/armeria/common/sse/ServerSentEvent.java +++ b/core/src/main/java/com/linecorp/armeria/common/sse/ServerSentEvent.java @@ -18,9 +18,9 @@ import java.time.Duration; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.annotation.ProducesEventStream; import com.linecorp.armeria.server.annotation.ServerSentEventResponseConverterFunction; diff --git a/core/src/main/java/com/linecorp/armeria/common/sse/ServerSentEventBuilder.java b/core/src/main/java/com/linecorp/armeria/common/sse/ServerSentEventBuilder.java index ecb0d847b45..bbb6ab99a61 100644 --- a/core/src/main/java/com/linecorp/armeria/common/sse/ServerSentEventBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/common/sse/ServerSentEventBuilder.java @@ -19,7 +19,7 @@ import java.time.Duration; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * A builder which creates a {@link ServerSentEvent} instance. diff --git a/core/src/main/java/com/linecorp/armeria/common/sse/package-info.java b/core/src/main/java/com/linecorp/armeria/common/sse/package-info.java index 3942c3649b9..47311a2a6a1 100644 --- a/core/src/main/java/com/linecorp/armeria/common/sse/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/common/sse/package-info.java @@ -17,7 +17,7 @@ /** * Server-Sent Events support. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.common.sse; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/common/stream/AbstractByteStreamMessageBuilder.java b/core/src/main/java/com/linecorp/armeria/common/stream/AbstractByteStreamMessageBuilder.java index ea46e82841a..0b3f6b14e79 100644 --- a/core/src/main/java/com/linecorp/armeria/common/stream/AbstractByteStreamMessageBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/common/stream/AbstractByteStreamMessageBuilder.java @@ -21,8 +21,9 @@ import java.util.concurrent.ExecutorService; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpData; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.stream.InternalStreamMessageUtil; abstract class AbstractByteStreamMessageBuilder> { diff --git a/core/src/main/java/com/linecorp/armeria/common/stream/AggregationSupport.java b/core/src/main/java/com/linecorp/armeria/common/stream/AggregationSupport.java index 726c989739f..4cb2bd90503 100644 --- a/core/src/main/java/com/linecorp/armeria/common/stream/AggregationSupport.java +++ b/core/src/main/java/com/linecorp/armeria/common/stream/AggregationSupport.java @@ -24,6 +24,8 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.atomic.AtomicReferenceFieldUpdater; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.AggregatedHttpMessage; import com.linecorp.armeria.common.AggregationOptions; import com.linecorp.armeria.common.HttpMessage; @@ -31,7 +33,6 @@ import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.internal.common.HttpMessageAggregator; diff --git a/core/src/main/java/com/linecorp/armeria/common/stream/AsyncFileWriter.java b/core/src/main/java/com/linecorp/armeria/common/stream/AsyncFileWriter.java index fa9679476a5..2ceda594c56 100644 --- a/core/src/main/java/com/linecorp/armeria/common/stream/AsyncFileWriter.java +++ b/core/src/main/java/com/linecorp/armeria/common/stream/AsyncFileWriter.java @@ -30,6 +30,7 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.ExecutorService; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; import org.slf4j.Logger; @@ -38,7 +39,6 @@ import com.google.common.collect.Maps; import com.linecorp.armeria.common.HttpData; -import com.linecorp.armeria.common.annotation.Nullable; import io.netty.buffer.ByteBuf; import io.netty.util.concurrent.EventExecutor; diff --git a/core/src/main/java/com/linecorp/armeria/common/stream/AsyncMapStreamMessage.java b/core/src/main/java/com/linecorp/armeria/common/stream/AsyncMapStreamMessage.java index f1b46fed5f2..6f2cb96f11b 100644 --- a/core/src/main/java/com/linecorp/armeria/common/stream/AsyncMapStreamMessage.java +++ b/core/src/main/java/com/linecorp/armeria/common/stream/AsyncMapStreamMessage.java @@ -21,13 +21,13 @@ import java.util.concurrent.CompletableFuture; import java.util.function.Function; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; import com.google.common.math.IntMath; import com.google.common.math.LongMath; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.stream.StreamMessageUtil; import io.netty.util.concurrent.EventExecutor; diff --git a/core/src/main/java/com/linecorp/armeria/common/stream/CancellableStreamMessage.java b/core/src/main/java/com/linecorp/armeria/common/stream/CancellableStreamMessage.java index 20cb59e0fca..b4b941d93ee 100644 --- a/core/src/main/java/com/linecorp/armeria/common/stream/CancellableStreamMessage.java +++ b/core/src/main/java/com/linecorp/armeria/common/stream/CancellableStreamMessage.java @@ -26,6 +26,7 @@ import java.util.concurrent.CompletableFuture; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; import org.slf4j.Logger; @@ -33,7 +34,6 @@ import com.google.common.base.MoreObjects; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.CompositeException; import com.linecorp.armeria.common.util.EventLoopCheckingFuture; import com.linecorp.armeria.internal.common.stream.AbortingSubscriber; diff --git a/core/src/main/java/com/linecorp/armeria/common/stream/ClosedStreamException.java b/core/src/main/java/com/linecorp/armeria/common/stream/ClosedStreamException.java index 996c4210156..8b484fef1bb 100644 --- a/core/src/main/java/com/linecorp/armeria/common/stream/ClosedStreamException.java +++ b/core/src/main/java/com/linecorp/armeria/common/stream/ClosedStreamException.java @@ -16,8 +16,9 @@ package com.linecorp.armeria.common.stream; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.Flags; -import com.linecorp.armeria.common.annotation.Nullable; /** * A {@link RuntimeException} that is raised when a {@link StreamMessage} or an HTTP/2 stream diff --git a/core/src/main/java/com/linecorp/armeria/common/stream/ConcatArrayStreamMessage.java b/core/src/main/java/com/linecorp/armeria/common/stream/ConcatArrayStreamMessage.java index b4a64ad2f5a..0509b6fe696 100644 --- a/core/src/main/java/com/linecorp/armeria/common/stream/ConcatArrayStreamMessage.java +++ b/core/src/main/java/com/linecorp/armeria/common/stream/ConcatArrayStreamMessage.java @@ -39,10 +39,10 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.atomic.AtomicIntegerFieldUpdater; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.stream.NoopSubscription; import com.linecorp.armeria.internal.common.stream.SubscriptionArbiter; diff --git a/core/src/main/java/com/linecorp/armeria/common/stream/ConcatPublisherStreamMessage.java b/core/src/main/java/com/linecorp/armeria/common/stream/ConcatPublisherStreamMessage.java index 15d46071389..8f412100faa 100644 --- a/core/src/main/java/com/linecorp/armeria/common/stream/ConcatPublisherStreamMessage.java +++ b/core/src/main/java/com/linecorp/armeria/common/stream/ConcatPublisherStreamMessage.java @@ -22,11 +22,11 @@ import java.util.concurrent.atomic.AtomicIntegerFieldUpdater; import java.util.concurrent.atomic.AtomicReferenceFieldUpdater; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.stream.NoopSubscription; import com.linecorp.armeria.internal.common.stream.SubscriptionArbiter; diff --git a/core/src/main/java/com/linecorp/armeria/common/stream/DefaultByteStreamMessage.java b/core/src/main/java/com/linecorp/armeria/common/stream/DefaultByteStreamMessage.java index 9a5491088e8..a1304d2249f 100644 --- a/core/src/main/java/com/linecorp/armeria/common/stream/DefaultByteStreamMessage.java +++ b/core/src/main/java/com/linecorp/armeria/common/stream/DefaultByteStreamMessage.java @@ -22,6 +22,7 @@ import java.util.concurrent.CompletableFuture; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; @@ -29,7 +30,6 @@ import com.linecorp.armeria.common.ByteBufAccessMode; import com.linecorp.armeria.common.HttpData; -import com.linecorp.armeria.common.annotation.Nullable; import io.netty.buffer.ByteBuf; import io.netty.util.concurrent.EventExecutor; diff --git a/core/src/main/java/com/linecorp/armeria/common/stream/DefaultStreamMessage.java b/core/src/main/java/com/linecorp/armeria/common/stream/DefaultStreamMessage.java index 8c872644da3..28b6f17b275 100644 --- a/core/src/main/java/com/linecorp/armeria/common/stream/DefaultStreamMessage.java +++ b/core/src/main/java/com/linecorp/armeria/common/stream/DefaultStreamMessage.java @@ -25,11 +25,11 @@ import java.util.concurrent.atomic.AtomicReferenceFieldUpdater; import org.jctools.queues.MpscChunkedArrayQueue; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.internal.common.stream.AbortingSubscriber; import com.linecorp.armeria.internal.common.stream.StreamMessageUtil; diff --git a/core/src/main/java/com/linecorp/armeria/common/stream/DefaultStreamMessageDuplicator.java b/core/src/main/java/com/linecorp/armeria/common/stream/DefaultStreamMessageDuplicator.java index 2f4734c45de..c5bfe19537f 100644 --- a/core/src/main/java/com/linecorp/armeria/common/stream/DefaultStreamMessageDuplicator.java +++ b/core/src/main/java/com/linecorp/armeria/common/stream/DefaultStreamMessageDuplicator.java @@ -36,6 +36,7 @@ import java.util.concurrent.atomic.AtomicLongFieldUpdater; import java.util.concurrent.atomic.AtomicReferenceFieldUpdater; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; import org.slf4j.Logger; @@ -49,7 +50,6 @@ import com.linecorp.armeria.common.ByteBufAccessMode; import com.linecorp.armeria.common.ContentTooLargeException; import com.linecorp.armeria.common.HttpData; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.util.CompositeException; import com.linecorp.armeria.common.util.EventLoopCheckingFuture; @@ -887,9 +887,8 @@ static final class SignalQueue { private final SignalLengthGetter signalLengthGetter; - @Nullable @VisibleForTesting - volatile Object[] elements; + volatile Object @Nullable [] elements; private volatile int head; private volatile int tail; private volatile int size; diff --git a/core/src/main/java/com/linecorp/armeria/common/stream/DeferredStreamMessage.java b/core/src/main/java/com/linecorp/armeria/common/stream/DeferredStreamMessage.java index 880eccf5857..a04928b1074 100644 --- a/core/src/main/java/com/linecorp/armeria/common/stream/DeferredStreamMessage.java +++ b/core/src/main/java/com/linecorp/armeria/common/stream/DeferredStreamMessage.java @@ -27,13 +27,13 @@ import java.util.concurrent.atomic.AtomicIntegerFieldUpdater; import java.util.concurrent.atomic.AtomicReferenceFieldUpdater; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; import com.google.common.math.LongMath; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.util.CompletionActions; import com.linecorp.armeria.common.util.CompositeException; @@ -102,8 +102,7 @@ public class DeferredStreamMessage extends CancellableStreamMessage { @Nullable private volatile CompletableFuture> collectingFuture; - @Nullable - private SubscriptionOption[] collectionOptions; + private SubscriptionOption @Nullable [] collectionOptions; @Nullable private EventExecutor collectingExecutor; diff --git a/core/src/main/java/com/linecorp/armeria/common/stream/FilteredStreamMessage.java b/core/src/main/java/com/linecorp/armeria/common/stream/FilteredStreamMessage.java index 6c7feff61f5..878c6cb0294 100644 --- a/core/src/main/java/com/linecorp/armeria/common/stream/FilteredStreamMessage.java +++ b/core/src/main/java/com/linecorp/armeria/common/stream/FilteredStreamMessage.java @@ -23,13 +23,13 @@ import java.util.concurrent.CompletableFuture; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.linecorp.armeria.common.HttpData; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.internal.common.stream.StreamMessageUtil; import com.linecorp.armeria.unsafe.PooledObjects; diff --git a/core/src/main/java/com/linecorp/armeria/common/stream/FlatMapStreamMessage.java b/core/src/main/java/com/linecorp/armeria/common/stream/FlatMapStreamMessage.java index af72743ac37..d897ec1563f 100644 --- a/core/src/main/java/com/linecorp/armeria/common/stream/FlatMapStreamMessage.java +++ b/core/src/main/java/com/linecorp/armeria/common/stream/FlatMapStreamMessage.java @@ -28,13 +28,13 @@ import java.util.concurrent.CompletableFuture; import java.util.function.Function; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; import com.google.common.collect.ImmutableSet; import com.google.common.math.LongMath; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.EventLoopCheckingFuture; import com.linecorp.armeria.internal.common.stream.StreamMessageUtil; diff --git a/core/src/main/java/com/linecorp/armeria/common/stream/FuseableStreamMessage.java b/core/src/main/java/com/linecorp/armeria/common/stream/FuseableStreamMessage.java index 5777b99be7b..f1665957967 100644 --- a/core/src/main/java/com/linecorp/armeria/common/stream/FuseableStreamMessage.java +++ b/core/src/main/java/com/linecorp/armeria/common/stream/FuseableStreamMessage.java @@ -25,13 +25,13 @@ import java.util.function.Function; import java.util.function.Predicate; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; import com.google.common.annotations.VisibleForTesting; import com.google.common.collect.ImmutableList; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.CompositeException; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.internal.common.stream.NonOverridableStreamMessageWrapper; diff --git a/core/src/main/java/com/linecorp/armeria/common/stream/InputStreamStreamMessage.java b/core/src/main/java/com/linecorp/armeria/common/stream/InputStreamStreamMessage.java index d040049ca56..03aa5e0cc32 100644 --- a/core/src/main/java/com/linecorp/armeria/common/stream/InputStreamStreamMessage.java +++ b/core/src/main/java/com/linecorp/armeria/common/stream/InputStreamStreamMessage.java @@ -27,6 +27,7 @@ import java.util.concurrent.ExecutorService; import java.util.concurrent.atomic.AtomicIntegerFieldUpdater; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; import org.slf4j.Logger; @@ -37,7 +38,6 @@ import com.linecorp.armeria.common.CommonPools; import com.linecorp.armeria.common.HttpData; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.EventLoopCheckingFuture; import com.linecorp.armeria.internal.common.stream.NoopSubscription; import com.linecorp.armeria.server.ServiceRequestContext; diff --git a/core/src/main/java/com/linecorp/armeria/common/stream/PathStreamMessage.java b/core/src/main/java/com/linecorp/armeria/common/stream/PathStreamMessage.java index f6ef3236c28..1f97e7d70fd 100644 --- a/core/src/main/java/com/linecorp/armeria/common/stream/PathStreamMessage.java +++ b/core/src/main/java/com/linecorp/armeria/common/stream/PathStreamMessage.java @@ -32,6 +32,7 @@ import java.util.concurrent.ExecutorService; import java.util.concurrent.atomic.AtomicIntegerFieldUpdater; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; import org.slf4j.Logger; @@ -42,7 +43,6 @@ import com.google.common.primitives.Ints; import com.linecorp.armeria.common.HttpData; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.EventLoopCheckingFuture; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.internal.common.stream.NoopSubscription; diff --git a/core/src/main/java/com/linecorp/armeria/common/stream/PublisherBasedStreamMessage.java b/core/src/main/java/com/linecorp/armeria/common/stream/PublisherBasedStreamMessage.java index 98f1a7d3e5c..97315a35dd4 100644 --- a/core/src/main/java/com/linecorp/armeria/common/stream/PublisherBasedStreamMessage.java +++ b/core/src/main/java/com/linecorp/armeria/common/stream/PublisherBasedStreamMessage.java @@ -25,6 +25,7 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.atomic.AtomicReferenceFieldUpdater; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; @@ -34,7 +35,6 @@ import com.google.common.annotations.VisibleForTesting; import com.google.common.math.LongMath; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.util.CompositeException; import com.linecorp.armeria.common.util.EventLoopCheckingFuture; diff --git a/core/src/main/java/com/linecorp/armeria/common/stream/StreamMessage.java b/core/src/main/java/com/linecorp/armeria/common/stream/StreamMessage.java index df621d8f02a..9fbdb49b877 100644 --- a/core/src/main/java/com/linecorp/armeria/common/stream/StreamMessage.java +++ b/core/src/main/java/com/linecorp/armeria/common/stream/StreamMessage.java @@ -39,6 +39,7 @@ import java.util.function.Function; import java.util.function.Predicate; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; @@ -51,7 +52,6 @@ import com.linecorp.armeria.common.HttpData; import com.linecorp.armeria.common.RequestContext; import com.linecorp.armeria.common.StreamTimeoutException; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.internal.common.stream.AbortedStreamMessage; diff --git a/core/src/main/java/com/linecorp/armeria/common/stream/StreamMessageCollector.java b/core/src/main/java/com/linecorp/armeria/common/stream/StreamMessageCollector.java index fa8cbc0ce80..a0dd6df4b2f 100644 --- a/core/src/main/java/com/linecorp/armeria/common/stream/StreamMessageCollector.java +++ b/core/src/main/java/com/linecorp/armeria/common/stream/StreamMessageCollector.java @@ -23,12 +23,12 @@ import java.util.List; import java.util.concurrent.CompletableFuture; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; import com.google.common.collect.ImmutableList; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.stream.StreamMessageUtil; final class StreamMessageCollector implements Subscriber { @@ -36,8 +36,7 @@ final class StreamMessageCollector implements Subscriber { private final CompletableFuture> future = new CompletableFuture<>(); private final boolean withPooledObjects; - @Nullable - private ImmutableList.Builder elementsBuilder = ImmutableList.builder(); + private ImmutableList.@Nullable Builder elementsBuilder = ImmutableList.builder(); StreamMessageCollector(SubscriptionOption... options) { withPooledObjects = containsWithPooledObjects(options); diff --git a/core/src/main/java/com/linecorp/armeria/common/stream/StreamMessageInputStream.java b/core/src/main/java/com/linecorp/armeria/common/stream/StreamMessageInputStream.java index 05c855755fe..6dbe6397686 100644 --- a/core/src/main/java/com/linecorp/armeria/common/stream/StreamMessageInputStream.java +++ b/core/src/main/java/com/linecorp/armeria/common/stream/StreamMessageInputStream.java @@ -23,11 +23,11 @@ import java.util.concurrent.CompletableFuture; import java.util.function.Function; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; import com.linecorp.armeria.common.HttpData; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.stream.ByteBufsInputStream; import com.linecorp.armeria.internal.common.stream.StreamMessageUtil; diff --git a/core/src/main/java/com/linecorp/armeria/common/stream/TimeoutStreamMessage.java b/core/src/main/java/com/linecorp/armeria/common/stream/TimeoutStreamMessage.java index 4e13c462d68..09881cd808d 100644 --- a/core/src/main/java/com/linecorp/armeria/common/stream/TimeoutStreamMessage.java +++ b/core/src/main/java/com/linecorp/armeria/common/stream/TimeoutStreamMessage.java @@ -22,11 +22,11 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.TimeUnit; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; import com.linecorp.armeria.common.StreamTimeoutException; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.unsafe.PooledObjects; import io.netty.util.concurrent.EventExecutor; diff --git a/core/src/main/java/com/linecorp/armeria/common/stream/package-info.java b/core/src/main/java/com/linecorp/armeria/common/stream/package-info.java index 0b5e9617828..e8aa16e8989 100644 --- a/core/src/main/java/com/linecorp/armeria/common/stream/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/common/stream/package-info.java @@ -23,7 +23,7 @@ *
  • {@link com.linecorp.armeria.common.stream.StreamWriter}
  • * */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.common.stream; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/common/util/AbstractListenable.java b/core/src/main/java/com/linecorp/armeria/common/util/AbstractListenable.java index ee7b67eb513..0672415407e 100644 --- a/core/src/main/java/com/linecorp/armeria/common/util/AbstractListenable.java +++ b/core/src/main/java/com/linecorp/armeria/common/util/AbstractListenable.java @@ -21,9 +21,10 @@ import java.util.concurrent.locks.ReentrantLock; import java.util.function.Consumer; +import org.jspecify.annotations.Nullable; + import com.google.errorprone.annotations.concurrent.GuardedBy; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.util.IdentityHashStrategy; import com.linecorp.armeria.internal.common.util.ReentrantShortLock; diff --git a/core/src/main/java/com/linecorp/armeria/common/util/AbstractThreadFactory.java b/core/src/main/java/com/linecorp/armeria/common/util/AbstractThreadFactory.java index 2b52244afe4..2bb42a4280b 100644 --- a/core/src/main/java/com/linecorp/armeria/common/util/AbstractThreadFactory.java +++ b/core/src/main/java/com/linecorp/armeria/common/util/AbstractThreadFactory.java @@ -22,7 +22,7 @@ import java.util.concurrent.ThreadFactory; import java.util.function.Function; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; import io.netty.util.concurrent.DefaultThreadFactory; diff --git a/core/src/main/java/com/linecorp/armeria/common/util/AbstractUnwrappable.java b/core/src/main/java/com/linecorp/armeria/common/util/AbstractUnwrappable.java index d1ccb61751e..376ddd46052 100644 --- a/core/src/main/java/com/linecorp/armeria/common/util/AbstractUnwrappable.java +++ b/core/src/main/java/com/linecorp/armeria/common/util/AbstractUnwrappable.java @@ -17,7 +17,7 @@ import static java.util.Objects.requireNonNull; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * Skeletal {@link Unwrappable} implementation. diff --git a/core/src/main/java/com/linecorp/armeria/common/util/AsyncLoader.java b/core/src/main/java/com/linecorp/armeria/common/util/AsyncLoader.java index 47af9791db9..dfa969ab0e1 100644 --- a/core/src/main/java/com/linecorp/armeria/common/util/AsyncLoader.java +++ b/core/src/main/java/com/linecorp/armeria/common/util/AsyncLoader.java @@ -19,7 +19,8 @@ import java.util.concurrent.CompletableFuture; import java.util.function.Function; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/util/AsyncLoaderBuilder.java b/core/src/main/java/com/linecorp/armeria/common/util/AsyncLoaderBuilder.java index 87cefb88f3c..953834ea6be 100644 --- a/core/src/main/java/com/linecorp/armeria/common/util/AsyncLoaderBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/common/util/AsyncLoaderBuilder.java @@ -25,7 +25,8 @@ import java.util.function.Function; import java.util.function.Predicate; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/util/CompletionActions.java b/core/src/main/java/com/linecorp/armeria/common/util/CompletionActions.java index fc93fac25fa..c481d6a16e2 100644 --- a/core/src/main/java/com/linecorp/armeria/common/util/CompletionActions.java +++ b/core/src/main/java/com/linecorp/armeria/common/util/CompletionActions.java @@ -18,11 +18,10 @@ import java.util.concurrent.CompletionStage; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import com.linecorp.armeria.common.annotation.Nullable; - /** * Provides the common actions that are useful when handling a {@link CompletionStage}. */ diff --git a/core/src/main/java/com/linecorp/armeria/common/util/CompositeException.java b/core/src/main/java/com/linecorp/armeria/common/util/CompositeException.java index f030df86d8f..bbafccfbdb3 100644 --- a/core/src/main/java/com/linecorp/armeria/common/util/CompositeException.java +++ b/core/src/main/java/com/linecorp/armeria/common/util/CompositeException.java @@ -41,12 +41,13 @@ import java.util.Set; import java.util.concurrent.locks.ReentrantLock; +import org.jspecify.annotations.Nullable; + import com.google.common.annotations.VisibleForTesting; import com.google.common.base.Strings; import com.google.common.collect.ImmutableList; import com.linecorp.armeria.common.Flags; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.util.ReentrantShortLock; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/util/DefaultAsyncLoader.java b/core/src/main/java/com/linecorp/armeria/common/util/DefaultAsyncLoader.java index 90f934e6e69..ad6ed304126 100644 --- a/core/src/main/java/com/linecorp/armeria/common/util/DefaultAsyncLoader.java +++ b/core/src/main/java/com/linecorp/armeria/common/util/DefaultAsyncLoader.java @@ -27,13 +27,13 @@ import javax.annotation.Nonnull; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.google.common.base.MoreObjects; import com.linecorp.armeria.common.CommonPools; -import com.linecorp.armeria.common.annotation.Nullable; final class DefaultAsyncLoader implements AsyncLoader { diff --git a/core/src/main/java/com/linecorp/armeria/common/util/DomainSocketAddress.java b/core/src/main/java/com/linecorp/armeria/common/util/DomainSocketAddress.java index bdc9503c7d1..3f7d68e61b2 100644 --- a/core/src/main/java/com/linecorp/armeria/common/util/DomainSocketAddress.java +++ b/core/src/main/java/com/linecorp/armeria/common/util/DomainSocketAddress.java @@ -25,8 +25,9 @@ import java.util.Map; import java.util.Set; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.Endpoint; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.internal.common.util.DomainSocketUtil; @@ -98,9 +99,8 @@ public static boolean isDomainSocketAddress(InetAddress addr) { private String authority; @Nullable private Endpoint endpoint; - @Nullable @SuppressWarnings("NullableOnContainingClass") // ErrorProne false positive - private io.netty.channel.unix.DomainSocketAddress nettyAddress; + private io.netty.channel.unix.@Nullable DomainSocketAddress nettyAddress; private DomainSocketAddress(String path) { super(DomainSocketUtil.toInetAddress(requireNonNull(path, "path")), diff --git a/core/src/main/java/com/linecorp/armeria/common/util/EventCount.java b/core/src/main/java/com/linecorp/armeria/common/util/EventCount.java index 5f4e3dce4d0..bcdd281f6cc 100644 --- a/core/src/main/java/com/linecorp/armeria/common/util/EventCount.java +++ b/core/src/main/java/com/linecorp/armeria/common/util/EventCount.java @@ -18,7 +18,8 @@ import static com.google.common.base.Preconditions.checkArgument; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/util/EventCounter.java b/core/src/main/java/com/linecorp/armeria/common/util/EventCounter.java index 8d1fbd8ef44..11ac2eb7e97 100644 --- a/core/src/main/java/com/linecorp/armeria/common/util/EventCounter.java +++ b/core/src/main/java/com/linecorp/armeria/common/util/EventCounter.java @@ -20,7 +20,8 @@ import java.time.Duration; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/util/EventLoopCheckingFuture.java b/core/src/main/java/com/linecorp/armeria/common/util/EventLoopCheckingFuture.java index 7f0de4de3c3..5449fbbe5a3 100644 --- a/core/src/main/java/com/linecorp/armeria/common/util/EventLoopCheckingFuture.java +++ b/core/src/main/java/com/linecorp/armeria/common/util/EventLoopCheckingFuture.java @@ -25,6 +25,7 @@ import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeoutException; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -32,7 +33,6 @@ import com.linecorp.armeria.common.Flags; import com.linecorp.armeria.common.NonBlocking; -import com.linecorp.armeria.common.annotation.Nullable; /** * A {@link CompletableFuture} that warns the user if they call a method that blocks the event loop. diff --git a/core/src/main/java/com/linecorp/armeria/common/util/EventLoopThreadFactory.java b/core/src/main/java/com/linecorp/armeria/common/util/EventLoopThreadFactory.java index cec35977649..fa5fd3fa737 100644 --- a/core/src/main/java/com/linecorp/armeria/common/util/EventLoopThreadFactory.java +++ b/core/src/main/java/com/linecorp/armeria/common/util/EventLoopThreadFactory.java @@ -19,7 +19,8 @@ import java.util.concurrent.ThreadFactory; import java.util.function.Function; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.internal.common.util.EventLoopThread; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/util/Exceptions.java b/core/src/main/java/com/linecorp/armeria/common/util/Exceptions.java index 8839cff07a2..07b47ec9d63 100644 --- a/core/src/main/java/com/linecorp/armeria/common/util/Exceptions.java +++ b/core/src/main/java/com/linecorp/armeria/common/util/Exceptions.java @@ -33,6 +33,7 @@ import javax.net.ssl.SSLException; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -43,7 +44,6 @@ import com.linecorp.armeria.common.ClosedSessionException; import com.linecorp.armeria.common.Flags; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.util.ExceptionClassifier; import io.netty.channel.Channel; diff --git a/core/src/main/java/com/linecorp/armeria/common/util/Inet4AddressBlock.java b/core/src/main/java/com/linecorp/armeria/common/util/Inet4AddressBlock.java index edf176d31f9..ee9117d3ba5 100644 --- a/core/src/main/java/com/linecorp/armeria/common/util/Inet4AddressBlock.java +++ b/core/src/main/java/com/linecorp/armeria/common/util/Inet4AddressBlock.java @@ -23,9 +23,9 @@ import java.net.InetAddress; import java.util.function.Predicate; -import com.google.common.base.MoreObjects; +import org.jspecify.annotations.Nullable; -import com.linecorp.armeria.common.annotation.Nullable; +import com.google.common.base.MoreObjects; final class Inet4AddressBlock implements Predicate { @@ -92,8 +92,7 @@ public String toString() { * Returns IPv4 byte representation of the specified {@link Inet6Address}. {@code null} is returned * if the specified {@link Inet6Address} is not able to be converted to IPv4. */ - @Nullable - static byte[] ipv6ToIpv4Address(Inet6Address address) { + static byte @Nullable [] ipv6ToIpv4Address(Inet6Address address) { final byte[] addr = address.getAddress(); assert addr.length == 16 : "the length of " + address.getClass().getSimpleName() + ": " + addr.length; diff --git a/core/src/main/java/com/linecorp/armeria/common/util/NonEventLoopThreadFactory.java b/core/src/main/java/com/linecorp/armeria/common/util/NonEventLoopThreadFactory.java index b342967431d..983cef3b5b4 100644 --- a/core/src/main/java/com/linecorp/armeria/common/util/NonEventLoopThreadFactory.java +++ b/core/src/main/java/com/linecorp/armeria/common/util/NonEventLoopThreadFactory.java @@ -19,7 +19,7 @@ import java.util.concurrent.ThreadFactory; import java.util.function.Function; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; import io.netty.util.concurrent.FastThreadLocalThread; diff --git a/core/src/main/java/com/linecorp/armeria/common/util/ShutdownHooks.java b/core/src/main/java/com/linecorp/armeria/common/util/ShutdownHooks.java index d7c95b0c1ee..7aad427f5d3 100644 --- a/core/src/main/java/com/linecorp/armeria/common/util/ShutdownHooks.java +++ b/core/src/main/java/com/linecorp/armeria/common/util/ShutdownHooks.java @@ -26,12 +26,12 @@ import java.util.concurrent.ThreadFactory; import java.util.concurrent.locks.ReentrantLock; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.google.errorprone.annotations.concurrent.GuardedBy; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.internal.common.util.ReentrantShortLock; diff --git a/core/src/main/java/com/linecorp/armeria/common/util/SlidingWindowCounter.java b/core/src/main/java/com/linecorp/armeria/common/util/SlidingWindowCounter.java index 95338d9a3ef..9657f627596 100644 --- a/core/src/main/java/com/linecorp/armeria/common/util/SlidingWindowCounter.java +++ b/core/src/main/java/com/linecorp/armeria/common/util/SlidingWindowCounter.java @@ -25,7 +25,7 @@ import java.util.concurrent.atomic.AtomicReference; import java.util.concurrent.atomic.LongAdder; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * An {@link EventCounter} that accumulates the count of events within a time window. diff --git a/core/src/main/java/com/linecorp/armeria/common/util/StartStopSupport.java b/core/src/main/java/com/linecorp/armeria/common/util/StartStopSupport.java index 065d2d21273..24146341ec9 100644 --- a/core/src/main/java/com/linecorp/armeria/common/util/StartStopSupport.java +++ b/core/src/main/java/com/linecorp/armeria/common/util/StartStopSupport.java @@ -28,10 +28,10 @@ import java.util.concurrent.locks.ReentrantLock; import java.util.function.Function; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.util.ReentrantShortLock; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/util/SystemInfo.java b/core/src/main/java/com/linecorp/armeria/common/util/SystemInfo.java index 3eb1af04e99..c572db0a1d5 100644 --- a/core/src/main/java/com/linecorp/armeria/common/util/SystemInfo.java +++ b/core/src/main/java/com/linecorp/armeria/common/util/SystemInfo.java @@ -41,13 +41,13 @@ import java.util.function.Predicate; import java.util.regex.Pattern; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.google.common.base.Ascii; import com.linecorp.armeria.common.Flags; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.JavaVersionSpecific; import io.netty.util.NetUtil; diff --git a/core/src/main/java/com/linecorp/armeria/common/util/TextFormatter.java b/core/src/main/java/com/linecorp/armeria/common/util/TextFormatter.java index 6227e497c60..3716ed637e5 100644 --- a/core/src/main/java/com/linecorp/armeria/common/util/TextFormatter.java +++ b/core/src/main/java/com/linecorp/armeria/common/util/TextFormatter.java @@ -26,7 +26,8 @@ import java.util.Locale; import java.util.concurrent.TimeUnit; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.logging.ClientConnectionTimings; diff --git a/core/src/main/java/com/linecorp/armeria/common/util/ThreadFactoryBuilder.java b/core/src/main/java/com/linecorp/armeria/common/util/ThreadFactoryBuilder.java index 4decc2ab5fe..c50d7d7e2d9 100644 --- a/core/src/main/java/com/linecorp/armeria/common/util/ThreadFactoryBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/common/util/ThreadFactoryBuilder.java @@ -22,7 +22,7 @@ import java.util.concurrent.ThreadFactory; import java.util.function.Function; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * Builds a new {@link ThreadFactory}. diff --git a/core/src/main/java/com/linecorp/armeria/common/util/TransportType.java b/core/src/main/java/com/linecorp/armeria/common/util/TransportType.java index 8d9b9b0e9f7..4c692f016f0 100644 --- a/core/src/main/java/com/linecorp/armeria/common/util/TransportType.java +++ b/core/src/main/java/com/linecorp/armeria/common/util/TransportType.java @@ -20,9 +20,10 @@ import java.util.concurrent.ThreadFactory; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.google.common.base.Ascii; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.util.TransportTypeProvider; import io.netty.channel.EventLoop; diff --git a/core/src/main/java/com/linecorp/armeria/common/util/UnmodifiableFuture.java b/core/src/main/java/com/linecorp/armeria/common/util/UnmodifiableFuture.java index f75076ce6dd..86a98f0b4b3 100644 --- a/core/src/main/java/com/linecorp/armeria/common/util/UnmodifiableFuture.java +++ b/core/src/main/java/com/linecorp/armeria/common/util/UnmodifiableFuture.java @@ -21,9 +21,10 @@ import java.util.concurrent.CancellationException; import java.util.concurrent.CompletableFuture; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import io.netty.util.concurrent.Future; diff --git a/core/src/main/java/com/linecorp/armeria/common/util/Unwrappable.java b/core/src/main/java/com/linecorp/armeria/common/util/Unwrappable.java index 250ea693e22..dbd79ce5453 100644 --- a/core/src/main/java/com/linecorp/armeria/common/util/Unwrappable.java +++ b/core/src/main/java/com/linecorp/armeria/common/util/Unwrappable.java @@ -17,7 +17,8 @@ import static java.util.Objects.requireNonNull; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/util/package-info.java b/core/src/main/java/com/linecorp/armeria/common/util/package-info.java index 59ae1105d3b..34ba2940648 100644 --- a/core/src/main/java/com/linecorp/armeria/common/util/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/common/util/package-info.java @@ -17,7 +17,7 @@ /** * Generic utility classes. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.common.util; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/common/websocket/ByteArrayWebSocketFrame.java b/core/src/main/java/com/linecorp/armeria/common/websocket/ByteArrayWebSocketFrame.java index 20ba53e489d..d1664a2dbaa 100644 --- a/core/src/main/java/com/linecorp/armeria/common/websocket/ByteArrayWebSocketFrame.java +++ b/core/src/main/java/com/linecorp/armeria/common/websocket/ByteArrayWebSocketFrame.java @@ -19,9 +19,10 @@ import java.nio.charset.StandardCharsets; import java.util.Arrays; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.ByteArrayBytes; class ByteArrayWebSocketFrame extends ByteArrayBytes implements WebSocketFrame { diff --git a/core/src/main/java/com/linecorp/armeria/common/websocket/ByteBufWebSocketFrame.java b/core/src/main/java/com/linecorp/armeria/common/websocket/ByteBufWebSocketFrame.java index 0959836f48f..760c2736a1d 100644 --- a/core/src/main/java/com/linecorp/armeria/common/websocket/ByteBufWebSocketFrame.java +++ b/core/src/main/java/com/linecorp/armeria/common/websocket/ByteBufWebSocketFrame.java @@ -18,10 +18,11 @@ import java.nio.charset.StandardCharsets; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.google.common.base.MoreObjects.ToStringHelper; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.ByteBufBytes; import io.netty.buffer.ByteBuf; diff --git a/core/src/main/java/com/linecorp/armeria/common/websocket/CloseByteBufWebSocketFrame.java b/core/src/main/java/com/linecorp/armeria/common/websocket/CloseByteBufWebSocketFrame.java index bb2244a9e9d..4d689b03e36 100644 --- a/core/src/main/java/com/linecorp/armeria/common/websocket/CloseByteBufWebSocketFrame.java +++ b/core/src/main/java/com/linecorp/armeria/common/websocket/CloseByteBufWebSocketFrame.java @@ -21,9 +21,9 @@ import java.nio.charset.StandardCharsets; import java.util.Objects; -import com.google.common.base.MoreObjects.ToStringHelper; +import org.jspecify.annotations.Nullable; -import com.linecorp.armeria.common.annotation.Nullable; +import com.google.common.base.MoreObjects.ToStringHelper; import io.netty.buffer.ByteBuf; import io.netty.buffer.Unpooled; diff --git a/core/src/main/java/com/linecorp/armeria/common/websocket/CloseWebSocketFrame.java b/core/src/main/java/com/linecorp/armeria/common/websocket/CloseWebSocketFrame.java index 52a3555d522..526c60c0c07 100644 --- a/core/src/main/java/com/linecorp/armeria/common/websocket/CloseWebSocketFrame.java +++ b/core/src/main/java/com/linecorp/armeria/common/websocket/CloseWebSocketFrame.java @@ -16,7 +16,8 @@ package com.linecorp.armeria.common.websocket; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/websocket/WebSocketCloseStatus.java b/core/src/main/java/com/linecorp/armeria/common/websocket/WebSocketCloseStatus.java index 7f1577269c3..23183ae7af7 100644 --- a/core/src/main/java/com/linecorp/armeria/common/websocket/WebSocketCloseStatus.java +++ b/core/src/main/java/com/linecorp/armeria/common/websocket/WebSocketCloseStatus.java @@ -34,7 +34,8 @@ import static com.google.common.base.Preconditions.checkArgument; import static java.util.Objects.requireNonNull; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/common/websocket/package-info.java b/core/src/main/java/com/linecorp/armeria/common/websocket/package-info.java index 1240be61e50..79fc4a43c3c 100644 --- a/core/src/main/java/com/linecorp/armeria/common/websocket/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/common/websocket/package-info.java @@ -17,7 +17,7 @@ /** * Common classes for the WebSocket Protocol. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.common.websocket; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/internal/client/AbstractAsyncSelector.java b/core/src/main/java/com/linecorp/armeria/internal/client/AbstractAsyncSelector.java index 218b01d87a1..73bdb3bea41 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/client/AbstractAsyncSelector.java +++ b/core/src/main/java/com/linecorp/armeria/internal/client/AbstractAsyncSelector.java @@ -25,11 +25,12 @@ import java.util.concurrent.ScheduledFuture; import java.util.concurrent.TimeUnit; +import org.jspecify.annotations.Nullable; + import com.google.common.annotations.VisibleForTesting; import com.google.errorprone.annotations.concurrent.GuardedBy; import com.linecorp.armeria.client.ClientRequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.util.UnmodifiableFuture; import com.linecorp.armeria.internal.common.util.IdentityHashStrategy; diff --git a/core/src/main/java/com/linecorp/armeria/internal/client/ClientBuilderParamsUtil.java b/core/src/main/java/com/linecorp/armeria/internal/client/ClientBuilderParamsUtil.java index f99d24b8d57..cca6b8314ab 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/client/ClientBuilderParamsUtil.java +++ b/core/src/main/java/com/linecorp/armeria/internal/client/ClientBuilderParamsUtil.java @@ -21,6 +21,8 @@ import java.net.URI; +import org.jspecify.annotations.Nullable; + import com.google.common.base.Strings; import com.linecorp.armeria.client.ClientPreprocessors; @@ -30,7 +32,6 @@ import com.linecorp.armeria.common.Scheme; import com.linecorp.armeria.common.SerializationFormat; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; public final class ClientBuilderParamsUtil { diff --git a/core/src/main/java/com/linecorp/armeria/internal/client/ClientPendingThrowableUtil.java b/core/src/main/java/com/linecorp/armeria/internal/client/ClientPendingThrowableUtil.java index 2ef5e10695f..e69c8e09f0a 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/client/ClientPendingThrowableUtil.java +++ b/core/src/main/java/com/linecorp/armeria/internal/client/ClientPendingThrowableUtil.java @@ -18,8 +18,9 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.ClientRequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import io.netty.util.AttributeKey; diff --git a/core/src/main/java/com/linecorp/armeria/internal/client/ClientThreadLocalState.java b/core/src/main/java/com/linecorp/armeria/internal/client/ClientThreadLocalState.java index 85351c83442..15134b40f19 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/client/ClientThreadLocalState.java +++ b/core/src/main/java/com/linecorp/armeria/internal/client/ClientThreadLocalState.java @@ -20,11 +20,12 @@ import java.util.NoSuchElementException; import java.util.function.Consumer; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.client.ClientRequestContextCaptor; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.SafeCloseable; import io.netty.util.concurrent.FastThreadLocal; diff --git a/core/src/main/java/com/linecorp/armeria/internal/client/ClientUtil.java b/core/src/main/java/com/linecorp/armeria/internal/client/ClientUtil.java index df4e36bd8c6..ddf46266eb1 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/client/ClientUtil.java +++ b/core/src/main/java/com/linecorp/armeria/internal/client/ClientUtil.java @@ -22,6 +22,8 @@ import java.util.function.BiFunction; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.Client; import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.client.Endpoint; @@ -36,7 +38,6 @@ import com.linecorp.armeria.common.Response; import com.linecorp.armeria.common.ResponseCompleteException; import com.linecorp.armeria.common.RpcRequest; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.logging.RequestLogAccess; import com.linecorp.armeria.common.logging.RequestLogBuilder; diff --git a/core/src/main/java/com/linecorp/armeria/internal/client/DecodedHttpResponse.java b/core/src/main/java/com/linecorp/armeria/internal/client/DecodedHttpResponse.java index 87c6015d199..a24856ffdf0 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/client/DecodedHttpResponse.java +++ b/core/src/main/java/com/linecorp/armeria/internal/client/DecodedHttpResponse.java @@ -16,11 +16,12 @@ package com.linecorp.armeria.internal.client; +import org.jspecify.annotations.Nullable; + import com.google.common.annotations.VisibleForTesting; import com.linecorp.armeria.common.HttpData; import com.linecorp.armeria.common.HttpObject; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.DefaultHttpResponse; import com.linecorp.armeria.internal.common.InboundTrafficController; diff --git a/core/src/main/java/com/linecorp/armeria/internal/client/DefaultClientRequestContext.java b/core/src/main/java/com/linecorp/armeria/internal/client/DefaultClientRequestContext.java index f45fa3d443b..99ef3e62014 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/client/DefaultClientRequestContext.java +++ b/core/src/main/java/com/linecorp/armeria/internal/client/DefaultClientRequestContext.java @@ -37,6 +37,7 @@ import javax.net.ssl.SSLSession; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -69,7 +70,6 @@ import com.linecorp.armeria.common.RpcRequest; import com.linecorp.armeria.common.Scheme; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.logging.RequestLogAccess; import com.linecorp.armeria.common.logging.RequestLogBuilder; diff --git a/core/src/main/java/com/linecorp/armeria/internal/client/HttpSession.java b/core/src/main/java/com/linecorp/armeria/internal/client/HttpSession.java index 2b69160e015..8cb5170858e 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/client/HttpSession.java +++ b/core/src/main/java/com/linecorp/armeria/internal/client/HttpSession.java @@ -16,13 +16,14 @@ package com.linecorp.armeria.internal.client; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.client.WriteTimeoutException; import com.linecorp.armeria.common.ClosedSessionException; import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.SerializationFormat; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.InboundTrafficController; import com.linecorp.armeria.internal.common.KeepAliveHandler; diff --git a/core/src/main/java/com/linecorp/armeria/internal/client/PendingExceptionUtil.java b/core/src/main/java/com/linecorp/armeria/internal/client/PendingExceptionUtil.java index 4b7c90cfe4a..598259ea0ee 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/client/PendingExceptionUtil.java +++ b/core/src/main/java/com/linecorp/armeria/internal/client/PendingExceptionUtil.java @@ -16,11 +16,10 @@ package com.linecorp.armeria.internal.client; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import com.linecorp.armeria.common.annotation.Nullable; - import io.netty.channel.Channel; import io.netty.channel.ChannelHandlerContext; import io.netty.util.AttributeKey; diff --git a/core/src/main/java/com/linecorp/armeria/internal/client/PublicSuffix.java b/core/src/main/java/com/linecorp/armeria/internal/client/PublicSuffix.java index 15bff2a9fea..244114ac235 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/client/PublicSuffix.java +++ b/core/src/main/java/com/linecorp/armeria/internal/client/PublicSuffix.java @@ -26,11 +26,11 @@ import java.util.HashMap; import java.util.Map; +import org.jspecify.annotations.Nullable; + import com.google.common.base.Ascii; import com.google.common.base.CharMatcher; -import com.linecorp.armeria.common.annotation.Nullable; - /** * Utility class to determine if a domain is a public suffix. List of rules taken from * Public Suffix List. diff --git a/core/src/main/java/com/linecorp/armeria/internal/client/RuleFilter.java b/core/src/main/java/com/linecorp/armeria/internal/client/RuleFilter.java index e9c8a061bd9..1a1e8921597 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/client/RuleFilter.java +++ b/core/src/main/java/com/linecorp/armeria/internal/client/RuleFilter.java @@ -20,13 +20,14 @@ import java.util.function.BiFunction; import java.util.function.BiPredicate; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.AbstractRuleBuilder; import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.logging.RequestLogProperty; import com.linecorp.armeria.common.util.Exceptions; diff --git a/core/src/main/java/com/linecorp/armeria/internal/client/TruncatingHttpResponse.java b/core/src/main/java/com/linecorp/armeria/internal/client/TruncatingHttpResponse.java index 0feca5434c7..8fc9e34a7d4 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/client/TruncatingHttpResponse.java +++ b/core/src/main/java/com/linecorp/armeria/internal/client/TruncatingHttpResponse.java @@ -16,6 +16,7 @@ package com.linecorp.armeria.internal.client; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; @@ -23,7 +24,6 @@ import com.linecorp.armeria.common.HttpData; import com.linecorp.armeria.common.HttpObject; import com.linecorp.armeria.common.HttpResponse; -import com.linecorp.armeria.common.annotation.Nullable; /** * A variant of {@link HttpResponse} that limits the maximum length of the content. diff --git a/core/src/main/java/com/linecorp/armeria/internal/client/dns/DefaultDnsResolver.java b/core/src/main/java/com/linecorp/armeria/internal/client/dns/DefaultDnsResolver.java index 2e0f91d0efb..2aa58033653 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/client/dns/DefaultDnsResolver.java +++ b/core/src/main/java/com/linecorp/armeria/internal/client/dns/DefaultDnsResolver.java @@ -23,11 +23,12 @@ import java.util.List; import java.util.concurrent.CompletableFuture; +import org.jspecify.annotations.Nullable; + import com.google.common.annotations.VisibleForTesting; import com.linecorp.armeria.client.DnsCache; import com.linecorp.armeria.client.DnsTimeoutException; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.common.util.SafeCloseable; diff --git a/core/src/main/java/com/linecorp/armeria/internal/client/dns/DnsQuestionWithoutTrailingDot.java b/core/src/main/java/com/linecorp/armeria/internal/client/dns/DnsQuestionWithoutTrailingDot.java index 9ef85a88d3f..a6ae8a2f713 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/client/dns/DnsQuestionWithoutTrailingDot.java +++ b/core/src/main/java/com/linecorp/armeria/internal/client/dns/DnsQuestionWithoutTrailingDot.java @@ -19,7 +19,7 @@ import java.net.IDN; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; import io.netty.handler.codec.dns.DnsQuestion; import io.netty.handler.codec.dns.DnsRecordType; diff --git a/core/src/main/java/com/linecorp/armeria/internal/client/dns/DnsUtil.java b/core/src/main/java/com/linecorp/armeria/internal/client/dns/DnsUtil.java index d7f5528f457..1d741a7b179 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/client/dns/DnsUtil.java +++ b/core/src/main/java/com/linecorp/armeria/internal/client/dns/DnsUtil.java @@ -21,6 +21,7 @@ import java.net.UnknownHostException; import java.util.List; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -29,7 +30,6 @@ import com.linecorp.armeria.client.DnsTimeoutException; import com.linecorp.armeria.common.CommonPools; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.TransportType; import io.netty.buffer.ByteBufUtil; diff --git a/core/src/main/java/com/linecorp/armeria/internal/client/dns/HostsFileDnsResolver.java b/core/src/main/java/com/linecorp/armeria/internal/client/dns/HostsFileDnsResolver.java index e9da132faac..9fc65e7389e 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/client/dns/HostsFileDnsResolver.java +++ b/core/src/main/java/com/linecorp/armeria/internal/client/dns/HostsFileDnsResolver.java @@ -36,9 +36,10 @@ import java.util.List; import java.util.concurrent.CompletableFuture; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.AbstractUnwrappable; import com.linecorp.armeria.common.util.OsType; import com.linecorp.armeria.common.util.SystemInfo; diff --git a/core/src/main/java/com/linecorp/armeria/internal/client/dns/SearchDomainDnsResolver.java b/core/src/main/java/com/linecorp/armeria/internal/client/dns/SearchDomainDnsResolver.java index 431d9e993c0..f0b8f2ff8e3 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/client/dns/SearchDomainDnsResolver.java +++ b/core/src/main/java/com/linecorp/armeria/internal/client/dns/SearchDomainDnsResolver.java @@ -24,6 +24,7 @@ import java.util.concurrent.CompletableFuture; import java.util.function.Function; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -31,7 +32,6 @@ import com.google.common.base.Strings; import com.google.common.collect.ImmutableList; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.AbstractUnwrappable; import com.linecorp.armeria.common.util.UnmodifiableFuture; diff --git a/core/src/main/java/com/linecorp/armeria/internal/client/dns/package-info.java b/core/src/main/java/com/linecorp/armeria/internal/client/dns/package-info.java index 82df8933740..1ed5270a669 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/client/dns/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/internal/client/dns/package-info.java @@ -17,7 +17,7 @@ /** * Various classes used internally. Anything in this package can be changed or removed at any time. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.client.dns; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/internal/client/endpoint/EndpointAttributeKeys.java b/core/src/main/java/com/linecorp/armeria/internal/client/endpoint/EndpointAttributeKeys.java index 668b2957fdb..39c652c82ed 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/client/endpoint/EndpointAttributeKeys.java +++ b/core/src/main/java/com/linecorp/armeria/internal/client/endpoint/EndpointAttributeKeys.java @@ -21,9 +21,10 @@ import java.util.Map; import java.util.Objects; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.Endpoint; import com.linecorp.armeria.common.Attributes; -import com.linecorp.armeria.common.annotation.Nullable; import io.netty.util.AttributeKey; import it.unimi.dsi.fastutil.ints.Int2ObjectOpenHashMap; diff --git a/core/src/main/java/com/linecorp/armeria/internal/client/endpoint/StaticEndpointGroup.java b/core/src/main/java/com/linecorp/armeria/internal/client/endpoint/StaticEndpointGroup.java index af0a3cf6248..aad830acb72 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/client/endpoint/StaticEndpointGroup.java +++ b/core/src/main/java/com/linecorp/armeria/internal/client/endpoint/StaticEndpointGroup.java @@ -22,6 +22,8 @@ import java.util.concurrent.ScheduledExecutorService; import java.util.function.Consumer; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.linecorp.armeria.client.ClientRequestContext; @@ -29,7 +31,6 @@ import com.linecorp.armeria.client.endpoint.EndpointGroup; import com.linecorp.armeria.client.endpoint.EndpointSelectionStrategy; import com.linecorp.armeria.client.endpoint.EndpointSelector; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.UnmodifiableFuture; /** diff --git a/core/src/main/java/com/linecorp/armeria/internal/client/endpoint/UndefinedEndpointGroup.java b/core/src/main/java/com/linecorp/armeria/internal/client/endpoint/UndefinedEndpointGroup.java index 0b639e86dda..651611b65f6 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/client/endpoint/UndefinedEndpointGroup.java +++ b/core/src/main/java/com/linecorp/armeria/internal/client/endpoint/UndefinedEndpointGroup.java @@ -20,6 +20,8 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.ScheduledExecutorService; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.linecorp.armeria.client.ClientRequestContext; @@ -27,7 +29,6 @@ import com.linecorp.armeria.client.UnprocessedRequestException; import com.linecorp.armeria.client.endpoint.EndpointGroup; import com.linecorp.armeria.client.endpoint.EndpointSelectionStrategy; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.UnmodifiableFuture; public final class UndefinedEndpointGroup implements EndpointGroup { diff --git a/core/src/main/java/com/linecorp/armeria/internal/client/endpoint/healthcheck/DefaultHttpHealthChecker.java b/core/src/main/java/com/linecorp/armeria/internal/client/endpoint/healthcheck/DefaultHttpHealthChecker.java index 8cb07039e34..498ce84af1d 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/client/endpoint/healthcheck/DefaultHttpHealthChecker.java +++ b/core/src/main/java/com/linecorp/armeria/internal/client/endpoint/healthcheck/DefaultHttpHealthChecker.java @@ -21,6 +21,7 @@ import java.util.concurrent.TimeUnit; import java.util.concurrent.locks.ReentrantLock; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; import org.slf4j.Logger; @@ -47,7 +48,6 @@ import com.linecorp.armeria.common.RequestHeadersBuilder; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.SubscriptionOption; import com.linecorp.armeria.common.util.AsyncCloseableSupport; import com.linecorp.armeria.common.util.TimeoutMode; diff --git a/core/src/main/java/com/linecorp/armeria/internal/client/endpoint/healthcheck/package-info.java b/core/src/main/java/com/linecorp/armeria/internal/client/endpoint/healthcheck/package-info.java index 6d55685cd86..dc1d149d9d3 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/client/endpoint/healthcheck/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/internal/client/endpoint/healthcheck/package-info.java @@ -17,7 +17,7 @@ /** * Various classes used internally. Anything in this package can be changed or removed at any time. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.client.endpoint.healthcheck; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/internal/client/endpoint/package-info.java b/core/src/main/java/com/linecorp/armeria/internal/client/endpoint/package-info.java index fd03f12231a..e568e5e0aae 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/client/endpoint/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/internal/client/endpoint/package-info.java @@ -17,7 +17,7 @@ /** * Various classes used internally. Anything in this package can be changed or removed at any time. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.client.endpoint; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/internal/client/package-info.java b/core/src/main/java/com/linecorp/armeria/internal/client/package-info.java index 2d015869c25..385fc789c97 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/client/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/internal/client/package-info.java @@ -17,7 +17,7 @@ /** * Various classes used internally. Anything in this package can be changed or removed at any time. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.client; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/internal/client/websocket/WebSocketClientUtil.java b/core/src/main/java/com/linecorp/armeria/internal/client/websocket/WebSocketClientUtil.java index 623b8ce5560..7f9cca10316 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/client/websocket/WebSocketClientUtil.java +++ b/core/src/main/java/com/linecorp/armeria/internal/client/websocket/WebSocketClientUtil.java @@ -20,8 +20,9 @@ import java.util.function.Consumer; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.ClientRequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import io.netty.util.AttributeKey; diff --git a/core/src/main/java/com/linecorp/armeria/internal/client/websocket/package-info.java b/core/src/main/java/com/linecorp/armeria/internal/client/websocket/package-info.java index c0062c76749..786daf6e573 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/client/websocket/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/internal/client/websocket/package-info.java @@ -18,7 +18,7 @@ * Internal client classes for * the WebSocket Protocol. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.client.websocket; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/AbstractHttp2ConnectionHandler.java b/core/src/main/java/com/linecorp/armeria/internal/common/AbstractHttp2ConnectionHandler.java index f4cd0c32690..348b6a9cb07 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/AbstractHttp2ConnectionHandler.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/AbstractHttp2ConnectionHandler.java @@ -24,13 +24,13 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.google.common.annotations.VisibleForTesting; import com.linecorp.armeria.client.ClientFactory; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.server.Server; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/AbstractKeepAliveHandler.java b/core/src/main/java/com/linecorp/armeria/internal/common/AbstractKeepAliveHandler.java index 04653813071..36b4df80dcd 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/AbstractKeepAliveHandler.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/AbstractKeepAliveHandler.java @@ -21,13 +21,13 @@ import java.util.concurrent.ScheduledFuture; import java.util.concurrent.TimeUnit; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.google.common.annotations.VisibleForTesting; import com.google.common.base.Stopwatch; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.internal.common.ConnectionEventListener.CloseHint; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/ArmeriaHttp2Headers.java b/core/src/main/java/com/linecorp/armeria/internal/common/ArmeriaHttp2Headers.java index a47e46b0a11..507fa320646 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/ArmeriaHttp2Headers.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/ArmeriaHttp2Headers.java @@ -25,10 +25,11 @@ import java.util.Spliterator; import java.util.function.Consumer; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.HttpHeadersBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import io.netty.handler.codec.Headers; import io.netty.handler.codec.http2.Http2Headers; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/ArmeriaHttpUtil.java b/core/src/main/java/com/linecorp/armeria/internal/common/ArmeriaHttpUtil.java index e768ba4a9fe..4bf37ba6c67 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/ArmeriaHttpUtil.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/ArmeriaHttpUtil.java @@ -51,6 +51,8 @@ import java.util.function.BiConsumer; import java.util.regex.Pattern; +import org.jspecify.annotations.Nullable; + import com.github.benmanes.caffeine.cache.Caffeine; import com.github.benmanes.caffeine.cache.LoadingCache; import com.google.common.annotations.VisibleForTesting; @@ -73,7 +75,6 @@ import com.linecorp.armeria.common.RequestTarget; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.ResponseHeadersBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Version; import com.linecorp.armeria.internal.common.util.TemporaryThreadLocals; import com.linecorp.armeria.server.ServerConfig; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/BuiltInDependencyInjector.java b/core/src/main/java/com/linecorp/armeria/internal/common/BuiltInDependencyInjector.java index bb89da96605..0d1b077d3f7 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/BuiltInDependencyInjector.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/BuiltInDependencyInjector.java @@ -21,10 +21,11 @@ import java.util.Set; import java.util.concurrent.ConcurrentHashMap; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableSet; import com.linecorp.armeria.common.DependencyInjector; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.annotation.ServerSentEventResponseConverterFunction; import com.linecorp.armeria.server.annotation.decorator.LoggingDecoratorFactoryFunction; import com.linecorp.armeria.server.annotation.decorator.RateLimitingDecoratorFactoryFunction; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/ByteBufBytes.java b/core/src/main/java/com/linecorp/armeria/internal/common/ByteBufBytes.java index 234cf31b4ef..717655b2402 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/ByteBufBytes.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/ByteBufBytes.java @@ -21,9 +21,10 @@ import java.io.InputStream; import java.nio.charset.Charset; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.ByteBufAccessMode; import com.linecorp.armeria.common.Bytes; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.util.TemporaryThreadLocals; import io.netty.buffer.ByteBuf; @@ -42,8 +43,7 @@ public class ByteBufBytes implements Bytes, ResourceLeakHint { private final ByteBuf buf; private final boolean pooled; private boolean closed; - @Nullable - private byte[] array; + private byte @Nullable [] array; /** * Creates a new instance. diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/CancellationScheduler.java b/core/src/main/java/com/linecorp/armeria/internal/common/CancellationScheduler.java index 9d5a4140a69..96256d7851e 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/CancellationScheduler.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/CancellationScheduler.java @@ -20,9 +20,10 @@ import java.util.concurrent.CompletableFuture; +import org.jspecify.annotations.Nullable; + import com.google.common.annotations.VisibleForTesting; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.TimeoutMode; import io.netty.util.concurrent.EventExecutor; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/DefaultCancellationScheduler.java b/core/src/main/java/com/linecorp/armeria/internal/common/DefaultCancellationScheduler.java index 685521312cd..42dfb541fb0 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/DefaultCancellationScheduler.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/DefaultCancellationScheduler.java @@ -23,11 +23,12 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.ScheduledFuture; +import org.jspecify.annotations.Nullable; + import com.google.common.annotations.VisibleForTesting; import com.google.common.math.LongMath; import com.linecorp.armeria.client.ResponseTimeoutException; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Ticker; import com.linecorp.armeria.common.util.TimeoutMode; import com.linecorp.armeria.common.util.UnmodifiableFuture; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/DefaultConnectionEventListener.java b/core/src/main/java/com/linecorp/armeria/internal/common/DefaultConnectionEventListener.java index 406b53483c4..a578df38829 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/DefaultConnectionEventListener.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/DefaultConnectionEventListener.java @@ -18,12 +18,12 @@ import java.net.InetSocketAddress; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.linecorp.armeria.client.ConnectionPoolListener; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.util.ChannelUtil; import io.netty.channel.Channel; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/DefaultRequestTarget.java b/core/src/main/java/com/linecorp/armeria/internal/common/DefaultRequestTarget.java index 75cb29a3da1..8759f3fe64b 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/DefaultRequestTarget.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/DefaultRequestTarget.java @@ -23,10 +23,11 @@ import java.util.BitSet; import java.util.Objects; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.RequestTarget; import com.linecorp.armeria.common.RequestTargetForm; import com.linecorp.armeria.common.Scheme; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.util.TemporaryThreadLocals; import it.unimi.dsi.fastutil.Arrays; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/DefaultSplitHttpResponse.java b/core/src/main/java/com/linecorp/armeria/internal/common/DefaultSplitHttpResponse.java index 62316790cfc..65da8e36f11 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/DefaultSplitHttpResponse.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/DefaultSplitHttpResponse.java @@ -19,6 +19,7 @@ import java.util.concurrent.CompletableFuture; import java.util.function.Predicate; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscription; import com.linecorp.armeria.common.HttpObject; @@ -26,7 +27,6 @@ import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.SplitHttpResponse; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.AbortedStreamException; import com.linecorp.armeria.common.stream.CancelledSubscriptionException; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/GracefulConnectionShutdownHandler.java b/core/src/main/java/com/linecorp/armeria/internal/common/GracefulConnectionShutdownHandler.java index d77089d45bb..52b1ab406a1 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/GracefulConnectionShutdownHandler.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/GracefulConnectionShutdownHandler.java @@ -19,11 +19,10 @@ import java.util.concurrent.ScheduledFuture; import java.util.concurrent.TimeUnit; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import com.linecorp.armeria.common.annotation.Nullable; - import io.netty.channel.Channel; import io.netty.channel.ChannelFutureListener; import io.netty.channel.ChannelHandlerContext; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/HeaderOverridingHttpRequest.java b/core/src/main/java/com/linecorp/armeria/internal/common/HeaderOverridingHttpRequest.java index 3d286869199..afd1f93d7bb 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/HeaderOverridingHttpRequest.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/HeaderOverridingHttpRequest.java @@ -21,6 +21,7 @@ import java.util.List; import java.util.concurrent.CompletableFuture; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import com.google.common.base.MoreObjects; @@ -32,7 +33,6 @@ import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.SubscriptionOption; import io.netty.util.concurrent.EventExecutor; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/HeadersFuture.java b/core/src/main/java/com/linecorp/armeria/internal/common/HeadersFuture.java index 98d31edb245..a3ce58dd511 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/HeadersFuture.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/HeadersFuture.java @@ -16,8 +16,9 @@ package com.linecorp.armeria.internal.common; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.UnmodifiableFuture; final class HeadersFuture extends UnmodifiableFuture { diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/HttpMessageAggregator.java b/core/src/main/java/com/linecorp/armeria/internal/common/HttpMessageAggregator.java index add749fb224..83bb01f8e18 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/HttpMessageAggregator.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/HttpMessageAggregator.java @@ -19,6 +19,8 @@ import java.util.ArrayList; import java.util.List; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.linecorp.armeria.common.AggregatedHttpRequest; @@ -29,7 +31,6 @@ import com.linecorp.armeria.common.HttpObject; import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.SafeCloseable; import com.linecorp.armeria.unsafe.PooledObjects; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/HttpObjectAggregator.java b/core/src/main/java/com/linecorp/armeria/internal/common/HttpObjectAggregator.java index 47b3cd789b9..60f148b9cfa 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/HttpObjectAggregator.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/HttpObjectAggregator.java @@ -20,6 +20,7 @@ import java.util.List; import java.util.concurrent.CompletableFuture; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; @@ -27,7 +28,6 @@ import com.linecorp.armeria.common.HttpData; import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.HttpObject; -import com.linecorp.armeria.common.annotation.Nullable; import io.netty.buffer.ByteBuf; import io.netty.buffer.ByteBufAllocator; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/InboundTrafficController.java b/core/src/main/java/com/linecorp/armeria/internal/common/InboundTrafficController.java index 1d7b612206e..7eb066b028c 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/InboundTrafficController.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/InboundTrafficController.java @@ -18,6 +18,7 @@ import java.util.concurrent.atomic.AtomicInteger; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -25,8 +26,6 @@ import com.google.common.base.MoreObjects; import com.google.common.math.IntMath; -import com.linecorp.armeria.common.annotation.Nullable; - import io.netty.channel.Channel; import io.netty.channel.ChannelConfig; import io.netty.handler.codec.http2.Http2ConnectionDecoder; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/InternalGrpcWebTrailers.java b/core/src/main/java/com/linecorp/armeria/internal/common/InternalGrpcWebTrailers.java index 9dcdd479049..2bde6601016 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/InternalGrpcWebTrailers.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/InternalGrpcWebTrailers.java @@ -18,9 +18,10 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import io.netty.util.AttributeKey; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/LeakTracingRequestContextStorage.java b/core/src/main/java/com/linecorp/armeria/internal/common/LeakTracingRequestContextStorage.java index b4d4807d23e..6b4b2d8bedb 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/LeakTracingRequestContextStorage.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/LeakTracingRequestContextStorage.java @@ -19,12 +19,13 @@ import static java.lang.Thread.currentThread; import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.client.ClientRequestContextWrapper; import com.linecorp.armeria.common.RequestContext; import com.linecorp.armeria.common.RequestContextStorage; import com.linecorp.armeria.common.RequestContextWrapper; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Sampler; import com.linecorp.armeria.server.ServiceRequestContext; import com.linecorp.armeria.server.ServiceRequestContextWrapper; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/NonWrappingRequestContext.java b/core/src/main/java/com/linecorp/armeria/internal/common/NonWrappingRequestContext.java index 61ec14b5e1b..90021b59312 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/NonWrappingRequestContext.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/NonWrappingRequestContext.java @@ -26,6 +26,8 @@ import java.util.concurrent.atomic.AtomicReferenceFieldUpdater; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.AttributesGetters; import com.linecorp.armeria.common.ConcurrentAttributes; import com.linecorp.armeria.common.ExchangeType; @@ -39,7 +41,6 @@ import com.linecorp.armeria.common.RequestTarget; import com.linecorp.armeria.common.RequestTargetForm; import com.linecorp.armeria.common.RpcRequest; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import io.micrometer.core.instrument.MeterRegistry; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/NoopCancellationScheduler.java b/core/src/main/java/com/linecorp/armeria/internal/common/NoopCancellationScheduler.java index 7c099d92aac..1ef39b85d94 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/NoopCancellationScheduler.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/NoopCancellationScheduler.java @@ -18,7 +18,8 @@ import java.util.concurrent.CompletableFuture; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.util.TimeoutMode; import com.linecorp.armeria.common.util.UnmodifiableFuture; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/ReflectiveDependencyInjector.java b/core/src/main/java/com/linecorp/armeria/internal/common/ReflectiveDependencyInjector.java index feeaa05a8c9..f0da8d5b08e 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/ReflectiveDependencyInjector.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/ReflectiveDependencyInjector.java @@ -23,6 +23,7 @@ import java.util.Map; import java.util.concurrent.locks.ReentrantLock; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -30,7 +31,6 @@ import com.google.common.collect.Iterables; import com.linecorp.armeria.common.DependencyInjector; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.util.ReentrantShortLock; public final class ReflectiveDependencyInjector implements DependencyInjector { diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/RequestContextUtil.java b/core/src/main/java/com/linecorp/armeria/internal/common/RequestContextUtil.java index 78d6521976b..322b183ca8e 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/RequestContextUtil.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/RequestContextUtil.java @@ -24,6 +24,7 @@ import java.util.function.Function; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -36,7 +37,6 @@ import com.linecorp.armeria.common.RequestContext; import com.linecorp.armeria.common.RequestContextStorage; import com.linecorp.armeria.common.RequestContextStorageProvider; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.SafeCloseable; import com.linecorp.armeria.common.util.Sampler; import com.linecorp.armeria.internal.client.DefaultClientRequestContext; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/RequestTargetCache.java b/core/src/main/java/com/linecorp/armeria/internal/common/RequestTargetCache.java index 62fb40ecbf4..86c260c17f9 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/RequestTargetCache.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/RequestTargetCache.java @@ -17,13 +17,14 @@ import java.util.Set; +import org.jspecify.annotations.Nullable; + import com.github.benmanes.caffeine.cache.Cache; import com.github.benmanes.caffeine.cache.Caffeine; import com.google.common.annotations.VisibleForTesting; import com.linecorp.armeria.common.Flags; import com.linecorp.armeria.common.RequestTarget; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.metric.MeterIdPrefix; import com.linecorp.armeria.internal.common.metric.CaffeineMetricSupport; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/SchemeAndAuthority.java b/core/src/main/java/com/linecorp/armeria/internal/common/SchemeAndAuthority.java index ddb510752bd..1e4e6a9852a 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/SchemeAndAuthority.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/SchemeAndAuthority.java @@ -24,11 +24,11 @@ import java.net.URISyntaxException; import java.util.BitSet; +import org.jspecify.annotations.Nullable; + import com.google.common.base.Strings; import com.google.common.net.HostAndPort; -import com.linecorp.armeria.common.annotation.Nullable; - public final class SchemeAndAuthority { private static final BitSet RESERVED_CHARS = toBitSet("/?#"); diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/SplitHttpMessageSubscriber.java b/core/src/main/java/com/linecorp/armeria/internal/common/SplitHttpMessageSubscriber.java index 153d90debfa..ea741dbdabc 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/SplitHttpMessageSubscriber.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/SplitHttpMessageSubscriber.java @@ -22,6 +22,7 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.atomic.AtomicReferenceFieldUpdater; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; import org.slf4j.Logger; @@ -33,7 +34,6 @@ import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.HttpMessage; import com.linecorp.armeria.common.HttpObject; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.NoopSubscriber; import com.linecorp.armeria.common.stream.SubscriptionOption; import com.linecorp.armeria.unsafe.PooledObjects; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/SslContextFactory.java b/core/src/main/java/com/linecorp/armeria/internal/common/SslContextFactory.java index e90e2e8a1a6..ef7975129b6 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/SslContextFactory.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/SslContextFactory.java @@ -21,13 +21,14 @@ import java.util.List; import java.util.Map; +import org.jspecify.annotations.Nullable; + import com.google.common.annotations.VisibleForTesting; import com.google.common.collect.ImmutableList; import com.linecorp.armeria.client.ClientTlsSpec; import com.linecorp.armeria.common.AbstractTlsSpec; import com.linecorp.armeria.common.TlsKeyPair; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.metric.CloseableMeterBinder; import com.linecorp.armeria.common.metric.MeterIdPrefix; import com.linecorp.armeria.common.metric.MoreMeterBinders; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/circuitbreaker/package-info.java b/core/src/main/java/com/linecorp/armeria/internal/common/circuitbreaker/package-info.java index 19ae17bdb41..09dee558fd7 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/circuitbreaker/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/circuitbreaker/package-info.java @@ -18,7 +18,7 @@ * CircuitBreaker related classes used internally. * Anything in this package can be changed or removed at any time. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.common.circuitbreaker; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/context/package-info.java b/core/src/main/java/com/linecorp/armeria/internal/common/context/package-info.java index 0c10dde167c..848de00952a 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/context/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/context/package-info.java @@ -17,7 +17,7 @@ /** * Various classes used internally. Anything in this package can be changed or removed at any time. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.common.context; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/encoding/AbstractHttpDecodedResponse.java b/core/src/main/java/com/linecorp/armeria/internal/common/encoding/AbstractHttpDecodedResponse.java index 2c0e4cf921e..c907ca16257 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/encoding/AbstractHttpDecodedResponse.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/encoding/AbstractHttpDecodedResponse.java @@ -16,6 +16,7 @@ package com.linecorp.armeria.internal.common.encoding; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -26,7 +27,6 @@ import com.linecorp.armeria.common.HttpData; import com.linecorp.armeria.common.HttpObject; import com.linecorp.armeria.common.HttpResponse; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.CompositeException; abstract class AbstractHttpDecodedResponse extends FilteredHttpResponse { diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/encoding/DefaultHttpDecodedResponse.java b/core/src/main/java/com/linecorp/armeria/internal/common/encoding/DefaultHttpDecodedResponse.java index fa2d2c095a7..962c4b37cd5 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/encoding/DefaultHttpDecodedResponse.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/encoding/DefaultHttpDecodedResponse.java @@ -19,6 +19,8 @@ import java.io.UnsupportedEncodingException; import java.util.Map; +import org.jspecify.annotations.Nullable; + import com.google.common.base.Ascii; import com.google.common.primitives.Ints; @@ -31,7 +33,6 @@ import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.HttpObject; import com.linecorp.armeria.common.HttpResponse; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.internal.common.ArmeriaHttpUtil; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/encoding/StaticHttpDecodedResponse.java b/core/src/main/java/com/linecorp/armeria/internal/common/encoding/StaticHttpDecodedResponse.java index 15e808c71a8..39938d5cfab 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/encoding/StaticHttpDecodedResponse.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/encoding/StaticHttpDecodedResponse.java @@ -20,6 +20,8 @@ import javax.annotation.Nonnull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.encoding.StreamDecoder; import com.linecorp.armeria.common.HttpData; import com.linecorp.armeria.common.HttpHeaderNames; @@ -28,7 +30,6 @@ import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.ResponseHeadersBuilder; -import com.linecorp.armeria.common.annotation.Nullable; /** * An {@link HttpResponse} that applies HTTP decoding using the {@link StreamDecoder} created with this. diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/encoding/package-info.java b/core/src/main/java/com/linecorp/armeria/internal/common/encoding/package-info.java index e02191db05f..ae8f8b283b7 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/encoding/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/encoding/package-info.java @@ -17,7 +17,7 @@ /** * Various classes used internally. Anything in this package can be changed or removed at any time. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.common.encoding; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/loadbalancer/package-info.java b/core/src/main/java/com/linecorp/armeria/internal/common/loadbalancer/package-info.java index 4ae40899ac6..1c5f6dda10c 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/loadbalancer/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/loadbalancer/package-info.java @@ -17,7 +17,7 @@ /** * Various classes used internally. Anything in this package can be changed or removed at any time. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.common.loadbalancer; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/logging/package-info.java b/core/src/main/java/com/linecorp/armeria/internal/common/logging/package-info.java index 783eff39a74..6ba40956524 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/logging/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/logging/package-info.java @@ -17,7 +17,7 @@ /** * Various classes used internally. Anything in this package can be changed or removed at any time. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.common.logging; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/metric/CaffeineMetricSupport.java b/core/src/main/java/com/linecorp/armeria/internal/common/metric/CaffeineMetricSupport.java index 50f01ed077f..3f61e1cd01f 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/metric/CaffeineMetricSupport.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/metric/CaffeineMetricSupport.java @@ -34,13 +34,14 @@ import java.util.concurrent.locks.ReentrantLock; import java.util.function.ToDoubleFunction; +import org.jspecify.annotations.Nullable; + import com.github.benmanes.caffeine.cache.Cache; import com.github.benmanes.caffeine.cache.LoadingCache; import com.github.benmanes.caffeine.cache.stats.CacheStats; import com.google.common.annotations.VisibleForTesting; import com.google.errorprone.annotations.concurrent.GuardedBy; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.metric.MeterIdPrefix; import com.linecorp.armeria.common.util.Ticker; import com.linecorp.armeria.internal.common.util.ReentrantShortLock; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/metric/RequestMetricSupport.java b/core/src/main/java/com/linecorp/armeria/internal/common/metric/RequestMetricSupport.java index 29da8a9fb5f..7870f96e6e9 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/metric/RequestMetricSupport.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/metric/RequestMetricSupport.java @@ -22,12 +22,13 @@ import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.LongAdder; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.ResponseTimeoutException; import com.linecorp.armeria.client.WriteTimeoutException; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.RequestContext; import com.linecorp.armeria.common.SuccessFunction; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.ClientConnectionTimings; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.logging.RequestLogAccess; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/metric/package-info.java b/core/src/main/java/com/linecorp/armeria/internal/common/metric/package-info.java index 47f629153cb..0fd5d23db35 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/metric/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/metric/package-info.java @@ -17,7 +17,7 @@ /** * Various classes used internally. Anything in this package can be changed or removed at any time. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.common.metric; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/package-info.java b/core/src/main/java/com/linecorp/armeria/internal/common/package-info.java index 02a2e536271..956088137ea 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/package-info.java @@ -17,7 +17,7 @@ /** * Various classes used internally. Anything in this package can be changed or removed at any time. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.common; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/stream/AbortingSubscriber.java b/core/src/main/java/com/linecorp/armeria/internal/common/stream/AbortingSubscriber.java index 1994b74ed9c..bf0272d4967 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/stream/AbortingSubscriber.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/stream/AbortingSubscriber.java @@ -18,10 +18,10 @@ import java.lang.reflect.Field; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.AbortedStreamException; public final class AbortingSubscriber implements Subscriber { diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/stream/AbstractFixedStreamMessage.java b/core/src/main/java/com/linecorp/armeria/internal/common/stream/AbstractFixedStreamMessage.java index ba8c01a9e51..bfec66eb84c 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/stream/AbstractFixedStreamMessage.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/stream/AbstractFixedStreamMessage.java @@ -18,7 +18,7 @@ import java.util.List; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; import io.netty.util.concurrent.EventExecutor; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/stream/ByteBufsInputStream.java b/core/src/main/java/com/linecorp/armeria/internal/common/stream/ByteBufsInputStream.java index d5467fa5681..5b8e230b6cc 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/stream/ByteBufsInputStream.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/stream/ByteBufsInputStream.java @@ -30,7 +30,8 @@ import java.util.concurrent.atomic.AtomicBoolean; import java.util.function.Function; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; import io.netty.buffer.ByteBuf; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/stream/DecodedStreamMessage.java b/core/src/main/java/com/linecorp/armeria/internal/common/stream/DecodedStreamMessage.java index f2585f59170..3d65d3b8fe5 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/stream/DecodedStreamMessage.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/stream/DecodedStreamMessage.java @@ -18,6 +18,7 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; @@ -27,7 +28,6 @@ import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.stream.AbortedStreamException; import com.linecorp.armeria.common.stream.CancelledSubscriptionException; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/stream/EmptyFixedStreamMessage.java b/core/src/main/java/com/linecorp/armeria/internal/common/stream/EmptyFixedStreamMessage.java index 740c16e3fc7..98c945cfbce 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/stream/EmptyFixedStreamMessage.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/stream/EmptyFixedStreamMessage.java @@ -21,11 +21,11 @@ import java.util.List; import java.util.concurrent.CompletableFuture; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import com.google.common.collect.ImmutableList; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.stream.SubscriptionOption; import com.linecorp.armeria.common.util.UnmodifiableFuture; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/stream/FixedStreamMessage.java b/core/src/main/java/com/linecorp/armeria/internal/common/stream/FixedStreamMessage.java index d274ac2f8db..ca3d9fe7176 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/stream/FixedStreamMessage.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/stream/FixedStreamMessage.java @@ -26,12 +26,12 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.atomic.AtomicReferenceFieldUpdater; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.AbortedStreamException; import com.linecorp.armeria.common.stream.AggregationSupport; import com.linecorp.armeria.common.stream.CancelledSubscriptionException; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/stream/OneElementFixedStreamMessage.java b/core/src/main/java/com/linecorp/armeria/internal/common/stream/OneElementFixedStreamMessage.java index 46a2f4bc0ea..a5f1ffdae3a 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/stream/OneElementFixedStreamMessage.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/stream/OneElementFixedStreamMessage.java @@ -20,9 +20,10 @@ import java.util.List; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import io.netty.util.concurrent.EventExecutor; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/stream/RecoverableStreamMessage.java b/core/src/main/java/com/linecorp/armeria/internal/common/stream/RecoverableStreamMessage.java index 28673677460..d87317c590d 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/stream/RecoverableStreamMessage.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/stream/RecoverableStreamMessage.java @@ -24,11 +24,11 @@ import java.util.concurrent.atomic.AtomicIntegerFieldUpdater; import java.util.function.Function; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.AbortedStreamException; import com.linecorp.armeria.common.stream.CancelledSubscriptionException; import com.linecorp.armeria.common.stream.NoopSubscriber; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/stream/StreamMessageUtil.java b/core/src/main/java/com/linecorp/armeria/internal/common/stream/StreamMessageUtil.java index ec544571aa6..d09f6e5d24e 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/stream/StreamMessageUtil.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/stream/StreamMessageUtil.java @@ -16,13 +16,13 @@ package com.linecorp.armeria.internal.common.stream; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.multipart.BodyPart; import com.linecorp.armeria.common.stream.ByteStreamMessage; import com.linecorp.armeria.common.stream.StreamMessage; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/stream/SubscriptionArbiter.java b/core/src/main/java/com/linecorp/armeria/internal/common/stream/SubscriptionArbiter.java index bf6c776ad6d..b14562cbeae 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/stream/SubscriptionArbiter.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/stream/SubscriptionArbiter.java @@ -34,12 +34,11 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscription; import com.google.common.math.LongMath; -import com.linecorp.armeria.common.annotation.Nullable; - import io.netty.util.concurrent.EventExecutor; /** diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/stream/SurroundingPublisher.java b/core/src/main/java/com/linecorp/armeria/internal/common/stream/SurroundingPublisher.java index 4bb45f2a37d..c4d092d320b 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/stream/SurroundingPublisher.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/stream/SurroundingPublisher.java @@ -23,6 +23,7 @@ import java.util.concurrent.atomic.AtomicIntegerFieldUpdater; import java.util.function.Function; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; @@ -31,7 +32,6 @@ import com.google.common.math.LongMath; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.AbortedStreamException; import com.linecorp.armeria.common.stream.CancelledSubscriptionException; import com.linecorp.armeria.common.stream.NoopSubscriber; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/stream/ThreeElementFixedStreamMessage.java b/core/src/main/java/com/linecorp/armeria/internal/common/stream/ThreeElementFixedStreamMessage.java index eb7e6064a6e..0ec711068a6 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/stream/ThreeElementFixedStreamMessage.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/stream/ThreeElementFixedStreamMessage.java @@ -20,9 +20,10 @@ import java.util.List; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import io.netty.util.concurrent.EventExecutor; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/stream/TwoElementFixedStreamMessage.java b/core/src/main/java/com/linecorp/armeria/internal/common/stream/TwoElementFixedStreamMessage.java index a32acbe4e6a..83ea8b64aac 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/stream/TwoElementFixedStreamMessage.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/stream/TwoElementFixedStreamMessage.java @@ -20,9 +20,10 @@ import java.util.List; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import io.netty.util.concurrent.EventExecutor; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/stream/package-info.java b/core/src/main/java/com/linecorp/armeria/internal/common/stream/package-info.java index 5b307aae257..3f9b9c54596 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/stream/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/stream/package-info.java @@ -17,7 +17,7 @@ /** * Various classes used internally. Anything in this package can be changed or removed at any time. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.common.stream; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/util/CertificateParams.java b/core/src/main/java/com/linecorp/armeria/internal/common/util/CertificateParams.java index 4a490139ca0..eb63255ec3e 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/util/CertificateParams.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/util/CertificateParams.java @@ -26,11 +26,10 @@ import org.bouncycastle.asn1.x500.X500Name; import org.bouncycastle.cert.jcajce.JcaX509CertificateHolder; +import org.jspecify.annotations.Nullable; import com.google.common.collect.ImmutableList; -import com.linecorp.armeria.common.annotation.Nullable; - final class CertificateParams { private final String fqdn; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/util/CertificateUtil.java b/core/src/main/java/com/linecorp/armeria/internal/common/util/CertificateUtil.java index 7026c111410..4b6076e3b9f 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/util/CertificateUtil.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/util/CertificateUtil.java @@ -39,6 +39,7 @@ import org.bouncycastle.asn1.x500.style.BCStyle; import org.bouncycastle.asn1.x500.style.IETFUtils; import org.bouncycastle.cert.jcajce.JcaX509CertificateHolder; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -46,7 +47,6 @@ import com.github.benmanes.caffeine.cache.LoadingCache; import com.google.common.collect.ImmutableList; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import io.netty.buffer.ByteBufAllocator; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/util/ChannelUtil.java b/core/src/main/java/com/linecorp/armeria/internal/common/util/ChannelUtil.java index 2cb6cba79cf..4c90f0bc605 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/util/ChannelUtil.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/util/ChannelUtil.java @@ -28,6 +28,8 @@ import javax.net.ssl.SSLSession; +import org.jspecify.annotations.Nullable; + import com.google.common.annotations.VisibleForTesting; import com.google.common.base.Strings; import com.google.common.collect.ImmutableList; @@ -37,7 +39,6 @@ import com.linecorp.armeria.common.Flags; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.DomainSocketAddress; import com.linecorp.armeria.common.util.TransportType; import com.linecorp.armeria.common.util.UnmodifiableFuture; @@ -387,7 +388,7 @@ private static DomainSocketAddress findAddress(DomainSocketChannel ch) { @Nullable private static DomainSocketAddress toArmeriaDomainSocketAddress( - @Nullable io.netty.channel.unix.DomainSocketAddress addr) { + io.netty.channel.unix.@Nullable DomainSocketAddress addr) { if (addr != null) { final String path = addr.path(); if (!Strings.isNullOrEmpty(path)) { diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/util/EventLoopThread.java b/core/src/main/java/com/linecorp/armeria/internal/common/util/EventLoopThread.java index ac082c940e3..602c7543880 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/util/EventLoopThread.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/util/EventLoopThread.java @@ -15,8 +15,9 @@ */ package com.linecorp.armeria.internal.common.util; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.NonBlocking; -import com.linecorp.armeria.common.annotation.Nullable; import io.netty.util.concurrent.FastThreadLocal; import io.netty.util.concurrent.FastThreadLocalThread; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/util/IpAddrUtil.java b/core/src/main/java/com/linecorp/armeria/internal/common/util/IpAddrUtil.java index b9b5a063d4b..735fd2a748c 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/util/IpAddrUtil.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/util/IpAddrUtil.java @@ -18,7 +18,7 @@ import java.net.InetAddress; import java.net.InetSocketAddress; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; import io.netty.util.NetUtil; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/util/KeyStoreUtil.java b/core/src/main/java/com/linecorp/armeria/internal/common/util/KeyStoreUtil.java index 9e50999dc78..7ca1253eb76 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/util/KeyStoreUtil.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/util/KeyStoreUtil.java @@ -30,11 +30,12 @@ import java.util.Enumeration; import java.util.List; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.google.common.io.ByteStreams; import com.linecorp.armeria.common.TlsKeyPair; -import com.linecorp.armeria.common.annotation.Nullable; public final class KeyStoreUtil { public static TlsKeyPair load(File keyStoreFile, @@ -142,8 +143,8 @@ private static String detectFormat(InputStream keyStoreStream) throws IOExceptio return null; } - @Nullable - private static char[] keyPassword(@Nullable String keyStorePassword, @Nullable String keyPassword) { + private static char @Nullable [] keyPassword(@Nullable String keyStorePassword, + @Nullable String keyPassword) { if (keyPassword != null) { return keyPassword.toCharArray(); } diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/util/MappedPathUtil.java b/core/src/main/java/com/linecorp/armeria/internal/common/util/MappedPathUtil.java index 1f6c07d6303..adc4096c08c 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/util/MappedPathUtil.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/util/MappedPathUtil.java @@ -16,8 +16,9 @@ package com.linecorp.armeria.internal.common.util; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.RequestTarget; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.ServiceRequestContext; public final class MappedPathUtil { diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/util/MinifiedBouncyCastleProvider.java b/core/src/main/java/com/linecorp/armeria/internal/common/util/MinifiedBouncyCastleProvider.java index 8cf5f5a22d6..6371d093b9a 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/util/MinifiedBouncyCastleProvider.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/util/MinifiedBouncyCastleProvider.java @@ -38,11 +38,10 @@ import org.bouncycastle.jcajce.provider.config.ConfigurableProvider; import org.bouncycastle.jcajce.provider.util.AsymmetricKeyInfoConverter; import org.bouncycastle.jce.provider.BouncyCastleProvider; +import org.jspecify.annotations.Nullable; import com.google.common.annotations.VisibleForTesting; -import com.linecorp.armeria.common.annotation.Nullable; - /** * A downsized version of {@link BouncyCastleProvider} which provides only RSA/DSA/EC {@link KeyFactorySpi}s * and X.509 {@link CertificateFactorySpi}. diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/util/ObjectCollectingUtil.java b/core/src/main/java/com/linecorp/armeria/internal/common/util/ObjectCollectingUtil.java index d755ef7b4b3..0651ca2b7ec 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/util/ObjectCollectingUtil.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/util/ObjectCollectingUtil.java @@ -23,6 +23,7 @@ import java.util.concurrent.Executor; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; @@ -30,7 +31,6 @@ import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableList.Builder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.StreamMessage; import com.linecorp.armeria.server.ServiceRequestContext; @@ -135,8 +135,7 @@ public void onError(Throwable cause) { } private static class CollectingMultipleObjectsSubscriber extends AbstractCollectingSubscriber { - @Nullable - private ImmutableList.Builder collector; + private ImmutableList.@Nullable Builder collector; CollectingMultipleObjectsSubscriber(CompletableFuture future, ServiceRequestContext ctx) { super(future, ctx); diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/util/SslContextUtil.java b/core/src/main/java/com/linecorp/armeria/internal/common/util/SslContextUtil.java index 7aec2408068..8d6ced19430 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/util/SslContextUtil.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/util/SslContextUtil.java @@ -32,6 +32,7 @@ import javax.net.ssl.TrustManagerFactory; import javax.net.ssl.X509ExtendedTrustManager; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -42,7 +43,6 @@ import com.linecorp.armeria.client.ClientTlsSpec; import com.linecorp.armeria.common.AbstractTlsSpec; import com.linecorp.armeria.common.TlsKeyPair; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.server.ServerTlsSpec; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/util/StringUtil.java b/core/src/main/java/com/linecorp/armeria/internal/common/util/StringUtil.java index ec8d7486ff5..78d3dea4b3b 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/util/StringUtil.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/util/StringUtil.java @@ -18,9 +18,9 @@ import java.util.Map; -import com.google.common.collect.ImmutableMap; +import org.jspecify.annotations.Nullable; -import com.linecorp.armeria.common.annotation.Nullable; +import com.google.common.collect.ImmutableMap; public final class StringUtil { private static final int MAX_NUM = 1000; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/util/TransportTypeProvider.java b/core/src/main/java/com/linecorp/armeria/internal/common/util/TransportTypeProvider.java index 5fffeb4b2e8..1693ce5c25a 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/util/TransportTypeProvider.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/util/TransportTypeProvider.java @@ -23,9 +23,10 @@ import java.util.concurrent.ThreadFactory; import java.util.function.BiFunction; +import org.jspecify.annotations.Nullable; + import com.google.common.base.Ascii; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.common.util.SystemInfo; import com.linecorp.armeria.common.util.TransportType; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/util/package-info.java b/core/src/main/java/com/linecorp/armeria/internal/common/util/package-info.java index e82f182985f..5987b3c34c3 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/util/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/util/package-info.java @@ -17,7 +17,7 @@ /** * Various classes used internally. Anything in this package can be changed or removed at any time. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.common.util; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/websocket/WebSocketFrameDecoder.java b/core/src/main/java/com/linecorp/armeria/internal/common/websocket/WebSocketFrameDecoder.java index 1c1f8fd8643..2a86a2e03af 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/websocket/WebSocketFrameDecoder.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/websocket/WebSocketFrameDecoder.java @@ -34,11 +34,11 @@ import java.util.ArrayList; import java.util.List; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.linecorp.armeria.common.Bytes; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.HttpDecoder; import com.linecorp.armeria.common.stream.StreamDecoderInput; import com.linecorp.armeria.common.stream.StreamDecoderOutput; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/websocket/WebSocketUtil.java b/core/src/main/java/com/linecorp/armeria/internal/common/websocket/WebSocketUtil.java index 4da9eeb7e51..53960337ce1 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/websocket/WebSocketUtil.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/websocket/WebSocketUtil.java @@ -25,12 +25,13 @@ import java.util.Base64; import java.util.Iterator; +import org.jspecify.annotations.Nullable; + import com.google.common.hash.Hashing; import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.HttpMethod; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.websocket.CloseWebSocketFrame; import com.linecorp.armeria.common.websocket.WebSocketCloseStatus; import com.linecorp.armeria.common.websocket.WebSocketFrame; diff --git a/core/src/main/java/com/linecorp/armeria/internal/common/websocket/package-info.java b/core/src/main/java/com/linecorp/armeria/internal/common/websocket/package-info.java index 2cd0ee90d38..8778d436d35 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/common/websocket/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/internal/common/websocket/package-info.java @@ -17,7 +17,7 @@ /** * Internal common classes for the WebSocket Protocol. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.common.websocket; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/internal/logging/ContentPreviewingUtil.java b/core/src/main/java/com/linecorp/armeria/internal/logging/ContentPreviewingUtil.java index 3ab067ce40e..a186b8cd210 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/logging/ContentPreviewingUtil.java +++ b/core/src/main/java/com/linecorp/armeria/internal/logging/ContentPreviewingUtil.java @@ -20,6 +20,7 @@ import java.util.function.BiFunction; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -32,7 +33,6 @@ import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.RequestContext; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.ContentPreviewer; import com.linecorp.armeria.common.logging.ContentPreviewerFactory; import com.linecorp.armeria.common.logging.RequestLogBuilder; diff --git a/core/src/main/java/com/linecorp/armeria/internal/logging/package-info.java b/core/src/main/java/com/linecorp/armeria/internal/logging/package-info.java index b998084adba..e8018b81f58 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/logging/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/internal/logging/package-info.java @@ -17,7 +17,7 @@ /** * Various classes used internally. Anything in this package can be changed or removed at any time. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.logging; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/internal/server/CorsHeaderUtil.java b/core/src/main/java/com/linecorp/armeria/internal/server/CorsHeaderUtil.java index 7aad575adc6..b3694c35292 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/server/CorsHeaderUtil.java +++ b/core/src/main/java/com/linecorp/armeria/internal/server/CorsHeaderUtil.java @@ -18,6 +18,7 @@ import java.util.Set; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -28,7 +29,6 @@ import com.linecorp.armeria.common.HttpHeadersBuilder; import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.ServiceRequestContext; import com.linecorp.armeria.server.cors.CorsConfig; import com.linecorp.armeria.server.cors.CorsPolicy; diff --git a/core/src/main/java/com/linecorp/armeria/internal/server/DefaultServiceRequestContext.java b/core/src/main/java/com/linecorp/armeria/internal/server/DefaultServiceRequestContext.java index ef5999036d7..0287dddf48c 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/server/DefaultServiceRequestContext.java +++ b/core/src/main/java/com/linecorp/armeria/internal/server/DefaultServiceRequestContext.java @@ -36,6 +36,8 @@ import javax.annotation.Nonnull; import javax.net.ssl.SSLSession; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.ContextAwareBlockingTaskExecutor; import com.linecorp.armeria.common.ContextAwareEventLoop; import com.linecorp.armeria.common.ExchangeType; @@ -50,7 +52,6 @@ import com.linecorp.armeria.common.RequestTarget; import com.linecorp.armeria.common.Response; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.logging.RequestLogAccess; import com.linecorp.armeria.common.logging.RequestLogBuilder; diff --git a/core/src/main/java/com/linecorp/armeria/internal/server/ResponseConversionUtil.java b/core/src/main/java/com/linecorp/armeria/internal/server/ResponseConversionUtil.java index 6d589876453..9e381c898a1 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/server/ResponseConversionUtil.java +++ b/core/src/main/java/com/linecorp/armeria/internal/server/ResponseConversionUtil.java @@ -24,6 +24,7 @@ import java.util.function.Function; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; @@ -33,7 +34,6 @@ import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpResponseWriter; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.ServiceRequestContext; /** diff --git a/core/src/main/java/com/linecorp/armeria/internal/server/RouteDecoratingService.java b/core/src/main/java/com/linecorp/armeria/internal/server/RouteDecoratingService.java index 4c4435332da..878fa2d6275 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/server/RouteDecoratingService.java +++ b/core/src/main/java/com/linecorp/armeria/internal/server/RouteDecoratingService.java @@ -22,11 +22,12 @@ import java.util.Queue; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpResponse; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.HttpService; import com.linecorp.armeria.server.Route; import com.linecorp.armeria.server.Routed; diff --git a/core/src/main/java/com/linecorp/armeria/internal/server/TransientServiceOptionsBuilder.java b/core/src/main/java/com/linecorp/armeria/internal/server/TransientServiceOptionsBuilder.java index 5cd39008049..02cdba10f27 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/server/TransientServiceOptionsBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/internal/server/TransientServiceOptionsBuilder.java @@ -20,11 +20,12 @@ import java.util.EnumSet; import java.util.Set; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableSet; import com.google.common.collect.Sets; import com.linecorp.armeria.common.Flags; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.TransientServiceBuilder; import com.linecorp.armeria.server.TransientServiceOption; diff --git a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AggregatedResponseConverterFunction.java b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AggregatedResponseConverterFunction.java index 269b4d1a919..e3942c8b522 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AggregatedResponseConverterFunction.java +++ b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AggregatedResponseConverterFunction.java @@ -24,13 +24,13 @@ import java.util.concurrent.CompletableFuture; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.server.ServiceRequestContext; import com.linecorp.armeria.server.annotation.ResponseConverterFunction; diff --git a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedBeanFactoryRegistry.java b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedBeanFactoryRegistry.java index 7e9508a6b83..ab710a37ff9 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedBeanFactoryRegistry.java +++ b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedBeanFactoryRegistry.java @@ -36,6 +36,7 @@ import java.util.TreeSet; import java.util.concurrent.locks.ReentrantLock; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -48,7 +49,6 @@ import com.google.common.primitives.Ints; import com.linecorp.armeria.common.DependencyInjector; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.util.ReentrantShortLock; import com.linecorp.armeria.internal.server.annotation.AnnotatedValueResolver.NoAnnotatedParameterException; import com.linecorp.armeria.internal.server.annotation.AnnotatedValueResolver.RequestObjectResolver; diff --git a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedBeanFieldInfo.java b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedBeanFieldInfo.java index 65fda3eda82..7f747dfb60f 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedBeanFieldInfo.java +++ b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedBeanFieldInfo.java @@ -21,10 +21,11 @@ import java.util.Map; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.google.common.collect.ImmutableMap; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.BeanFieldInfo; final class AnnotatedBeanFieldInfo implements BeanFieldInfo { diff --git a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedDocServicePlugin.java b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedDocServicePlugin.java index 7468e258c1d..1856421ac38 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedDocServicePlugin.java +++ b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedDocServicePlugin.java @@ -44,6 +44,8 @@ import java.util.Set; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.core.TreeNode; import com.fasterxml.jackson.databind.JavaType; @@ -54,7 +56,6 @@ import com.google.common.collect.ImmutableSet; import com.linecorp.armeria.common.MediaType; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.JacksonUtil; import com.linecorp.armeria.internal.server.RouteUtil; import com.linecorp.armeria.internal.server.annotation.AnnotatedBeanFactoryRegistry.BeanFactoryId; diff --git a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedRequest.java b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedRequest.java index 928426b8b18..f858b72fa0d 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedRequest.java +++ b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedRequest.java @@ -21,9 +21,10 @@ import java.util.Collections; import java.util.List; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.BeanFieldInfo; final class AnnotatedRequest { diff --git a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedRequestJsonSerializer.java b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedRequestJsonSerializer.java index 68ed7b589c3..6ab0bd0ffc2 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedRequestJsonSerializer.java +++ b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedRequestJsonSerializer.java @@ -19,11 +19,12 @@ import java.io.IOException; import java.util.function.BiFunction; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.core.JsonGenerator; import com.fasterxml.jackson.databind.JsonSerializer; import com.fasterxml.jackson.databind.SerializerProvider; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.BeanFieldInfo; final class AnnotatedRequestJsonSerializer extends JsonSerializer { diff --git a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedResponse.java b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedResponse.java index 7c81e2057d1..702472a2a40 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedResponse.java +++ b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedResponse.java @@ -18,9 +18,10 @@ import static com.linecorp.armeria.internal.server.annotation.AnnotatedServiceLogUtil.maybeUnwrapFuture; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.BeanFieldInfo; final class AnnotatedResponse { diff --git a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedResponseJsonSerializer.java b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedResponseJsonSerializer.java index a3b3d028b35..715e989bec0 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedResponseJsonSerializer.java +++ b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedResponseJsonSerializer.java @@ -19,11 +19,12 @@ import java.io.IOException; import java.util.function.BiFunction; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.core.JsonGenerator; import com.fasterxml.jackson.databind.JsonSerializer; import com.fasterxml.jackson.databind.SerializerProvider; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.BeanFieldInfo; final class AnnotatedResponseJsonSerializer extends JsonSerializer { diff --git a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceFactory.java b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceFactory.java index cc510c2a667..ce162938bf1 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceFactory.java +++ b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceFactory.java @@ -52,6 +52,7 @@ import java.util.function.Function; import java.util.stream.Collectors; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -72,7 +73,6 @@ import com.linecorp.armeria.common.HttpMethod; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.MediaType; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.server.annotation.AnnotatedValueResolver.NoParameterException; import com.linecorp.armeria.internal.server.annotation.AnnotationUtil.FindOption; import com.linecorp.armeria.internal.server.annotation.DecoratorAnnotationUtil.DecoratorAndOrder; diff --git a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceLogUtil.java b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceLogUtil.java index 1fb4cbb902d..eb15a01bd77 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceLogUtil.java +++ b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceLogUtil.java @@ -21,6 +21,8 @@ import java.util.Set; import java.util.concurrent.CompletableFuture; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.module.SimpleModule; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; @@ -33,7 +35,6 @@ import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.QueryParams; import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.multipart.Multipart; import com.linecorp.armeria.common.multipart.MultipartFile; diff --git a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceTypeUtil.java b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceTypeUtil.java index b59c015ee46..487abf1d828 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceTypeUtil.java +++ b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceTypeUtil.java @@ -36,9 +36,10 @@ import java.util.function.Function; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableMap; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.internal.common.util.StringUtil; diff --git a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedValueResolver.java b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedValueResolver.java index 26d3cbfee14..7ef66a09b44 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedValueResolver.java +++ b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedValueResolver.java @@ -58,6 +58,7 @@ import java.util.function.Function; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -81,7 +82,6 @@ import com.linecorp.armeria.common.Request; import com.linecorp.armeria.common.RequestContext; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.multipart.Multipart; import com.linecorp.armeria.common.multipart.MultipartFile; import com.linecorp.armeria.common.util.Exceptions; diff --git a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotationUtil.java b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotationUtil.java index ea423b34614..da5f93ecc53 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotationUtil.java +++ b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotationUtil.java @@ -39,6 +39,7 @@ import java.util.function.Predicate; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -48,7 +49,6 @@ import com.google.common.collect.MapMaker; import com.linecorp.armeria.common.DependencyInjector; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.annotation.Description; /** diff --git a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/ClassUtil.java b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/ClassUtil.java index 64e5bccd80d..568feb7e81e 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/ClassUtil.java +++ b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/ClassUtil.java @@ -23,10 +23,9 @@ import java.util.concurrent.CompletionStage; import java.util.function.Predicate; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; -import com.linecorp.armeria.common.annotation.Nullable; - public final class ClassUtil { /** diff --git a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/CompositeRequestConverterFunction.java b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/CompositeRequestConverterFunction.java index 016afb01df4..6a57a7e93ec 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/CompositeRequestConverterFunction.java +++ b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/CompositeRequestConverterFunction.java @@ -18,10 +18,11 @@ import java.lang.reflect.ParameterizedType; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.linecorp.armeria.common.AggregatedHttpRequest; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.ServiceRequestContext; import com.linecorp.armeria.server.annotation.FallthroughException; import com.linecorp.armeria.server.annotation.RequestConverterFunction; diff --git a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/CompositeResponseConverterFunction.java b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/CompositeResponseConverterFunction.java index 09bba7a81f1..0286d04607c 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/CompositeResponseConverterFunction.java +++ b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/CompositeResponseConverterFunction.java @@ -18,6 +18,8 @@ import java.lang.reflect.Type; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.linecorp.armeria.common.HttpData; @@ -26,7 +28,6 @@ import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseEntity; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.SafeCloseable; import com.linecorp.armeria.server.ServiceRequestContext; import com.linecorp.armeria.server.annotation.FallthroughException; diff --git a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/DecoratorAnnotationUtil.java b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/DecoratorAnnotationUtil.java index cd9c36da9fa..c92993a8d42 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/DecoratorAnnotationUtil.java +++ b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/DecoratorAnnotationUtil.java @@ -26,12 +26,13 @@ import java.util.List; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.google.common.annotations.VisibleForTesting; import com.google.common.base.MoreObjects; import com.google.common.collect.Iterables; import com.linecorp.armeria.common.DependencyInjector; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.DecoratingHttpServiceFunction; import com.linecorp.armeria.server.HttpService; import com.linecorp.armeria.server.annotation.Decorator; diff --git a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/DefaultAnnotatedService.java b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/DefaultAnnotatedService.java index 66c5f0a75b4..f23b1e404a9 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/DefaultAnnotatedService.java +++ b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/DefaultAnnotatedService.java @@ -34,6 +34,7 @@ import java.util.concurrent.ScheduledExecutorService; import java.util.function.Function; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -50,7 +51,6 @@ import com.linecorp.armeria.common.ResponseEntity; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.ResponseHeadersBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.BeanFieldInfo; import com.linecorp.armeria.common.logging.RequestLogProperty; import com.linecorp.armeria.common.util.Exceptions; diff --git a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/DefaultDescriptiveTypeInfoProvider.java b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/DefaultDescriptiveTypeInfoProvider.java index 4cc23db0b51..dd5532e949b 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/DefaultDescriptiveTypeInfoProvider.java +++ b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/DefaultDescriptiveTypeInfoProvider.java @@ -31,6 +31,8 @@ import java.util.function.Function; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.databind.BeanDescription; import com.fasterxml.jackson.databind.JavaType; @@ -40,7 +42,6 @@ import com.google.common.collect.ImmutableList; import com.linecorp.armeria.common.HttpResponse; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.JacksonUtil; import com.linecorp.armeria.server.annotation.Description; import com.linecorp.armeria.server.docs.ContainerTypeSignature; diff --git a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/DefaultValues.java b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/DefaultValues.java index 30efa206f49..d86bbfef772 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/DefaultValues.java +++ b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/DefaultValues.java @@ -16,7 +16,8 @@ package com.linecorp.armeria.internal.server.annotation; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.server.annotation.Default; /** diff --git a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/JacksonBeanFieldInfo.java b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/JacksonBeanFieldInfo.java index 5d15ad2f82d..2b2a1a1722d 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/JacksonBeanFieldInfo.java +++ b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/JacksonBeanFieldInfo.java @@ -20,12 +20,13 @@ import java.lang.annotation.Annotation; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.databind.BeanDescription; import com.fasterxml.jackson.databind.BeanProperty; import com.google.common.base.MoreObjects; import com.google.common.base.Objects; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.BeanFieldInfo; final class JacksonBeanFieldInfo implements BeanFieldInfo { diff --git a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/KotlinUtil.java b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/KotlinUtil.java index 14220aa0ee1..ae271db9905 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/KotlinUtil.java +++ b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/KotlinUtil.java @@ -27,9 +27,10 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.ExecutorService; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.internal.common.RequestContextUtil; import com.linecorp.armeria.server.ServiceRequestContext; diff --git a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/MaskingBeanDeserializerModifier.java b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/MaskingBeanDeserializerModifier.java index 738cdf9f84a..5f676ece71f 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/MaskingBeanDeserializerModifier.java +++ b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/MaskingBeanDeserializerModifier.java @@ -20,6 +20,8 @@ import java.io.IOException; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.databind.BeanDescription; import com.fasterxml.jackson.databind.BeanProperty; @@ -30,7 +32,6 @@ import com.fasterxml.jackson.databind.deser.BeanDeserializerModifier; import com.fasterxml.jackson.databind.deser.std.DelegatingDeserializer; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.FieldMasker; final class MaskingBeanDeserializerModifier extends BeanDeserializerModifier { diff --git a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/MaskingBeanSerializerModifier.java b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/MaskingBeanSerializerModifier.java index a869e350463..3c0ad05b177 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/MaskingBeanSerializerModifier.java +++ b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/MaskingBeanSerializerModifier.java @@ -21,6 +21,8 @@ import java.io.IOException; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.core.JsonGenerator; import com.fasterxml.jackson.databind.BeanDescription; import com.fasterxml.jackson.databind.BeanProperty; @@ -33,7 +35,6 @@ import com.fasterxml.jackson.databind.ser.ResolvableSerializer; import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.FieldMasker; final class MaskingBeanSerializerModifier extends BeanSerializerModifier { diff --git a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/ScalaUtil.java b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/ScalaUtil.java index 3df57f09a76..e07084d2e2a 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/ScalaUtil.java +++ b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/ScalaUtil.java @@ -19,7 +19,7 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.ExecutorService; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; import scala.concurrent.ExecutionContext; import scala.util.Failure; diff --git a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/package-info.java b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/package-info.java index 04843a42d68..40e8c07909f 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/internal/server/annotation/package-info.java @@ -17,7 +17,7 @@ /** * Various classes used internally. Anything in this package can be changed or removed at any time. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.server.annotation; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/internal/server/docs/package-info.java b/core/src/main/java/com/linecorp/armeria/internal/server/docs/package-info.java index fa428bb1678..224a9868621 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/server/docs/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/internal/server/docs/package-info.java @@ -17,7 +17,7 @@ /** * Various classes used internally. Anything in this package can be changed or removed at any time. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.server.docs; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/internal/server/package-info.java b/core/src/main/java/com/linecorp/armeria/internal/server/package-info.java index 6cc1fadfdfa..cd4ce2bc494 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/server/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/internal/server/package-info.java @@ -17,7 +17,7 @@ /** * Various classes used internally. Anything in this package can be changed or removed at any time. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.server; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/internal/server/servlet/ServletTlsAttributes.java b/core/src/main/java/com/linecorp/armeria/internal/server/servlet/ServletTlsAttributes.java index b683678156a..4b1301b0f9a 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/server/servlet/ServletTlsAttributes.java +++ b/core/src/main/java/com/linecorp/armeria/internal/server/servlet/ServletTlsAttributes.java @@ -25,12 +25,12 @@ import javax.net.ssl.SSLPeerUnverifiedException; import javax.net.ssl.SSLSession; +import org.jspecify.annotations.Nullable; + import com.google.common.annotations.VisibleForTesting; import com.google.common.collect.ImmutableList; import com.google.common.io.BaseEncoding; -import com.linecorp.armeria.common.annotation.Nullable; - import io.netty.util.internal.EmptyArrays; /** diff --git a/core/src/main/java/com/linecorp/armeria/internal/server/servlet/package-info.java b/core/src/main/java/com/linecorp/armeria/internal/server/servlet/package-info.java index b4ba982cad9..b3318eaebf2 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/server/servlet/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/internal/server/servlet/package-info.java @@ -17,7 +17,7 @@ /** * Various classes used internally. Anything in this package can be changed or removed at any time. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.server.servlet; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/internal/server/websocket/DefaultWebSocketService.java b/core/src/main/java/com/linecorp/armeria/internal/server/websocket/DefaultWebSocketService.java index b3628103d30..2c744c0c9cc 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/server/websocket/DefaultWebSocketService.java +++ b/core/src/main/java/com/linecorp/armeria/internal/server/websocket/DefaultWebSocketService.java @@ -24,6 +24,7 @@ import java.util.function.Predicate; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -42,7 +43,6 @@ import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.ResponseHeadersBuilder; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.ClosedStreamException; import com.linecorp.armeria.common.stream.StreamMessage; import com.linecorp.armeria.common.util.TimeoutMode; diff --git a/core/src/main/java/com/linecorp/armeria/internal/server/websocket/package-info.java b/core/src/main/java/com/linecorp/armeria/internal/server/websocket/package-info.java index b09d3070fbe..b44754a8b85 100644 --- a/core/src/main/java/com/linecorp/armeria/internal/server/websocket/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/internal/server/websocket/package-info.java @@ -17,7 +17,7 @@ /** * Various classes used internally. Anything in this package can be changed or removed at any time. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.server.websocket; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/server/AbstractAnnotatedServiceConfigSetters.java b/core/src/main/java/com/linecorp/armeria/server/AbstractAnnotatedServiceConfigSetters.java index 0fea75617f4..1595fb75ba6 100644 --- a/core/src/main/java/com/linecorp/armeria/server/AbstractAnnotatedServiceConfigSetters.java +++ b/core/src/main/java/com/linecorp/armeria/server/AbstractAnnotatedServiceConfigSetters.java @@ -30,13 +30,14 @@ import java.util.function.Function; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableList.Builder; import com.linecorp.armeria.common.DependencyInjector; import com.linecorp.armeria.common.RequestId; import com.linecorp.armeria.common.SuccessFunction; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.util.BlockingTaskExecutor; import com.linecorp.armeria.internal.server.annotation.AnnotatedServiceElement; diff --git a/core/src/main/java/com/linecorp/armeria/server/AbstractHttpResponseHandler.java b/core/src/main/java/com/linecorp/armeria/server/AbstractHttpResponseHandler.java index 9efa2b84526..4d42d32c72f 100644 --- a/core/src/main/java/com/linecorp/armeria/server/AbstractHttpResponseHandler.java +++ b/core/src/main/java/com/linecorp/armeria/server/AbstractHttpResponseHandler.java @@ -23,6 +23,8 @@ import java.util.concurrent.CompletableFuture; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.AggregatedHttpResponse; import com.linecorp.armeria.common.ClosedSessionException; import com.linecorp.armeria.common.HttpData; @@ -31,7 +33,6 @@ import com.linecorp.armeria.common.HttpMethod; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.logging.RequestLogBuilder; import com.linecorp.armeria.common.logging.RequestLogProperty; diff --git a/core/src/main/java/com/linecorp/armeria/server/AbstractHttpResponseSubscriber.java b/core/src/main/java/com/linecorp/armeria/server/AbstractHttpResponseSubscriber.java index 44b50cf3dce..42cdbb75746 100644 --- a/core/src/main/java/com/linecorp/armeria/server/AbstractHttpResponseSubscriber.java +++ b/core/src/main/java/com/linecorp/armeria/server/AbstractHttpResponseSubscriber.java @@ -23,6 +23,7 @@ import java.nio.channels.ClosedChannelException; import java.util.concurrent.CompletableFuture; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; import org.slf4j.Logger; @@ -37,7 +38,6 @@ import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.HttpObject; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.logging.RequestLogProperty; import com.linecorp.armeria.common.stream.CancelledSubscriptionException; diff --git a/core/src/main/java/com/linecorp/armeria/server/AbstractPathMapping.java b/core/src/main/java/com/linecorp/armeria/server/AbstractPathMapping.java index a533bd0f553..cf7b40bd896 100644 --- a/core/src/main/java/com/linecorp/armeria/server/AbstractPathMapping.java +++ b/core/src/main/java/com/linecorp/armeria/server/AbstractPathMapping.java @@ -19,7 +19,7 @@ import static com.linecorp.armeria.internal.server.RouteUtil.ensureAbsolutePath; import static java.util.Objects.requireNonNull; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * A skeletal {@link PathMapping} implementation. Implement {@link #doApply(RoutingContext)}. diff --git a/core/src/main/java/com/linecorp/armeria/server/AggregatedHttpResponseHandler.java b/core/src/main/java/com/linecorp/armeria/server/AggregatedHttpResponseHandler.java index 78a4fa538dd..6ea0fff8f3b 100644 --- a/core/src/main/java/com/linecorp/armeria/server/AggregatedHttpResponseHandler.java +++ b/core/src/main/java/com/linecorp/armeria/server/AggregatedHttpResponseHandler.java @@ -23,13 +23,13 @@ import java.util.concurrent.CompletableFuture; import java.util.function.BiFunction; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.linecorp.armeria.common.AggregatedHttpResponse; import com.linecorp.armeria.common.CancellationException; import com.linecorp.armeria.common.EmptyHttpResponseException; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.logging.RequestLogProperty; import com.linecorp.armeria.common.util.Exceptions; diff --git a/core/src/main/java/com/linecorp/armeria/server/AggregatingDecodedHttpRequest.java b/core/src/main/java/com/linecorp/armeria/server/AggregatingDecodedHttpRequest.java index cc5c3ad3680..39300d120d7 100644 --- a/core/src/main/java/com/linecorp/armeria/server/AggregatingDecodedHttpRequest.java +++ b/core/src/main/java/com/linecorp/armeria/server/AggregatingDecodedHttpRequest.java @@ -20,6 +20,8 @@ import javax.annotation.Nonnull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.AggregatedHttpRequest; import com.linecorp.armeria.common.AggregationOptions; import com.linecorp.armeria.common.ExchangeType; @@ -28,7 +30,6 @@ import com.linecorp.armeria.common.HttpObject; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.stream.AggregatingStreamMessage; import io.netty.channel.EventLoop; diff --git a/core/src/main/java/com/linecorp/armeria/server/ClientAddressSource.java b/core/src/main/java/com/linecorp/armeria/server/ClientAddressSource.java index b41f6a31a05..26422ae52d2 100644 --- a/core/src/main/java/com/linecorp/armeria/server/ClientAddressSource.java +++ b/core/src/main/java/com/linecorp/armeria/server/ClientAddressSource.java @@ -20,11 +20,12 @@ import java.util.List; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.google.common.collect.ImmutableList; import com.linecorp.armeria.common.HttpHeaderNames; -import com.linecorp.armeria.common.annotation.Nullable; import io.netty.util.AsciiString; diff --git a/core/src/main/java/com/linecorp/armeria/server/ContentPreviewServerErrorHandler.java b/core/src/main/java/com/linecorp/armeria/server/ContentPreviewServerErrorHandler.java index 60f2d0c496e..179cd2d0383 100644 --- a/core/src/main/java/com/linecorp/armeria/server/ContentPreviewServerErrorHandler.java +++ b/core/src/main/java/com/linecorp/armeria/server/ContentPreviewServerErrorHandler.java @@ -18,8 +18,9 @@ import static com.linecorp.armeria.internal.logging.ContentPreviewingUtil.setUpResponseContentPreviewer; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpResponse; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.logging.ContentPreviewingService; final class ContentPreviewServerErrorHandler implements DecoratingServerErrorHandlerFunction { diff --git a/core/src/main/java/com/linecorp/armeria/server/CorsServerErrorHandler.java b/core/src/main/java/com/linecorp/armeria/server/CorsServerErrorHandler.java index 4943f6c2d97..ff81ed00be8 100644 --- a/core/src/main/java/com/linecorp/armeria/server/CorsServerErrorHandler.java +++ b/core/src/main/java/com/linecorp/armeria/server/CorsServerErrorHandler.java @@ -19,9 +19,10 @@ import static com.linecorp.armeria.internal.common.ArmeriaHttpUtil.isCorsPreflightRequest; import static com.linecorp.armeria.internal.server.CorsHeaderUtil.isForbiddenOrigin; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.server.CorsHeaderUtil; import com.linecorp.armeria.server.cors.CorsService; diff --git a/core/src/main/java/com/linecorp/armeria/server/DecodedHttpRequest.java b/core/src/main/java/com/linecorp/armeria/server/DecodedHttpRequest.java index fb1ccee31d0..83e54eeb324 100644 --- a/core/src/main/java/com/linecorp/armeria/server/DecodedHttpRequest.java +++ b/core/src/main/java/com/linecorp/armeria/server/DecodedHttpRequest.java @@ -18,11 +18,12 @@ import java.util.concurrent.CompletableFuture; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.ExchangeType; import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.SystemInfo; import com.linecorp.armeria.internal.common.InboundTrafficController; diff --git a/core/src/main/java/com/linecorp/armeria/server/DecoratingServerErrorHandlerFunction.java b/core/src/main/java/com/linecorp/armeria/server/DecoratingServerErrorHandlerFunction.java index 3a6658b6c32..cdc89251359 100644 --- a/core/src/main/java/com/linecorp/armeria/server/DecoratingServerErrorHandlerFunction.java +++ b/core/src/main/java/com/linecorp/armeria/server/DecoratingServerErrorHandlerFunction.java @@ -16,8 +16,9 @@ package com.linecorp.armeria.server; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpResponse; -import com.linecorp.armeria.common.annotation.Nullable; /** * A function to decorate a {@link ServerErrorHandler} with additional behavior. It is typically used to inject diff --git a/core/src/main/java/com/linecorp/armeria/server/DecoratingService.java b/core/src/main/java/com/linecorp/armeria/server/DecoratingService.java index 3473937925e..35b7272e269 100644 --- a/core/src/main/java/com/linecorp/armeria/server/DecoratingService.java +++ b/core/src/main/java/com/linecorp/armeria/server/DecoratingService.java @@ -16,9 +16,10 @@ package com.linecorp.armeria.server; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.Request; import com.linecorp.armeria.common.Response; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.AbstractUnwrappable; /** diff --git a/core/src/main/java/com/linecorp/armeria/server/DefaultRoute.java b/core/src/main/java/com/linecorp/armeria/server/DefaultRoute.java index aac1bf02a3b..4768d0d20ca 100644 --- a/core/src/main/java/com/linecorp/armeria/server/DefaultRoute.java +++ b/core/src/main/java/com/linecorp/armeria/server/DefaultRoute.java @@ -24,6 +24,8 @@ import java.util.Objects; import java.util.Set; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; import com.google.common.collect.Sets; @@ -33,7 +35,6 @@ import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.QueryParams; -import com.linecorp.armeria.common.annotation.Nullable; final class DefaultRoute implements Route { diff --git a/core/src/main/java/com/linecorp/armeria/server/DefaultRoutingContext.java b/core/src/main/java/com/linecorp/armeria/server/DefaultRoutingContext.java index bdc51f2141b..9360ea9392c 100644 --- a/core/src/main/java/com/linecorp/armeria/server/DefaultRoutingContext.java +++ b/core/src/main/java/com/linecorp/armeria/server/DefaultRoutingContext.java @@ -22,6 +22,8 @@ import java.util.List; import java.util.Objects; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.google.common.base.MoreObjects.ToStringHelper; @@ -31,7 +33,6 @@ import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.RequestTarget; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; /** * Holds the parameters which are required to find a service available to handle the request. diff --git a/core/src/main/java/com/linecorp/armeria/server/DefaultServerConfig.java b/core/src/main/java/com/linecorp/armeria/server/DefaultServerConfig.java index ce9a253fac2..643b49776a8 100644 --- a/core/src/main/java/com/linecorp/armeria/server/DefaultServerConfig.java +++ b/core/src/main/java/com/linecorp/armeria/server/DefaultServerConfig.java @@ -34,12 +34,13 @@ import java.util.function.Function; import java.util.function.Predicate; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.linecorp.armeria.common.DependencyInjector; import com.linecorp.armeria.common.Http1HeaderNaming; import com.linecorp.armeria.common.RequestId; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.BlockingTaskExecutor; import io.micrometer.core.instrument.MeterRegistry; diff --git a/core/src/main/java/com/linecorp/armeria/server/DefaultServerErrorHandler.java b/core/src/main/java/com/linecorp/armeria/server/DefaultServerErrorHandler.java index c6005da4a7f..5b5b5804116 100644 --- a/core/src/main/java/com/linecorp/armeria/server/DefaultServerErrorHandler.java +++ b/core/src/main/java/com/linecorp/armeria/server/DefaultServerErrorHandler.java @@ -19,6 +19,8 @@ import javax.annotation.Nonnull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.AggregatedHttpResponse; import com.linecorp.armeria.common.ContentTooLargeException; import com.linecorp.armeria.common.HttpData; @@ -28,7 +30,6 @@ import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.ShuttingDownException; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.internal.common.RequestContextExtension; import com.linecorp.armeria.internal.common.util.TemporaryThreadLocals; diff --git a/core/src/main/java/com/linecorp/armeria/server/DefaultServiceConfigSetters.java b/core/src/main/java/com/linecorp/armeria/server/DefaultServiceConfigSetters.java index 71006ff0c57..25166d992a7 100644 --- a/core/src/main/java/com/linecorp/armeria/server/DefaultServiceConfigSetters.java +++ b/core/src/main/java/com/linecorp/armeria/server/DefaultServiceConfigSetters.java @@ -33,13 +33,14 @@ import java.util.function.Function; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.HttpHeadersBuilder; import com.linecorp.armeria.common.RequestId; import com.linecorp.armeria.common.SuccessFunction; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.BlockingTaskExecutor; import com.linecorp.armeria.common.util.EventLoopGroups; import com.linecorp.armeria.server.annotation.AnnotatedService; diff --git a/core/src/main/java/com/linecorp/armeria/server/DefaultUnloggedExceptionsReporter.java b/core/src/main/java/com/linecorp/armeria/server/DefaultUnloggedExceptionsReporter.java index 299ed6b4e0a..6fbea9727fa 100644 --- a/core/src/main/java/com/linecorp/armeria/server/DefaultUnloggedExceptionsReporter.java +++ b/core/src/main/java/com/linecorp/armeria/server/DefaultUnloggedExceptionsReporter.java @@ -21,11 +21,11 @@ import java.util.concurrent.atomic.AtomicIntegerFieldUpdater; import java.util.concurrent.atomic.LongAdder; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.linecorp.armeria.common.CommonPools; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.TextFormatter; import io.micrometer.core.instrument.Counter; diff --git a/core/src/main/java/com/linecorp/armeria/server/EmptyContentDecodedHttpRequest.java b/core/src/main/java/com/linecorp/armeria/server/EmptyContentDecodedHttpRequest.java index eed2714dfe1..f6749514bb6 100644 --- a/core/src/main/java/com/linecorp/armeria/server/EmptyContentDecodedHttpRequest.java +++ b/core/src/main/java/com/linecorp/armeria/server/EmptyContentDecodedHttpRequest.java @@ -21,6 +21,7 @@ import java.util.List; import java.util.concurrent.CompletableFuture; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import com.google.common.collect.ImmutableList; @@ -31,7 +32,6 @@ import com.linecorp.armeria.common.HttpObject; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.SubscriptionOption; import com.linecorp.armeria.common.util.EventLoopCheckingFuture; import com.linecorp.armeria.common.util.UnmodifiableFuture; diff --git a/core/src/main/java/com/linecorp/armeria/server/ExactPathMapping.java b/core/src/main/java/com/linecorp/armeria/server/ExactPathMapping.java index eab743cc6f9..88de66b381a 100644 --- a/core/src/main/java/com/linecorp/armeria/server/ExactPathMapping.java +++ b/core/src/main/java/com/linecorp/armeria/server/ExactPathMapping.java @@ -24,11 +24,12 @@ import java.util.Set; import java.util.regex.Pattern; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; import com.linecorp.armeria.common.Flags; -import com.linecorp.armeria.common.annotation.Nullable; final class ExactPathMapping extends AbstractPathMapping { diff --git a/core/src/main/java/com/linecorp/armeria/server/ExceptionReportingServiceErrorHandler.java b/core/src/main/java/com/linecorp/armeria/server/ExceptionReportingServiceErrorHandler.java index 7b91ac6f0ca..d9438e85683 100644 --- a/core/src/main/java/com/linecorp/armeria/server/ExceptionReportingServiceErrorHandler.java +++ b/core/src/main/java/com/linecorp/armeria/server/ExceptionReportingServiceErrorHandler.java @@ -16,11 +16,12 @@ package com.linecorp.armeria.server; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.AggregatedHttpResponse; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; final class ExceptionReportingServiceErrorHandler implements ServiceErrorHandler { diff --git a/core/src/main/java/com/linecorp/armeria/server/GlobPathMapping.java b/core/src/main/java/com/linecorp/armeria/server/GlobPathMapping.java index d8cd5b7090a..b5fe407076d 100644 --- a/core/src/main/java/com/linecorp/armeria/server/GlobPathMapping.java +++ b/core/src/main/java/com/linecorp/armeria/server/GlobPathMapping.java @@ -25,10 +25,11 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.util.StringUtil; final class GlobPathMapping extends AbstractPathMapping { diff --git a/core/src/main/java/com/linecorp/armeria/server/Http1RequestDecoder.java b/core/src/main/java/com/linecorp/armeria/server/Http1RequestDecoder.java index 908533b7379..d4a6af79d92 100644 --- a/core/src/main/java/com/linecorp/armeria/server/Http1RequestDecoder.java +++ b/core/src/main/java/com/linecorp/armeria/server/Http1RequestDecoder.java @@ -23,6 +23,7 @@ import java.net.URISyntaxException; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -40,7 +41,6 @@ import com.linecorp.armeria.common.RequestTarget; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.SystemInfo; import com.linecorp.armeria.internal.common.ArmeriaHttpUtil; import com.linecorp.armeria.internal.common.InboundTrafficController; diff --git a/core/src/main/java/com/linecorp/armeria/server/Http2RequestDecoder.java b/core/src/main/java/com/linecorp/armeria/server/Http2RequestDecoder.java index 3a682667241..747ba26ac80 100644 --- a/core/src/main/java/com/linecorp/armeria/server/Http2RequestDecoder.java +++ b/core/src/main/java/com/linecorp/armeria/server/Http2RequestDecoder.java @@ -23,6 +23,7 @@ import static io.netty.handler.codec.http2.Http2Error.PROTOCOL_ERROR; import static io.netty.handler.codec.http2.Http2Exception.connectionError; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -36,7 +37,6 @@ import com.linecorp.armeria.common.RequestTarget; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.ClosedStreamException; import com.linecorp.armeria.internal.common.ArmeriaHttpUtil; import com.linecorp.armeria.internal.common.Http2GoAwayHandler; diff --git a/core/src/main/java/com/linecorp/armeria/server/Http2ServerConnectionHandler.java b/core/src/main/java/com/linecorp/armeria/server/Http2ServerConnectionHandler.java index a27772cfae5..e4fb7dca56c 100644 --- a/core/src/main/java/com/linecorp/armeria/server/Http2ServerConnectionHandler.java +++ b/core/src/main/java/com/linecorp/armeria/server/Http2ServerConnectionHandler.java @@ -18,7 +18,8 @@ import static com.linecorp.armeria.internal.common.KeepAliveHandlerUtil.needsKeepAliveHandler; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.internal.common.AbstractHttp2ConnectionHandler; import com.linecorp.armeria.internal.common.GracefulConnectionShutdownHandler; import com.linecorp.armeria.internal.common.InitiateConnectionShutdown; diff --git a/core/src/main/java/com/linecorp/armeria/server/Http2ServerUpgradeCodec.java b/core/src/main/java/com/linecorp/armeria/server/Http2ServerUpgradeCodec.java index 82d18819e15..f8a0fc5d376 100644 --- a/core/src/main/java/com/linecorp/armeria/server/Http2ServerUpgradeCodec.java +++ b/core/src/main/java/com/linecorp/armeria/server/Http2ServerUpgradeCodec.java @@ -38,11 +38,10 @@ import java.nio.CharBuffer; import java.util.List; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import com.linecorp.armeria.common.annotation.Nullable; - import io.netty.buffer.ByteBuf; import io.netty.buffer.ByteBufUtil; import io.netty.channel.ChannelHandlerContext; diff --git a/core/src/main/java/com/linecorp/armeria/server/HttpHeaderUtil.java b/core/src/main/java/com/linecorp/armeria/server/HttpHeaderUtil.java index 415540a47d2..ac9c1aa850f 100644 --- a/core/src/main/java/com/linecorp/armeria/server/HttpHeaderUtil.java +++ b/core/src/main/java/com/linecorp/armeria/server/HttpHeaderUtil.java @@ -27,6 +27,7 @@ import java.util.function.Function; import java.util.function.Predicate; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -41,7 +42,6 @@ import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.MediaType; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.ArmeriaHttpUtil; import io.netty.util.AsciiString; diff --git a/core/src/main/java/com/linecorp/armeria/server/HttpResponseException.java b/core/src/main/java/com/linecorp/armeria/server/HttpResponseException.java index 842958d9c60..97ff07eed39 100644 --- a/core/src/main/java/com/linecorp/armeria/server/HttpResponseException.java +++ b/core/src/main/java/com/linecorp/armeria/server/HttpResponseException.java @@ -19,11 +19,12 @@ import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.AggregatedHttpResponse; import com.linecorp.armeria.common.Flags; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpStatus; -import com.linecorp.armeria.common.annotation.Nullable; /** * A {@link RuntimeException} that is raised to send an HTTP response with the content specified diff --git a/core/src/main/java/com/linecorp/armeria/server/HttpServer.java b/core/src/main/java/com/linecorp/armeria/server/HttpServer.java index bc7c9a13a31..f77801de90f 100644 --- a/core/src/main/java/com/linecorp/armeria/server/HttpServer.java +++ b/core/src/main/java/com/linecorp/armeria/server/HttpServer.java @@ -16,8 +16,9 @@ package com.linecorp.armeria.server; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import io.netty.channel.Channel; import io.netty.channel.ChannelHandler; diff --git a/core/src/main/java/com/linecorp/armeria/server/HttpServerCodec.java b/core/src/main/java/com/linecorp/armeria/server/HttpServerCodec.java index f6dc34775c6..6683a1df415 100644 --- a/core/src/main/java/com/linecorp/armeria/server/HttpServerCodec.java +++ b/core/src/main/java/com/linecorp/armeria/server/HttpServerCodec.java @@ -38,7 +38,7 @@ import java.util.List; import java.util.Queue; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; import io.netty.buffer.ByteBuf; import io.netty.channel.ChannelHandlerContext; diff --git a/core/src/main/java/com/linecorp/armeria/server/HttpServerHandler.java b/core/src/main/java/com/linecorp/armeria/server/HttpServerHandler.java index adbc7e29727..c44934382fa 100644 --- a/core/src/main/java/com/linecorp/armeria/server/HttpServerHandler.java +++ b/core/src/main/java/com/linecorp/armeria/server/HttpServerHandler.java @@ -39,6 +39,7 @@ import javax.net.ssl.SSLSession; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -59,7 +60,6 @@ import com.linecorp.armeria.common.ResponseHeadersBuilder; import com.linecorp.armeria.common.SessionProtocol; import com.linecorp.armeria.common.ShuttingDownException; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLogBuilder; import com.linecorp.armeria.common.metric.NoopMeterRegistry; import com.linecorp.armeria.common.stream.ClosedStreamException; diff --git a/core/src/main/java/com/linecorp/armeria/server/HttpServerPipelineConfigurator.java b/core/src/main/java/com/linecorp/armeria/server/HttpServerPipelineConfigurator.java index 20ae3ddf2a9..050fde2e7a2 100644 --- a/core/src/main/java/com/linecorp/armeria/server/HttpServerPipelineConfigurator.java +++ b/core/src/main/java/com/linecorp/armeria/server/HttpServerPipelineConfigurator.java @@ -40,6 +40,7 @@ import javax.net.ssl.SSLHandshakeException; import javax.net.ssl.SSLSession; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -47,7 +48,6 @@ import com.linecorp.armeria.common.Flags; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.metric.MoreMeters; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.internal.common.ArmeriaHttp2HeadersDecoder; diff --git a/core/src/main/java/com/linecorp/armeria/server/HttpServerUpgradeHandler.java b/core/src/main/java/com/linecorp/armeria/server/HttpServerUpgradeHandler.java index 727f11b27d2..529c9906ee1 100644 --- a/core/src/main/java/com/linecorp/armeria/server/HttpServerUpgradeHandler.java +++ b/core/src/main/java/com/linecorp/armeria/server/HttpServerUpgradeHandler.java @@ -41,10 +41,11 @@ import java.nio.charset.StandardCharsets; import java.util.List; +import org.jspecify.annotations.Nullable; + import com.google.common.base.Splitter; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import io.netty.buffer.Unpooled; import io.netty.channel.ChannelFuture; diff --git a/core/src/main/java/com/linecorp/armeria/server/HttpStatusException.java b/core/src/main/java/com/linecorp/armeria/server/HttpStatusException.java index 1a81ffc4976..2cc815890e6 100644 --- a/core/src/main/java/com/linecorp/armeria/server/HttpStatusException.java +++ b/core/src/main/java/com/linecorp/armeria/server/HttpStatusException.java @@ -19,10 +19,11 @@ import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.Flags; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpStatus; -import com.linecorp.armeria.common.annotation.Nullable; /** * A {@link RuntimeException} that is raised to send a simplistic HTTP response with minimal content diff --git a/core/src/main/java/com/linecorp/armeria/server/LengthBasedServiceNaming.java b/core/src/main/java/com/linecorp/armeria/server/LengthBasedServiceNaming.java index 0cf7d00757f..37c54ebd82a 100644 --- a/core/src/main/java/com/linecorp/armeria/server/LengthBasedServiceNaming.java +++ b/core/src/main/java/com/linecorp/armeria/server/LengthBasedServiceNaming.java @@ -20,7 +20,8 @@ import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentMap; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.internal.common.util.TargetLengthBasedClassNameAbbreviator; final class LengthBasedServiceNaming implements ServiceNaming { diff --git a/core/src/main/java/com/linecorp/armeria/server/NettyHttp1Headers.java b/core/src/main/java/com/linecorp/armeria/server/NettyHttp1Headers.java index cd654167774..69603f44274 100644 --- a/core/src/main/java/com/linecorp/armeria/server/NettyHttp1Headers.java +++ b/core/src/main/java/com/linecorp/armeria/server/NettyHttp1Headers.java @@ -22,12 +22,13 @@ import java.util.Set; import java.util.stream.Collectors; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.google.common.collect.Maps; import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.RequestHeadersBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import io.netty.handler.codec.CharSequenceValueConverter; import io.netty.handler.codec.DefaultHeaders.NameValidator; diff --git a/core/src/main/java/com/linecorp/armeria/server/ParameterizedPathMapping.java b/core/src/main/java/com/linecorp/armeria/server/ParameterizedPathMapping.java index 1c9a26ecf18..c5f6446d4e9 100644 --- a/core/src/main/java/com/linecorp/armeria/server/ParameterizedPathMapping.java +++ b/core/src/main/java/com/linecorp/armeria/server/ParameterizedPathMapping.java @@ -28,13 +28,14 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.google.common.base.Splitter; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; import com.linecorp.armeria.common.Flags; -import com.linecorp.armeria.common.annotation.Nullable; /** * The default {@link PathMapping} implementation. It holds three things: diff --git a/core/src/main/java/com/linecorp/armeria/server/PathMapping.java b/core/src/main/java/com/linecorp/armeria/server/PathMapping.java index eccbc604bf4..d416712ce38 100644 --- a/core/src/main/java/com/linecorp/armeria/server/PathMapping.java +++ b/core/src/main/java/com/linecorp/armeria/server/PathMapping.java @@ -18,7 +18,7 @@ import java.util.List; import java.util.Set; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * Matches the absolute path part of a URI and extracts path parameters from it. diff --git a/core/src/main/java/com/linecorp/armeria/server/PrefixPathMapping.java b/core/src/main/java/com/linecorp/armeria/server/PrefixPathMapping.java index 35284b92210..2aec479eb43 100644 --- a/core/src/main/java/com/linecorp/armeria/server/PrefixPathMapping.java +++ b/core/src/main/java/com/linecorp/armeria/server/PrefixPathMapping.java @@ -24,11 +24,12 @@ import java.util.List; import java.util.Set; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; import com.linecorp.armeria.common.Flags; -import com.linecorp.armeria.common.annotation.Nullable; final class PrefixPathMapping extends AbstractPathMapping { diff --git a/core/src/main/java/com/linecorp/armeria/server/RedirectService.java b/core/src/main/java/com/linecorp/armeria/server/RedirectService.java index 91a9f036c5f..c91cd48a6c9 100755 --- a/core/src/main/java/com/linecorp/armeria/server/RedirectService.java +++ b/core/src/main/java/com/linecorp/armeria/server/RedirectService.java @@ -25,12 +25,13 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; /** * An {@link HttpService} that sends a redirect response such as {@code "307 Temporary Redirect"}. diff --git a/core/src/main/java/com/linecorp/armeria/server/RegexPathMapping.java b/core/src/main/java/com/linecorp/armeria/server/RegexPathMapping.java index df048aeb221..c3d6b09995c 100644 --- a/core/src/main/java/com/linecorp/armeria/server/RegexPathMapping.java +++ b/core/src/main/java/com/linecorp/armeria/server/RegexPathMapping.java @@ -24,11 +24,11 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; -import com.linecorp.armeria.common.annotation.Nullable; - final class RegexPathMapping extends AbstractPathMapping { private static final Pattern NAMED_GROUP_PATTERN = Pattern.compile("\\(\\?<([^>]+)>"); diff --git a/core/src/main/java/com/linecorp/armeria/server/RegexPathMappingWithPrefix.java b/core/src/main/java/com/linecorp/armeria/server/RegexPathMappingWithPrefix.java index d25f54900f8..534fa2e5c1f 100644 --- a/core/src/main/java/com/linecorp/armeria/server/RegexPathMappingWithPrefix.java +++ b/core/src/main/java/com/linecorp/armeria/server/RegexPathMappingWithPrefix.java @@ -23,9 +23,9 @@ import java.util.List; import java.util.Set; -import com.google.common.collect.ImmutableList; +import org.jspecify.annotations.Nullable; -import com.linecorp.armeria.common.annotation.Nullable; +import com.google.common.collect.ImmutableList; final class RegexPathMappingWithPrefix extends AbstractPathMapping { diff --git a/core/src/main/java/com/linecorp/armeria/server/RouteBuilder.java b/core/src/main/java/com/linecorp/armeria/server/RouteBuilder.java index 15b57d0c772..c39e611d6ba 100644 --- a/core/src/main/java/com/linecorp/armeria/server/RouteBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/server/RouteBuilder.java @@ -33,6 +33,8 @@ import java.util.function.Predicate; import java.util.regex.Pattern; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; @@ -45,7 +47,6 @@ import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.QueryParams; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.annotation.MatchesHeader; import com.linecorp.armeria.server.annotation.MatchesParam; diff --git a/core/src/main/java/com/linecorp/armeria/server/RouteCache.java b/core/src/main/java/com/linecorp/armeria/server/RouteCache.java index f83ae0d71b8..6e7f4bf06a8 100644 --- a/core/src/main/java/com/linecorp/armeria/server/RouteCache.java +++ b/core/src/main/java/com/linecorp/armeria/server/RouteCache.java @@ -26,13 +26,14 @@ import java.util.Set; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.github.benmanes.caffeine.cache.Cache; import com.github.benmanes.caffeine.cache.Caffeine; import com.google.common.annotations.VisibleForTesting; import com.google.common.base.MoreObjects; import com.linecorp.armeria.common.Flags; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.metric.MeterIdPrefix; import com.linecorp.armeria.internal.common.metric.CaffeineMetricSupport; import com.linecorp.armeria.internal.server.RouteDecoratingService; diff --git a/core/src/main/java/com/linecorp/armeria/server/Routed.java b/core/src/main/java/com/linecorp/armeria/server/Routed.java index 2b1312c23e8..6db1ea6ac3a 100644 --- a/core/src/main/java/com/linecorp/armeria/server/Routed.java +++ b/core/src/main/java/com/linecorp/armeria/server/Routed.java @@ -18,9 +18,9 @@ import static java.util.Objects.requireNonNull; -import com.google.common.base.MoreObjects; +import org.jspecify.annotations.Nullable; -import com.linecorp.armeria.common.annotation.Nullable; +import com.google.common.base.MoreObjects; /** * A value mapped by {@link Router}. diff --git a/core/src/main/java/com/linecorp/armeria/server/Routers.java b/core/src/main/java/com/linecorp/armeria/server/Routers.java index 9891f999799..5cf58b8eabd 100644 --- a/core/src/main/java/com/linecorp/armeria/server/Routers.java +++ b/core/src/main/java/com/linecorp/armeria/server/Routers.java @@ -39,6 +39,7 @@ import java.util.function.Function; import java.util.stream.StreamSupport; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -47,7 +48,6 @@ import com.google.common.collect.ImmutableSet; import com.google.common.collect.Lists; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.server.RouteDecoratingService; import com.linecorp.armeria.server.RoutingTrie.Node; import com.linecorp.armeria.server.RoutingTrie.NodeProcessor; @@ -414,8 +414,7 @@ public void dump(OutputStream output) { private final class RouteCandidateCollectingNodeProcessor implements NodeProcessor { private final RoutingContext routingCtx; - @Nullable - private ImmutableList.Builder> routeCollector; + private ImmutableList.@Nullable Builder> routeCollector; private RouteCandidateCollectingNodeProcessor(RoutingContext routingCtx) { this.routingCtx = routingCtx; diff --git a/core/src/main/java/com/linecorp/armeria/server/RoutingContext.java b/core/src/main/java/com/linecorp/armeria/server/RoutingContext.java index df43b8803e2..6774f16db1a 100644 --- a/core/src/main/java/com/linecorp/armeria/server/RoutingContext.java +++ b/core/src/main/java/com/linecorp/armeria/server/RoutingContext.java @@ -22,6 +22,8 @@ import java.util.List; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.Flags; import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.HttpMethod; @@ -31,7 +33,6 @@ import com.linecorp.armeria.common.RequestTarget; import com.linecorp.armeria.common.RequestTargetForm; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.internal.common.DefaultRequestTarget; diff --git a/core/src/main/java/com/linecorp/armeria/server/RoutingContextWrapper.java b/core/src/main/java/com/linecorp/armeria/server/RoutingContextWrapper.java index 603cedb05fe..9261a1e6aa9 100644 --- a/core/src/main/java/com/linecorp/armeria/server/RoutingContextWrapper.java +++ b/core/src/main/java/com/linecorp/armeria/server/RoutingContextWrapper.java @@ -18,13 +18,14 @@ import java.util.List; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpMethod; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.QueryParams; import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.RequestTarget; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; class RoutingContextWrapper implements RoutingContext { diff --git a/core/src/main/java/com/linecorp/armeria/server/RoutingPredicate.java b/core/src/main/java/com/linecorp/armeria/server/RoutingPredicate.java index 6829ed753c9..93bfc9e2787 100644 --- a/core/src/main/java/com/linecorp/armeria/server/RoutingPredicate.java +++ b/core/src/main/java/com/linecorp/armeria/server/RoutingPredicate.java @@ -26,6 +26,7 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -37,7 +38,6 @@ import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.QueryParams; -import com.linecorp.armeria.common.annotation.Nullable; import io.netty.util.AsciiString; diff --git a/core/src/main/java/com/linecorp/armeria/server/RoutingResult.java b/core/src/main/java/com/linecorp/armeria/server/RoutingResult.java index c8df71040a0..7e3b2621bbb 100644 --- a/core/src/main/java/com/linecorp/armeria/server/RoutingResult.java +++ b/core/src/main/java/com/linecorp/armeria/server/RoutingResult.java @@ -17,11 +17,12 @@ import java.util.Map; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.google.common.collect.ImmutableMap; import com.linecorp.armeria.common.MediaType; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.ArmeriaHttpUtil; import com.linecorp.armeria.internal.common.util.StringUtil; diff --git a/core/src/main/java/com/linecorp/armeria/server/RoutingResultBuilder.java b/core/src/main/java/com/linecorp/armeria/server/RoutingResultBuilder.java index 8bfccd8f4e9..0ae9d50210f 100644 --- a/core/src/main/java/com/linecorp/armeria/server/RoutingResultBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/server/RoutingResultBuilder.java @@ -20,10 +20,11 @@ import static com.linecorp.armeria.server.RoutingResult.LOWEST_SCORE; import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableMap; import com.linecorp.armeria.common.MediaType; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.ArmeriaHttpUtil; /** @@ -39,8 +40,7 @@ public final class RoutingResultBuilder { @Nullable private String query; - @Nullable - private ImmutableMap.Builder pathParams; + private ImmutableMap.@Nullable Builder pathParams; private int score = LOWEST_SCORE; diff --git a/core/src/main/java/com/linecorp/armeria/server/RoutingTrie.java b/core/src/main/java/com/linecorp/armeria/server/RoutingTrie.java index 8db5cffbe0f..e5844daa169 100644 --- a/core/src/main/java/com/linecorp/armeria/server/RoutingTrie.java +++ b/core/src/main/java/com/linecorp/armeria/server/RoutingTrie.java @@ -25,12 +25,12 @@ import java.nio.charset.StandardCharsets; import java.util.List; +import org.jspecify.annotations.Nullable; + import com.google.common.annotations.VisibleForTesting; import com.google.common.base.MoreObjects; import com.google.common.collect.ImmutableList; -import com.linecorp.armeria.common.annotation.Nullable; - import it.unimi.dsi.fastutil.chars.Char2ObjectMap; import it.unimi.dsi.fastutil.chars.Char2ObjectMaps; diff --git a/core/src/main/java/com/linecorp/armeria/server/RoutingTrieBuilder.java b/core/src/main/java/com/linecorp/armeria/server/RoutingTrieBuilder.java index f9425db571b..327b0a55fb9 100644 --- a/core/src/main/java/com/linecorp/armeria/server/RoutingTrieBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/server/RoutingTrieBuilder.java @@ -23,9 +23,10 @@ import java.util.Comparator; import java.util.List; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.RoutingTrie.Node; import com.linecorp.armeria.server.RoutingTrie.NodeType; diff --git a/core/src/main/java/com/linecorp/armeria/server/Server.java b/core/src/main/java/com/linecorp/armeria/server/Server.java index 171f3deed99..14819befa63 100644 --- a/core/src/main/java/com/linecorp/armeria/server/Server.java +++ b/core/src/main/java/com/linecorp/armeria/server/Server.java @@ -47,6 +47,7 @@ import java.util.stream.Collectors; import org.jctools.maps.NonBlockingHashSet; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -61,7 +62,6 @@ import com.linecorp.armeria.common.Flags; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.DomainSocketAddress; import com.linecorp.armeria.common.util.EventLoopGroups; import com.linecorp.armeria.common.util.Exceptions; diff --git a/core/src/main/java/com/linecorp/armeria/server/ServerBuilder.java b/core/src/main/java/com/linecorp/armeria/server/ServerBuilder.java index 4502a6c93f7..dac06524405 100644 --- a/core/src/main/java/com/linecorp/armeria/server/ServerBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/server/ServerBuilder.java @@ -59,6 +59,7 @@ import javax.net.ssl.KeyManagerFactory; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -86,7 +87,6 @@ import com.linecorp.armeria.common.TlsKeyPair; import com.linecorp.armeria.common.TlsProvider; import com.linecorp.armeria.common.TlsSetters; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.logging.RequestOnlyLog; import com.linecorp.armeria.common.metric.MeterIdPrefix; diff --git a/core/src/main/java/com/linecorp/armeria/server/ServerErrorHandler.java b/core/src/main/java/com/linecorp/armeria/server/ServerErrorHandler.java index 3aa74b5000b..fafb8458762 100644 --- a/core/src/main/java/com/linecorp/armeria/server/ServerErrorHandler.java +++ b/core/src/main/java/com/linecorp/armeria/server/ServerErrorHandler.java @@ -17,12 +17,13 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.AggregatedHttpResponse; import com.linecorp.armeria.common.ContentTooLargeException; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.logging.RequestLog; diff --git a/core/src/main/java/com/linecorp/armeria/server/ServerErrorHandlerDecorators.java b/core/src/main/java/com/linecorp/armeria/server/ServerErrorHandlerDecorators.java index 6513a606a7a..3af44ca9f8b 100644 --- a/core/src/main/java/com/linecorp/armeria/server/ServerErrorHandlerDecorators.java +++ b/core/src/main/java/com/linecorp/armeria/server/ServerErrorHandlerDecorators.java @@ -18,13 +18,14 @@ import java.util.List; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.linecorp.armeria.common.AggregatedHttpResponse; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; final class ServerErrorHandlerDecorators { diff --git a/core/src/main/java/com/linecorp/armeria/server/ServerHttp1ObjectEncoder.java b/core/src/main/java/com/linecorp/armeria/server/ServerHttp1ObjectEncoder.java index 183b823b3af..1b9b99b3ac8 100644 --- a/core/src/main/java/com/linecorp/armeria/server/ServerHttp1ObjectEncoder.java +++ b/core/src/main/java/com/linecorp/armeria/server/ServerHttp1ObjectEncoder.java @@ -16,6 +16,8 @@ package com.linecorp.armeria.server; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.Http1HeaderNaming; import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.HttpHeaders; @@ -24,7 +26,6 @@ import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.ArmeriaHttpUtil; import com.linecorp.armeria.internal.common.Http1ObjectEncoder; import com.linecorp.armeria.internal.common.KeepAliveHandler; diff --git a/core/src/main/java/com/linecorp/armeria/server/ServerHttp2ObjectEncoder.java b/core/src/main/java/com/linecorp/armeria/server/ServerHttp2ObjectEncoder.java index 69211bb5c48..293240e34a4 100644 --- a/core/src/main/java/com/linecorp/armeria/server/ServerHttp2ObjectEncoder.java +++ b/core/src/main/java/com/linecorp/armeria/server/ServerHttp2ObjectEncoder.java @@ -15,6 +15,8 @@ */ package com.linecorp.armeria.server; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.HttpHeadersBuilder; @@ -22,7 +24,6 @@ import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.ClosedStreamException; import com.linecorp.armeria.internal.common.AbstractHttp2ConnectionHandler; import com.linecorp.armeria.internal.common.ArmeriaHttpUtil; diff --git a/core/src/main/java/com/linecorp/armeria/server/ServerHttpObjectEncoder.java b/core/src/main/java/com/linecorp/armeria/server/ServerHttpObjectEncoder.java index 008d1f62ad7..01d385ec8a3 100644 --- a/core/src/main/java/com/linecorp/armeria/server/ServerHttpObjectEncoder.java +++ b/core/src/main/java/com/linecorp/armeria/server/ServerHttpObjectEncoder.java @@ -16,6 +16,8 @@ package com.linecorp.armeria.server; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.AggregatedHttpResponse; import com.linecorp.armeria.common.HttpData; import com.linecorp.armeria.common.HttpHeaders; @@ -24,7 +26,6 @@ import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.HttpObjectEncoder; import io.netty.channel.Channel; diff --git a/core/src/main/java/com/linecorp/armeria/server/ServerPort.java b/core/src/main/java/com/linecorp/armeria/server/ServerPort.java index ff1580bf5be..5ba96d5efae 100644 --- a/core/src/main/java/com/linecorp/armeria/server/ServerPort.java +++ b/core/src/main/java/com/linecorp/armeria/server/ServerPort.java @@ -30,11 +30,12 @@ import java.util.Set; import java.util.concurrent.atomic.AtomicLong; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableSet; import com.google.common.collect.Sets; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.util.DomainSocketAddress; diff --git a/core/src/main/java/com/linecorp/armeria/server/ServerTlsConfig.java b/core/src/main/java/com/linecorp/armeria/server/ServerTlsConfig.java index d1c63db70e8..88a627dd50d 100644 --- a/core/src/main/java/com/linecorp/armeria/server/ServerTlsConfig.java +++ b/core/src/main/java/com/linecorp/armeria/server/ServerTlsConfig.java @@ -18,11 +18,12 @@ import java.util.function.Consumer; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.linecorp.armeria.common.AbstractTlsConfig; import com.linecorp.armeria.common.TlsProvider; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.metric.MeterIdPrefix; diff --git a/core/src/main/java/com/linecorp/armeria/server/ServerTlsSpec.java b/core/src/main/java/com/linecorp/armeria/server/ServerTlsSpec.java index da14546685e..13362d8ae10 100644 --- a/core/src/main/java/com/linecorp/armeria/server/ServerTlsSpec.java +++ b/core/src/main/java/com/linecorp/armeria/server/ServerTlsSpec.java @@ -26,6 +26,8 @@ import javax.net.ssl.KeyManagerFactory; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.google.common.base.Objects; @@ -33,7 +35,6 @@ import com.linecorp.armeria.common.AbstractTlsSpecBuilder; import com.linecorp.armeria.common.TlsKeyPair; import com.linecorp.armeria.common.TlsPeerVerifierFactory; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.util.TlsEngineType; import com.linecorp.armeria.internal.common.util.SslContextUtil; diff --git a/core/src/main/java/com/linecorp/armeria/server/Service.java b/core/src/main/java/com/linecorp/armeria/server/Service.java index b164cba3ed0..1eda1aa0993 100644 --- a/core/src/main/java/com/linecorp/armeria/server/Service.java +++ b/core/src/main/java/com/linecorp/armeria/server/Service.java @@ -18,13 +18,14 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.Request; import com.linecorp.armeria.common.Response; import com.linecorp.armeria.common.RpcRequest; import com.linecorp.armeria.common.RpcResponse; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Unwrappable; /** diff --git a/core/src/main/java/com/linecorp/armeria/server/ServiceConfig.java b/core/src/main/java/com/linecorp/armeria/server/ServiceConfig.java index db18d1a6201..054098d3152 100644 --- a/core/src/main/java/com/linecorp/armeria/server/ServiceConfig.java +++ b/core/src/main/java/com/linecorp/armeria/server/ServiceConfig.java @@ -26,6 +26,8 @@ import java.util.function.Function; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.google.common.base.MoreObjects.ToStringHelper; import com.google.common.collect.ImmutableList; @@ -37,7 +39,6 @@ import com.linecorp.armeria.common.RequestContextStorage; import com.linecorp.armeria.common.RequestId; import com.linecorp.armeria.common.SuccessFunction; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.logging.RequestLogBuilder; diff --git a/core/src/main/java/com/linecorp/armeria/server/ServiceConfigBuilder.java b/core/src/main/java/com/linecorp/armeria/server/ServiceConfigBuilder.java index 07b8ce6b90f..7e3f91b2fc6 100644 --- a/core/src/main/java/com/linecorp/armeria/server/ServiceConfigBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/server/ServiceConfigBuilder.java @@ -32,6 +32,8 @@ import java.util.function.Function; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.google.common.collect.ImmutableList; @@ -39,7 +41,6 @@ import com.linecorp.armeria.common.HttpHeadersBuilder; import com.linecorp.armeria.common.RequestId; import com.linecorp.armeria.common.SuccessFunction; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.BlockingTaskExecutor; import com.linecorp.armeria.common.util.EventLoopGroups; import com.linecorp.armeria.server.logging.AccessLogWriter; diff --git a/core/src/main/java/com/linecorp/armeria/server/ServiceErrorHandler.java b/core/src/main/java/com/linecorp/armeria/server/ServiceErrorHandler.java index 988b05acf12..3f1e8becd2d 100644 --- a/core/src/main/java/com/linecorp/armeria/server/ServiceErrorHandler.java +++ b/core/src/main/java/com/linecorp/armeria/server/ServiceErrorHandler.java @@ -18,11 +18,12 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.AggregatedHttpResponse; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.logging.RequestLog; diff --git a/core/src/main/java/com/linecorp/armeria/server/ServiceNaming.java b/core/src/main/java/com/linecorp/armeria/server/ServiceNaming.java index 3e6af6a4612..bc3e2f7e159 100644 --- a/core/src/main/java/com/linecorp/armeria/server/ServiceNaming.java +++ b/core/src/main/java/com/linecorp/armeria/server/ServiceNaming.java @@ -17,8 +17,9 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.RpcRequest; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestOnlyLog; import com.linecorp.armeria.internal.common.util.ServiceNamingUtil; diff --git a/core/src/main/java/com/linecorp/armeria/server/ServiceRequestContext.java b/core/src/main/java/com/linecorp/armeria/server/ServiceRequestContext.java index fde1c4bee2a..cfea98fc3e7 100644 --- a/core/src/main/java/com/linecorp/armeria/server/ServiceRequestContext.java +++ b/core/src/main/java/com/linecorp/armeria/server/ServiceRequestContext.java @@ -35,6 +35,8 @@ import javax.annotation.Nonnull; +import org.jspecify.annotations.Nullable; + import com.google.errorprone.annotations.MustBeClosed; import com.linecorp.armeria.client.ClientRequestContext; @@ -51,7 +53,6 @@ import com.linecorp.armeria.common.RequestContext; import com.linecorp.armeria.common.Response; import com.linecorp.armeria.common.RpcRequest; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.util.BlockingTaskExecutor; import com.linecorp.armeria.common.util.DomainSocketAddress; diff --git a/core/src/main/java/com/linecorp/armeria/server/ServiceRequestContextBuilder.java b/core/src/main/java/com/linecorp/armeria/server/ServiceRequestContextBuilder.java index c3fb565b904..687b6096591 100644 --- a/core/src/main/java/com/linecorp/armeria/server/ServiceRequestContextBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/server/ServiceRequestContextBuilder.java @@ -26,6 +26,8 @@ import javax.net.ssl.SSLSession; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.AbstractRequestContextBuilder; import com.linecorp.armeria.common.CommonPools; import com.linecorp.armeria.common.ExchangeType; @@ -35,7 +37,6 @@ import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.RequestId; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.logging.RequestLogBuilder; import com.linecorp.armeria.common.util.SystemInfo; diff --git a/core/src/main/java/com/linecorp/armeria/server/ServiceRequestContextWrapper.java b/core/src/main/java/com/linecorp/armeria/server/ServiceRequestContextWrapper.java index 43715639c59..974a1498b53 100644 --- a/core/src/main/java/com/linecorp/armeria/server/ServiceRequestContextWrapper.java +++ b/core/src/main/java/com/linecorp/armeria/server/ServiceRequestContextWrapper.java @@ -26,6 +26,8 @@ import javax.annotation.Nonnull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.ContextAwareBlockingTaskExecutor; import com.linecorp.armeria.common.ExchangeType; import com.linecorp.armeria.common.HttpHeaders; @@ -34,7 +36,6 @@ import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.QueryParams; import com.linecorp.armeria.common.RequestContextWrapper; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.TimeoutMode; /** diff --git a/core/src/main/java/com/linecorp/armeria/server/StreamingDecodedHttpRequest.java b/core/src/main/java/com/linecorp/armeria/server/StreamingDecodedHttpRequest.java index 0dca8c27bb7..7208f7841b2 100644 --- a/core/src/main/java/com/linecorp/armeria/server/StreamingDecodedHttpRequest.java +++ b/core/src/main/java/com/linecorp/armeria/server/StreamingDecodedHttpRequest.java @@ -20,6 +20,8 @@ import javax.annotation.Nonnull; +import org.jspecify.annotations.Nullable; + import com.google.common.annotations.VisibleForTesting; import com.linecorp.armeria.common.ExchangeType; @@ -28,7 +30,6 @@ import com.linecorp.armeria.common.HttpObject; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.DefaultHttpRequest; import com.linecorp.armeria.internal.common.InboundTrafficController; diff --git a/core/src/main/java/com/linecorp/armeria/server/TlsProviderMapping.java b/core/src/main/java/com/linecorp/armeria/server/TlsProviderMapping.java index 8cae0dc784e..eb27be0d4e5 100644 --- a/core/src/main/java/com/linecorp/armeria/server/TlsProviderMapping.java +++ b/core/src/main/java/com/linecorp/armeria/server/TlsProviderMapping.java @@ -20,9 +20,10 @@ import java.util.List; import java.util.function.Consumer; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.TlsKeyPair; import com.linecorp.armeria.common.TlsProvider; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.TlsEngineType; import com.linecorp.armeria.internal.common.SslContextFactory; import com.linecorp.armeria.internal.common.TlsProviderUtil; diff --git a/core/src/main/java/com/linecorp/armeria/server/UpdatableServerConfig.java b/core/src/main/java/com/linecorp/armeria/server/UpdatableServerConfig.java index 50fd32c91e5..9dd988050d0 100644 --- a/core/src/main/java/com/linecorp/armeria/server/UpdatableServerConfig.java +++ b/core/src/main/java/com/linecorp/armeria/server/UpdatableServerConfig.java @@ -28,10 +28,11 @@ import java.util.function.Function; import java.util.function.Predicate; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.DependencyInjector; import com.linecorp.armeria.common.Http1HeaderNaming; import com.linecorp.armeria.common.RequestId; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.BlockingTaskExecutor; import io.micrometer.core.instrument.MeterRegistry; diff --git a/core/src/main/java/com/linecorp/armeria/server/VirtualHost.java b/core/src/main/java/com/linecorp/armeria/server/VirtualHost.java index 34eda243160..335efec9642 100644 --- a/core/src/main/java/com/linecorp/armeria/server/VirtualHost.java +++ b/core/src/main/java/com/linecorp/armeria/server/VirtualHost.java @@ -29,6 +29,7 @@ import java.util.regex.Pattern; import java.util.stream.Collectors; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import com.google.common.base.Ascii; @@ -40,7 +41,6 @@ import com.linecorp.armeria.common.RequestId; import com.linecorp.armeria.common.SuccessFunction; import com.linecorp.armeria.common.TlsProvider; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.logging.RequestLogBuilder; diff --git a/core/src/main/java/com/linecorp/armeria/server/VirtualHostBuilder.java b/core/src/main/java/com/linecorp/armeria/server/VirtualHostBuilder.java index 58a5f4aee6f..4bc7791a0ee 100644 --- a/core/src/main/java/com/linecorp/armeria/server/VirtualHostBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/server/VirtualHostBuilder.java @@ -50,6 +50,7 @@ import javax.net.ssl.KeyManagerFactory; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -74,7 +75,6 @@ import com.linecorp.armeria.common.TlsKeyPair; import com.linecorp.armeria.common.TlsProvider; import com.linecorp.armeria.common.TlsSetters; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.logging.RequestLogBuilder; diff --git a/core/src/main/java/com/linecorp/armeria/server/VirtualHostTlsSetter.java b/core/src/main/java/com/linecorp/armeria/server/VirtualHostTlsSetter.java index 491aa45ad7c..39568c23374 100644 --- a/core/src/main/java/com/linecorp/armeria/server/VirtualHostTlsSetter.java +++ b/core/src/main/java/com/linecorp/armeria/server/VirtualHostTlsSetter.java @@ -22,8 +22,9 @@ import javax.net.ssl.KeyManagerFactory; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.TlsKeyPair; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.TlsEngineType; import com.linecorp.armeria.server.ServerTlsSpec.ServerTlsSpecBuilder; diff --git a/core/src/main/java/com/linecorp/armeria/server/annotation/AnnotatedService.java b/core/src/main/java/com/linecorp/armeria/server/annotation/AnnotatedService.java index f41528e4ffd..28366319bdf 100644 --- a/core/src/main/java/com/linecorp/armeria/server/annotation/AnnotatedService.java +++ b/core/src/main/java/com/linecorp/armeria/server/annotation/AnnotatedService.java @@ -18,8 +18,9 @@ import java.lang.reflect.Method; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpStatus; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.HttpService; import com.linecorp.armeria.server.Route; import com.linecorp.armeria.server.ServerBuilder; diff --git a/core/src/main/java/com/linecorp/armeria/server/annotation/ByteArrayRequestConverterFunction.java b/core/src/main/java/com/linecorp/armeria/server/annotation/ByteArrayRequestConverterFunction.java index baf60f5c873..173ab41afee 100644 --- a/core/src/main/java/com/linecorp/armeria/server/annotation/ByteArrayRequestConverterFunction.java +++ b/core/src/main/java/com/linecorp/armeria/server/annotation/ByteArrayRequestConverterFunction.java @@ -18,9 +18,10 @@ import java.lang.reflect.ParameterizedType; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.AggregatedHttpRequest; import com.linecorp.armeria.common.HttpData; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.ServiceRequestContext; /** diff --git a/core/src/main/java/com/linecorp/armeria/server/annotation/ByteArrayResponseConverterFunction.java b/core/src/main/java/com/linecorp/armeria/server/annotation/ByteArrayResponseConverterFunction.java index cd85376d551..cb088bfc4ef 100644 --- a/core/src/main/java/com/linecorp/armeria/server/annotation/ByteArrayResponseConverterFunction.java +++ b/core/src/main/java/com/linecorp/armeria/server/annotation/ByteArrayResponseConverterFunction.java @@ -22,6 +22,7 @@ import java.lang.reflect.Type; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; import com.linecorp.armeria.common.HttpData; @@ -29,7 +30,6 @@ import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.ServiceRequestContext; /** diff --git a/core/src/main/java/com/linecorp/armeria/server/annotation/DefaultHttpResult.java b/core/src/main/java/com/linecorp/armeria/server/annotation/DefaultHttpResult.java index 784e6f127fb..56523a79066 100644 --- a/core/src/main/java/com/linecorp/armeria/server/annotation/DefaultHttpResult.java +++ b/core/src/main/java/com/linecorp/armeria/server/annotation/DefaultHttpResult.java @@ -17,8 +17,9 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpHeaders; -import com.linecorp.armeria.common.annotation.Nullable; /** * A default {@link HttpResult} implementation. diff --git a/core/src/main/java/com/linecorp/armeria/server/annotation/DelegatingResponseConverterFunctionProvider.java b/core/src/main/java/com/linecorp/armeria/server/annotation/DelegatingResponseConverterFunctionProvider.java index 2f67fb40e09..cbd7a5aef10 100644 --- a/core/src/main/java/com/linecorp/armeria/server/annotation/DelegatingResponseConverterFunctionProvider.java +++ b/core/src/main/java/com/linecorp/armeria/server/annotation/DelegatingResponseConverterFunctionProvider.java @@ -17,8 +17,9 @@ import java.lang.reflect.Type; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpResponse; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.server.ServerBuilder; diff --git a/core/src/main/java/com/linecorp/armeria/server/annotation/HttpFileResponseConverterFunction.java b/core/src/main/java/com/linecorp/armeria/server/annotation/HttpFileResponseConverterFunction.java index ea48303b317..ef1118afcd8 100644 --- a/core/src/main/java/com/linecorp/armeria/server/annotation/HttpFileResponseConverterFunction.java +++ b/core/src/main/java/com/linecorp/armeria/server/annotation/HttpFileResponseConverterFunction.java @@ -20,6 +20,7 @@ import java.lang.reflect.Type; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import com.linecorp.armeria.common.FilteredHttpResponse; @@ -29,7 +30,6 @@ import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.ServiceRequestContext; import com.linecorp.armeria.server.file.HttpFile; diff --git a/core/src/main/java/com/linecorp/armeria/server/annotation/HttpResult.java b/core/src/main/java/com/linecorp/armeria/server/annotation/HttpResult.java index 24b0df305b1..d92e0622d25 100644 --- a/core/src/main/java/com/linecorp/armeria/server/annotation/HttpResult.java +++ b/core/src/main/java/com/linecorp/armeria/server/annotation/HttpResult.java @@ -17,11 +17,12 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.ResponseEntity; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; /** * An interface which helps a user specify an {@link HttpStatus} or {@link ResponseHeaders} for a response diff --git a/core/src/main/java/com/linecorp/armeria/server/annotation/JacksonRequestConverterFunction.java b/core/src/main/java/com/linecorp/armeria/server/annotation/JacksonRequestConverterFunction.java index 82baed7ca34..adaaff98660 100644 --- a/core/src/main/java/com/linecorp/armeria/server/annotation/JacksonRequestConverterFunction.java +++ b/core/src/main/java/com/linecorp/armeria/server/annotation/JacksonRequestConverterFunction.java @@ -27,6 +27,8 @@ import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentMap; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.core.TreeNode; import com.fasterxml.jackson.core.type.TypeReference; @@ -38,7 +40,6 @@ import com.linecorp.armeria.common.HttpData; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.JacksonUtil; import com.linecorp.armeria.server.ServiceRequestContext; diff --git a/core/src/main/java/com/linecorp/armeria/server/annotation/JacksonResponseConverterFunction.java b/core/src/main/java/com/linecorp/armeria/server/annotation/JacksonResponseConverterFunction.java index 5afee50a01c..6af925c1752 100644 --- a/core/src/main/java/com/linecorp/armeria/server/annotation/JacksonResponseConverterFunction.java +++ b/core/src/main/java/com/linecorp/armeria/server/annotation/JacksonResponseConverterFunction.java @@ -25,6 +25,7 @@ import java.nio.charset.StandardCharsets; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; import com.fasterxml.jackson.databind.JsonNode; @@ -35,7 +36,6 @@ import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.internal.common.JacksonUtil; import com.linecorp.armeria.server.ServiceRequestContext; diff --git a/core/src/main/java/com/linecorp/armeria/server/annotation/NullToNoContentResponseConverterFunction.java b/core/src/main/java/com/linecorp/armeria/server/annotation/NullToNoContentResponseConverterFunction.java index 39a367e6f99..6f8ee8789cf 100644 --- a/core/src/main/java/com/linecorp/armeria/server/annotation/NullToNoContentResponseConverterFunction.java +++ b/core/src/main/java/com/linecorp/armeria/server/annotation/NullToNoContentResponseConverterFunction.java @@ -17,12 +17,13 @@ import java.lang.reflect.Type; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.ServiceRequestContext; /** diff --git a/core/src/main/java/com/linecorp/armeria/server/annotation/RequestConverterFunction.java b/core/src/main/java/com/linecorp/armeria/server/annotation/RequestConverterFunction.java index f988ef83906..1df6f0add86 100644 --- a/core/src/main/java/com/linecorp/armeria/server/annotation/RequestConverterFunction.java +++ b/core/src/main/java/com/linecorp/armeria/server/annotation/RequestConverterFunction.java @@ -18,8 +18,9 @@ import java.lang.reflect.ParameterizedType; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.AggregatedHttpRequest; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.ServiceRequestContext; /** diff --git a/core/src/main/java/com/linecorp/armeria/server/annotation/RequestConverterFunctionProvider.java b/core/src/main/java/com/linecorp/armeria/server/annotation/RequestConverterFunctionProvider.java index 162222aa7f6..83ad8b64a67 100644 --- a/core/src/main/java/com/linecorp/armeria/server/annotation/RequestConverterFunctionProvider.java +++ b/core/src/main/java/com/linecorp/armeria/server/annotation/RequestConverterFunctionProvider.java @@ -17,8 +17,9 @@ import java.lang.reflect.Type; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.AggregatedHttpRequest; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/server/annotation/ResponseConverterFunction.java b/core/src/main/java/com/linecorp/armeria/server/annotation/ResponseConverterFunction.java index b8bc1562e54..7bdc779c1e6 100644 --- a/core/src/main/java/com/linecorp/armeria/server/annotation/ResponseConverterFunction.java +++ b/core/src/main/java/com/linecorp/armeria/server/annotation/ResponseConverterFunction.java @@ -19,6 +19,8 @@ import java.lang.reflect.Type; import java.util.function.Consumer; +import org.jspecify.annotations.Nullable; + import com.google.errorprone.annotations.CheckReturnValue; import com.linecorp.armeria.common.HttpHeaders; @@ -27,7 +29,6 @@ import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseEntity; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.server.ServiceRequestContext; diff --git a/core/src/main/java/com/linecorp/armeria/server/annotation/ResponseConverterFunctionProvider.java b/core/src/main/java/com/linecorp/armeria/server/annotation/ResponseConverterFunctionProvider.java index 2681df28b52..2817dc37ec5 100644 --- a/core/src/main/java/com/linecorp/armeria/server/annotation/ResponseConverterFunctionProvider.java +++ b/core/src/main/java/com/linecorp/armeria/server/annotation/ResponseConverterFunctionProvider.java @@ -17,7 +17,8 @@ import java.lang.reflect.Type; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/server/annotation/ServerSentEventResponseConverterFunction.java b/core/src/main/java/com/linecorp/armeria/server/annotation/ServerSentEventResponseConverterFunction.java index 4f0026f7e4e..6dedcdbab51 100644 --- a/core/src/main/java/com/linecorp/armeria/server/annotation/ServerSentEventResponseConverterFunction.java +++ b/core/src/main/java/com/linecorp/armeria/server/annotation/ServerSentEventResponseConverterFunction.java @@ -24,13 +24,13 @@ import java.lang.reflect.Type; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.sse.ServerSentEvent; import com.linecorp.armeria.server.ServiceRequestContext; diff --git a/core/src/main/java/com/linecorp/armeria/server/annotation/StringRequestConverterFunction.java b/core/src/main/java/com/linecorp/armeria/server/annotation/StringRequestConverterFunction.java index 5696b37c615..529169cbb0c 100644 --- a/core/src/main/java/com/linecorp/armeria/server/annotation/StringRequestConverterFunction.java +++ b/core/src/main/java/com/linecorp/armeria/server/annotation/StringRequestConverterFunction.java @@ -19,9 +19,10 @@ import java.lang.reflect.ParameterizedType; import java.nio.charset.Charset; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.AggregatedHttpRequest; import com.linecorp.armeria.common.MediaType; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.ArmeriaHttpUtil; import com.linecorp.armeria.server.ServiceRequestContext; diff --git a/core/src/main/java/com/linecorp/armeria/server/annotation/StringResponseConverterFunction.java b/core/src/main/java/com/linecorp/armeria/server/annotation/StringResponseConverterFunction.java index 55a49e9a74c..b786283906e 100644 --- a/core/src/main/java/com/linecorp/armeria/server/annotation/StringResponseConverterFunction.java +++ b/core/src/main/java/com/linecorp/armeria/server/annotation/StringResponseConverterFunction.java @@ -23,6 +23,7 @@ import java.nio.charset.Charset; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; import com.linecorp.armeria.common.HttpData; @@ -30,7 +31,6 @@ import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.ArmeriaHttpUtil; import com.linecorp.armeria.server.ServiceRequestContext; diff --git a/core/src/main/java/com/linecorp/armeria/server/annotation/decorator/package-info.java b/core/src/main/java/com/linecorp/armeria/server/annotation/decorator/package-info.java index d00ceee39ea..d77d454c42a 100644 --- a/core/src/main/java/com/linecorp/armeria/server/annotation/decorator/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/server/annotation/decorator/package-info.java @@ -17,7 +17,7 @@ /** * Decorators for the annotated HTTP service. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.annotation.decorator; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/server/annotation/package-info.java b/core/src/main/java/com/linecorp/armeria/server/annotation/package-info.java index f3cb2833865..0987843a567 100644 --- a/core/src/main/java/com/linecorp/armeria/server/annotation/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/server/annotation/package-info.java @@ -17,7 +17,7 @@ /** * Annotations for building a RESTful service. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.annotation; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/server/auth/AbstractAuthorizerWithHandlers.java b/core/src/main/java/com/linecorp/armeria/server/auth/AbstractAuthorizerWithHandlers.java index d6b57b74f1d..131afa6e0a1 100644 --- a/core/src/main/java/com/linecorp/armeria/server/auth/AbstractAuthorizerWithHandlers.java +++ b/core/src/main/java/com/linecorp/armeria/server/auth/AbstractAuthorizerWithHandlers.java @@ -18,8 +18,9 @@ import java.util.concurrent.CompletionStage; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpRequest; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.server.ServiceRequestContext; diff --git a/core/src/main/java/com/linecorp/armeria/server/auth/AuthFailureHandler.java b/core/src/main/java/com/linecorp/armeria/server/auth/AuthFailureHandler.java index 8078da80e16..f8fb2b473f9 100644 --- a/core/src/main/java/com/linecorp/armeria/server/auth/AuthFailureHandler.java +++ b/core/src/main/java/com/linecorp/armeria/server/auth/AuthFailureHandler.java @@ -15,11 +15,12 @@ */ package com.linecorp.armeria.server.auth; +import org.jspecify.annotations.Nullable; + import com.google.errorprone.annotations.CheckReturnValue; import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpResponse; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.HttpService; import com.linecorp.armeria.server.Service; import com.linecorp.armeria.server.ServiceRequestContext; diff --git a/core/src/main/java/com/linecorp/armeria/server/auth/AuthService.java b/core/src/main/java/com/linecorp/armeria/server/auth/AuthService.java index 0fe8b9e58ef..dbc75ba6b2a 100644 --- a/core/src/main/java/com/linecorp/armeria/server/auth/AuthService.java +++ b/core/src/main/java/com/linecorp/armeria/server/auth/AuthService.java @@ -21,6 +21,7 @@ import java.util.concurrent.TimeUnit; import java.util.function.Function; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -28,7 +29,6 @@ import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpResponse; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.metric.MeterIdPrefix; import com.linecorp.armeria.common.metric.MoreMeters; import com.linecorp.armeria.common.util.Exceptions; diff --git a/core/src/main/java/com/linecorp/armeria/server/auth/AuthServiceBuilder.java b/core/src/main/java/com/linecorp/armeria/server/auth/AuthServiceBuilder.java index abb00c9ae35..1d1de2fd229 100644 --- a/core/src/main/java/com/linecorp/armeria/server/auth/AuthServiceBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/server/auth/AuthServiceBuilder.java @@ -20,11 +20,12 @@ import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.auth.BasicToken; import com.linecorp.armeria.common.auth.OAuth1aToken; import com.linecorp.armeria.common.auth.OAuth2Token; diff --git a/core/src/main/java/com/linecorp/armeria/server/auth/AuthTokenExtractors.java b/core/src/main/java/com/linecorp/armeria/server/auth/AuthTokenExtractors.java index e57fae79598..b6e5b08c7b7 100644 --- a/core/src/main/java/com/linecorp/armeria/server/auth/AuthTokenExtractors.java +++ b/core/src/main/java/com/linecorp/armeria/server/auth/AuthTokenExtractors.java @@ -18,9 +18,10 @@ import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.auth.BasicToken; import com.linecorp.armeria.common.auth.OAuth1aToken; import com.linecorp.armeria.common.auth.OAuth2Token; diff --git a/core/src/main/java/com/linecorp/armeria/server/auth/AuthorizationStatus.java b/core/src/main/java/com/linecorp/armeria/server/auth/AuthorizationStatus.java index aff87741b1a..886b0ed67a4 100644 --- a/core/src/main/java/com/linecorp/armeria/server/auth/AuthorizationStatus.java +++ b/core/src/main/java/com/linecorp/armeria/server/auth/AuthorizationStatus.java @@ -16,7 +16,8 @@ package com.linecorp.armeria.server.auth; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/server/auth/AuthorizationStatusImpl.java b/core/src/main/java/com/linecorp/armeria/server/auth/AuthorizationStatusImpl.java index 20f90411d1d..61842dfdf2d 100644 --- a/core/src/main/java/com/linecorp/armeria/server/auth/AuthorizationStatusImpl.java +++ b/core/src/main/java/com/linecorp/armeria/server/auth/AuthorizationStatusImpl.java @@ -16,7 +16,7 @@ package com.linecorp.armeria.server.auth; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * Implements {@link AuthorizationStatus}. diff --git a/core/src/main/java/com/linecorp/armeria/server/auth/Authorizer.java b/core/src/main/java/com/linecorp/armeria/server/auth/Authorizer.java index b99882c5871..148b33dd2b3 100644 --- a/core/src/main/java/com/linecorp/armeria/server/auth/Authorizer.java +++ b/core/src/main/java/com/linecorp/armeria/server/auth/Authorizer.java @@ -18,8 +18,9 @@ import java.util.concurrent.CompletionStage; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpRequest; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.util.UnmodifiableFuture; import com.linecorp.armeria.server.ServiceRequestContext; diff --git a/core/src/main/java/com/linecorp/armeria/server/auth/AuthorizerChain.java b/core/src/main/java/com/linecorp/armeria/server/auth/AuthorizerChain.java index 79c4374fd5b..e78ec254456 100644 --- a/core/src/main/java/com/linecorp/armeria/server/auth/AuthorizerChain.java +++ b/core/src/main/java/com/linecorp/armeria/server/auth/AuthorizerChain.java @@ -23,9 +23,10 @@ import java.util.List; import java.util.concurrent.CompletionStage; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.UnmodifiableFuture; import com.linecorp.armeria.server.ServiceRequestContext; diff --git a/core/src/main/java/com/linecorp/armeria/server/auth/AuthorizerUtil.java b/core/src/main/java/com/linecorp/armeria/server/auth/AuthorizerUtil.java index f30c5a272c8..96cec9cd802 100644 --- a/core/src/main/java/com/linecorp/armeria/server/auth/AuthorizerUtil.java +++ b/core/src/main/java/com/linecorp/armeria/server/auth/AuthorizerUtil.java @@ -17,7 +17,8 @@ import java.util.concurrent.CompletionStage; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.util.UnmodifiableFuture; import com.linecorp.armeria.server.ServiceRequestContext; diff --git a/core/src/main/java/com/linecorp/armeria/server/auth/BasicTokenExtractor.java b/core/src/main/java/com/linecorp/armeria/server/auth/BasicTokenExtractor.java index b56a6aa6680..08d70436f69 100644 --- a/core/src/main/java/com/linecorp/armeria/server/auth/BasicTokenExtractor.java +++ b/core/src/main/java/com/linecorp/armeria/server/auth/BasicTokenExtractor.java @@ -25,6 +25,7 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -32,7 +33,6 @@ import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.auth.AuthToken; import com.linecorp.armeria.common.auth.BasicToken; diff --git a/core/src/main/java/com/linecorp/armeria/server/auth/DelegatingHttpRequestAuthorizer.java b/core/src/main/java/com/linecorp/armeria/server/auth/DelegatingHttpRequestAuthorizer.java index 5c731120129..71cecfacdb4 100644 --- a/core/src/main/java/com/linecorp/armeria/server/auth/DelegatingHttpRequestAuthorizer.java +++ b/core/src/main/java/com/linecorp/armeria/server/auth/DelegatingHttpRequestAuthorizer.java @@ -21,9 +21,10 @@ import java.util.concurrent.CompletionStage; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.ServiceRequestContext; /** diff --git a/core/src/main/java/com/linecorp/armeria/server/auth/OAuth1aTokenExtractor.java b/core/src/main/java/com/linecorp/armeria/server/auth/OAuth1aTokenExtractor.java index 06fea9ecc26..e6df63547ad 100644 --- a/core/src/main/java/com/linecorp/armeria/server/auth/OAuth1aTokenExtractor.java +++ b/core/src/main/java/com/linecorp/armeria/server/auth/OAuth1aTokenExtractor.java @@ -23,6 +23,7 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -30,7 +31,6 @@ import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.auth.AuthToken; import com.linecorp.armeria.common.auth.OAuth1aToken; import com.linecorp.armeria.common.auth.OAuth1aTokenBuilder; diff --git a/core/src/main/java/com/linecorp/armeria/server/auth/OAuth2TokenExtractor.java b/core/src/main/java/com/linecorp/armeria/server/auth/OAuth2TokenExtractor.java index 37fab768730..7d2ea5ef4ad 100644 --- a/core/src/main/java/com/linecorp/armeria/server/auth/OAuth2TokenExtractor.java +++ b/core/src/main/java/com/linecorp/armeria/server/auth/OAuth2TokenExtractor.java @@ -22,6 +22,7 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -29,7 +30,6 @@ import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.auth.AuthToken; import com.linecorp.armeria.common.auth.OAuth2Token; diff --git a/core/src/main/java/com/linecorp/armeria/server/auth/package-info.java b/core/src/main/java/com/linecorp/armeria/server/auth/package-info.java index 4cf82d9d621..4d5e29e573b 100644 --- a/core/src/main/java/com/linecorp/armeria/server/auth/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/server/auth/package-info.java @@ -17,7 +17,7 @@ /** * HTTP authorization service. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.auth; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/server/cors/CorsConfig.java b/core/src/main/java/com/linecorp/armeria/server/cors/CorsConfig.java index b1dd0e7d909..e7676cfba4f 100644 --- a/core/src/main/java/com/linecorp/armeria/server/cors/CorsConfig.java +++ b/core/src/main/java/com/linecorp/armeria/server/cors/CorsConfig.java @@ -21,12 +21,13 @@ import java.util.List; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; + import com.google.common.base.Ascii; import com.google.common.base.MoreObjects; import com.google.common.collect.ImmutableList.Builder; import com.google.common.collect.Iterables; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.server.CorsHeaderUtil; import com.linecorp.armeria.server.Route; import com.linecorp.armeria.server.RoutingContext; diff --git a/core/src/main/java/com/linecorp/armeria/server/cors/CorsPolicy.java b/core/src/main/java/com/linecorp/armeria/server/cors/CorsPolicy.java index f28e3117744..59c98c00bb0 100644 --- a/core/src/main/java/com/linecorp/armeria/server/cors/CorsPolicy.java +++ b/core/src/main/java/com/linecorp/armeria/server/cors/CorsPolicy.java @@ -29,6 +29,8 @@ import java.util.regex.Pattern; import java.util.stream.Collectors; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; @@ -40,7 +42,6 @@ import com.linecorp.armeria.common.HttpHeadersBuilder; import com.linecorp.armeria.common.HttpMethod; import com.linecorp.armeria.common.ResponseHeadersBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.util.HttpTimestampSupplier; import com.linecorp.armeria.internal.server.CorsHeaderUtil; import com.linecorp.armeria.server.Route; diff --git a/core/src/main/java/com/linecorp/armeria/server/cors/package-info.java b/core/src/main/java/com/linecorp/armeria/server/cors/package-info.java index 1603cd47c7f..b3ce1eafa5c 100644 --- a/core/src/main/java/com/linecorp/armeria/server/cors/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/server/cors/package-info.java @@ -18,7 +18,7 @@ * Cross-Origin Resource Sharing * (CORS) support. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.cors; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/server/docs/ContainerTypeSignature.java b/core/src/main/java/com/linecorp/armeria/server/docs/ContainerTypeSignature.java index 2e023d8ea4b..4f08bd740d4 100644 --- a/core/src/main/java/com/linecorp/armeria/server/docs/ContainerTypeSignature.java +++ b/core/src/main/java/com/linecorp/armeria/server/docs/ContainerTypeSignature.java @@ -21,10 +21,11 @@ import java.util.List; import java.util.Objects; +import org.jspecify.annotations.Nullable; + import com.google.common.base.Joiner; import com.google.common.collect.ImmutableList; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/server/docs/DefaultTypeSignature.java b/core/src/main/java/com/linecorp/armeria/server/docs/DefaultTypeSignature.java index 041fd59b98b..98668c32046 100644 --- a/core/src/main/java/com/linecorp/armeria/server/docs/DefaultTypeSignature.java +++ b/core/src/main/java/com/linecorp/armeria/server/docs/DefaultTypeSignature.java @@ -22,7 +22,8 @@ import java.util.Objects; import java.util.regex.Pattern; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/server/docs/DescriptiveTypeInfoProvider.java b/core/src/main/java/com/linecorp/armeria/server/docs/DescriptiveTypeInfoProvider.java index 9997e9d55b4..8f0ba2be689 100644 --- a/core/src/main/java/com/linecorp/armeria/server/docs/DescriptiveTypeInfoProvider.java +++ b/core/src/main/java/com/linecorp/armeria/server/docs/DescriptiveTypeInfoProvider.java @@ -18,7 +18,8 @@ import static java.util.Objects.requireNonNull; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.internal.server.annotation.AnnotatedDocServicePlugin; diff --git a/core/src/main/java/com/linecorp/armeria/server/docs/DescriptiveTypeSignature.java b/core/src/main/java/com/linecorp/armeria/server/docs/DescriptiveTypeSignature.java index 32291fc5d49..06919363f98 100644 --- a/core/src/main/java/com/linecorp/armeria/server/docs/DescriptiveTypeSignature.java +++ b/core/src/main/java/com/linecorp/armeria/server/docs/DescriptiveTypeSignature.java @@ -21,7 +21,8 @@ import java.util.Objects; import java.util.regex.Pattern; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/server/docs/DocService.java b/core/src/main/java/com/linecorp/armeria/server/docs/DocService.java index 0e30c1e0f00..86aee46470c 100644 --- a/core/src/main/java/com/linecorp/armeria/server/docs/DocService.java +++ b/core/src/main/java/com/linecorp/armeria/server/docs/DocService.java @@ -36,6 +36,7 @@ import java.util.function.BiFunction; import java.util.stream.Collectors; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -59,7 +60,6 @@ import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.ServerCacheControl; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.ThreadFactories; import com.linecorp.armeria.common.util.UnmodifiableFuture; import com.linecorp.armeria.common.util.Version; diff --git a/core/src/main/java/com/linecorp/armeria/server/docs/DocServiceBuilder.java b/core/src/main/java/com/linecorp/armeria/server/docs/DocServiceBuilder.java index 0c1412b53f3..d7eebeae911 100644 --- a/core/src/main/java/com/linecorp/armeria/server/docs/DocServiceBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/server/docs/DocServiceBuilder.java @@ -25,13 +25,14 @@ import java.util.Map; import java.util.function.BiFunction; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ArrayListMultimap; import com.google.common.collect.ImmutableList; import com.google.common.collect.ListMultimap; import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.HttpRequest; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.server.ServiceRequestContext; diff --git a/core/src/main/java/com/linecorp/armeria/server/docs/DocServicePlugin.java b/core/src/main/java/com/linecorp/armeria/server/docs/DocServicePlugin.java index f1d30c76d9d..717bc5e7ea4 100644 --- a/core/src/main/java/com/linecorp/armeria/server/docs/DocServicePlugin.java +++ b/core/src/main/java/com/linecorp/armeria/server/docs/DocServicePlugin.java @@ -19,10 +19,11 @@ import java.util.Map; import java.util.Set; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableMap; import com.google.common.collect.ImmutableSet; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.server.Service; import com.linecorp.armeria.server.ServiceConfig; diff --git a/core/src/main/java/com/linecorp/armeria/server/docs/EndpointInfo.java b/core/src/main/java/com/linecorp/armeria/server/docs/EndpointInfo.java index 375ddc59cdf..20437c77ac2 100644 --- a/core/src/main/java/com/linecorp/armeria/server/docs/EndpointInfo.java +++ b/core/src/main/java/com/linecorp/armeria/server/docs/EndpointInfo.java @@ -22,6 +22,8 @@ import java.util.Objects; import java.util.Set; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonInclude.Include; import com.fasterxml.jackson.annotation.JsonProperty; @@ -30,7 +32,6 @@ import com.google.common.collect.ImmutableSortedSet; import com.linecorp.armeria.common.MediaType; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.server.Service; diff --git a/core/src/main/java/com/linecorp/armeria/server/docs/EndpointInfoBuilder.java b/core/src/main/java/com/linecorp/armeria/server/docs/EndpointInfoBuilder.java index 3d5098a15f0..cf5cfbe511d 100644 --- a/core/src/main/java/com/linecorp/armeria/server/docs/EndpointInfoBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/server/docs/EndpointInfoBuilder.java @@ -23,6 +23,8 @@ import java.util.Set; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.google.common.collect.ImmutableSet; import com.google.common.collect.Iterables; @@ -30,7 +32,6 @@ import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.SerializationFormat; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/server/docs/EnumInfo.java b/core/src/main/java/com/linecorp/armeria/server/docs/EnumInfo.java index c06905c87b3..ef390ed4e59 100644 --- a/core/src/main/java/com/linecorp/armeria/server/docs/EnumInfo.java +++ b/core/src/main/java/com/linecorp/armeria/server/docs/EnumInfo.java @@ -24,11 +24,12 @@ import java.util.Objects; import java.util.Set; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.annotation.JsonProperty; import com.google.common.base.MoreObjects; import com.google.common.collect.ImmutableList; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/server/docs/EnumValueInfo.java b/core/src/main/java/com/linecorp/armeria/server/docs/EnumValueInfo.java index fdcf2454f30..684d1634ccc 100644 --- a/core/src/main/java/com/linecorp/armeria/server/docs/EnumValueInfo.java +++ b/core/src/main/java/com/linecorp/armeria/server/docs/EnumValueInfo.java @@ -19,12 +19,13 @@ import java.util.Objects; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonInclude.Include; import com.fasterxml.jackson.annotation.JsonProperty; import com.google.common.base.MoreObjects; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/server/docs/ExceptionInfo.java b/core/src/main/java/com/linecorp/armeria/server/docs/ExceptionInfo.java index 9fa4d763130..272c38b6c2c 100644 --- a/core/src/main/java/com/linecorp/armeria/server/docs/ExceptionInfo.java +++ b/core/src/main/java/com/linecorp/armeria/server/docs/ExceptionInfo.java @@ -24,12 +24,13 @@ import java.util.Objects; import java.util.Set; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.annotation.JsonProperty; import com.google.common.base.MoreObjects; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSortedSet; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/server/docs/FieldInfo.java b/core/src/main/java/com/linecorp/armeria/server/docs/FieldInfo.java index e88547f3e95..ce2efe7c3cb 100644 --- a/core/src/main/java/com/linecorp/armeria/server/docs/FieldInfo.java +++ b/core/src/main/java/com/linecorp/armeria/server/docs/FieldInfo.java @@ -20,10 +20,11 @@ import java.util.Objects; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.annotation.JsonProperty; import com.google.common.base.MoreObjects; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/server/docs/JsonSchemaGenerator.java b/core/src/main/java/com/linecorp/armeria/server/docs/JsonSchemaGenerator.java index 9796d3d15b2..dea004b96fe 100644 --- a/core/src/main/java/com/linecorp/armeria/server/docs/JsonSchemaGenerator.java +++ b/core/src/main/java/com/linecorp/armeria/server/docs/JsonSchemaGenerator.java @@ -24,6 +24,7 @@ import java.util.Set; import java.util.function.Function; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -32,9 +33,7 @@ import com.fasterxml.jackson.databind.node.ObjectNode; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; -import com.google.common.collect.ImmutableMap.Builder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.JacksonUtil; /** diff --git a/core/src/main/java/com/linecorp/armeria/server/docs/MethodInfo.java b/core/src/main/java/com/linecorp/armeria/server/docs/MethodInfo.java index fc1813c9e51..bfad91c6f72 100644 --- a/core/src/main/java/com/linecorp/armeria/server/docs/MethodInfo.java +++ b/core/src/main/java/com/linecorp/armeria/server/docs/MethodInfo.java @@ -24,6 +24,8 @@ import java.util.Objects; import java.util.Set; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonProperty; import com.google.common.base.MoreObjects; @@ -34,7 +36,6 @@ import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.HttpMethod; import com.linecorp.armeria.common.RequestTarget; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.server.Service; diff --git a/core/src/main/java/com/linecorp/armeria/server/docs/ServiceInfo.java b/core/src/main/java/com/linecorp/armeria/server/docs/ServiceInfo.java index 751e4514cec..7fd3270cbb9 100644 --- a/core/src/main/java/com/linecorp/armeria/server/docs/ServiceInfo.java +++ b/core/src/main/java/com/linecorp/armeria/server/docs/ServiceInfo.java @@ -26,6 +26,8 @@ import java.util.Objects; import java.util.Set; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.annotation.JsonProperty; import com.google.common.annotations.VisibleForTesting; import com.google.common.base.MoreObjects; @@ -35,7 +37,6 @@ import com.google.common.collect.Sets; import com.linecorp.armeria.common.HttpHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.server.Service; diff --git a/core/src/main/java/com/linecorp/armeria/server/docs/ServiceSpecification.java b/core/src/main/java/com/linecorp/armeria/server/docs/ServiceSpecification.java index 1f16b15f316..1f8e72f52da 100644 --- a/core/src/main/java/com/linecorp/armeria/server/docs/ServiceSpecification.java +++ b/core/src/main/java/com/linecorp/armeria/server/docs/ServiceSpecification.java @@ -27,6 +27,8 @@ import java.util.function.Function; import java.util.stream.Collectors; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.annotation.JsonProperty; import com.google.common.annotations.VisibleForTesting; import com.google.common.collect.ImmutableList; @@ -34,7 +36,6 @@ import com.google.common.collect.Streams; import com.linecorp.armeria.common.HttpHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.server.Route; import com.linecorp.armeria.server.RoutePathType; diff --git a/core/src/main/java/com/linecorp/armeria/server/docs/StructInfo.java b/core/src/main/java/com/linecorp/armeria/server/docs/StructInfo.java index dd9890ae15f..6755e8185af 100644 --- a/core/src/main/java/com/linecorp/armeria/server/docs/StructInfo.java +++ b/core/src/main/java/com/linecorp/armeria/server/docs/StructInfo.java @@ -24,6 +24,8 @@ import java.util.Objects; import java.util.Set; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonInclude.Include; import com.fasterxml.jackson.annotation.JsonProperty; @@ -31,7 +33,6 @@ import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSortedSet; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/server/docs/package-info.java b/core/src/main/java/com/linecorp/armeria/server/docs/package-info.java index 0e472993372..ac4dd7c68cd 100644 --- a/core/src/main/java/com/linecorp/armeria/server/docs/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/server/docs/package-info.java @@ -17,7 +17,7 @@ /** * Documentation service. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.docs; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/server/encoding/HttpDecodedRequest.java b/core/src/main/java/com/linecorp/armeria/server/encoding/HttpDecodedRequest.java index 9cc36fe6336..ed6f6c5d7a2 100644 --- a/core/src/main/java/com/linecorp/armeria/server/encoding/HttpDecodedRequest.java +++ b/core/src/main/java/com/linecorp/armeria/server/encoding/HttpDecodedRequest.java @@ -16,6 +16,7 @@ package com.linecorp.armeria.server.encoding; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -25,7 +26,6 @@ import com.linecorp.armeria.common.HttpData; import com.linecorp.armeria.common.HttpObject; import com.linecorp.armeria.common.HttpRequest; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.encoding.StreamDecoder; import com.linecorp.armeria.common.encoding.StreamDecoderFactory; import com.linecorp.armeria.common.util.CompositeException; diff --git a/core/src/main/java/com/linecorp/armeria/server/encoding/HttpEncodedResponse.java b/core/src/main/java/com/linecorp/armeria/server/encoding/HttpEncodedResponse.java index d3568f4b65c..d4bc906b268 100644 --- a/core/src/main/java/com/linecorp/armeria/server/encoding/HttpEncodedResponse.java +++ b/core/src/main/java/com/linecorp/armeria/server/encoding/HttpEncodedResponse.java @@ -22,6 +22,7 @@ import java.io.OutputStream; import java.util.function.Predicate; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -39,7 +40,6 @@ import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.ResponseHeadersBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.encoding.StreamEncoderFactory; import com.linecorp.armeria.common.stream.FilteredStreamMessage; diff --git a/core/src/main/java/com/linecorp/armeria/server/encoding/HttpEncoders.java b/core/src/main/java/com/linecorp/armeria/server/encoding/HttpEncoders.java index 684679cc173..0a766f2f8c6 100644 --- a/core/src/main/java/com/linecorp/armeria/server/encoding/HttpEncoders.java +++ b/core/src/main/java/com/linecorp/armeria/server/encoding/HttpEncoders.java @@ -21,9 +21,10 @@ import java.util.Map; import java.util.Map.Entry; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.encoding.StreamEncoderFactory; /** diff --git a/core/src/main/java/com/linecorp/armeria/server/encoding/package-info.java b/core/src/main/java/com/linecorp/armeria/server/encoding/package-info.java index dd87ee1b317..32382d59140 100644 --- a/core/src/main/java/com/linecorp/armeria/server/encoding/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/server/encoding/package-info.java @@ -17,7 +17,7 @@ /** * HTTP content encoding service. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.encoding; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/server/file/AbstractBlockingHttpVfs.java b/core/src/main/java/com/linecorp/armeria/server/file/AbstractBlockingHttpVfs.java index 362adcb5ee2..2287a91f804 100644 --- a/core/src/main/java/com/linecorp/armeria/server/file/AbstractBlockingHttpVfs.java +++ b/core/src/main/java/com/linecorp/armeria/server/file/AbstractBlockingHttpVfs.java @@ -22,11 +22,12 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.Executor; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.MediaType; -import com.linecorp.armeria.common.annotation.Nullable; /** * A skeletal {@link HttpVfs} implementation for accessing file system with blocking I/O. diff --git a/core/src/main/java/com/linecorp/armeria/server/file/AbstractHttpFile.java b/core/src/main/java/com/linecorp/armeria/server/file/AbstractHttpFile.java index 620c9cdbc65..659693af7e0 100644 --- a/core/src/main/java/com/linecorp/armeria/server/file/AbstractHttpFile.java +++ b/core/src/main/java/com/linecorp/armeria/server/file/AbstractHttpFile.java @@ -23,6 +23,8 @@ import java.util.concurrent.Executor; import java.util.function.BiFunction; +import org.jspecify.annotations.Nullable; + import com.google.common.base.Splitter; import com.google.common.math.LongMath; @@ -35,7 +37,6 @@ import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.ResponseHeadersBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.server.HttpService; diff --git a/core/src/main/java/com/linecorp/armeria/server/file/AbstractHttpFileBuilder.java b/core/src/main/java/com/linecorp/armeria/server/file/AbstractHttpFileBuilder.java index d1c8d4e98bd..f4941edb6b2 100644 --- a/core/src/main/java/com/linecorp/armeria/server/file/AbstractHttpFileBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/server/file/AbstractHttpFileBuilder.java @@ -21,13 +21,14 @@ import java.util.Map.Entry; import java.util.function.BiFunction; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.CacheControl; import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.HttpHeadersBuilder; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.MediaType; -import com.linecorp.armeria.common.annotation.Nullable; /** * A skeletal builder class which helps easier implementation of {@link HttpFileBuilder} or diff --git a/core/src/main/java/com/linecorp/armeria/server/file/AggregatedHttpFile.java b/core/src/main/java/com/linecorp/armeria/server/file/AggregatedHttpFile.java index cc3458ce15b..497f7df24b2 100644 --- a/core/src/main/java/com/linecorp/armeria/server/file/AggregatedHttpFile.java +++ b/core/src/main/java/com/linecorp/armeria/server/file/AggregatedHttpFile.java @@ -17,10 +17,11 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.AggregatedHttpResponse; import com.linecorp.armeria.common.HttpData; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; /** * A complete HTTP file whose attributes and content are readily available. diff --git a/core/src/main/java/com/linecorp/armeria/server/file/CachingHttpFile.java b/core/src/main/java/com/linecorp/armeria/server/file/CachingHttpFile.java index c5a4f304cf8..3d7c726ea5a 100644 --- a/core/src/main/java/com/linecorp/armeria/server/file/CachingHttpFile.java +++ b/core/src/main/java/com/linecorp/armeria/server/file/CachingHttpFile.java @@ -20,6 +20,7 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.Executor; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -27,7 +28,6 @@ import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.server.HttpService; diff --git a/core/src/main/java/com/linecorp/armeria/server/file/ClassPathHttpFile.java b/core/src/main/java/com/linecorp/armeria/server/file/ClassPathHttpFile.java index 96e2551dc31..7ba7bdc1312 100644 --- a/core/src/main/java/com/linecorp/armeria/server/file/ClassPathHttpFile.java +++ b/core/src/main/java/com/linecorp/armeria/server/file/ClassPathHttpFile.java @@ -26,10 +26,11 @@ import java.util.concurrent.Executor; import java.util.function.BiFunction; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.linecorp.armeria.common.HttpHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import io.netty.buffer.ByteBuf; diff --git a/core/src/main/java/com/linecorp/armeria/server/file/ClassPathHttpVfs.java b/core/src/main/java/com/linecorp/armeria/server/file/ClassPathHttpVfs.java index a19dab9f3e7..5ede43b14fe 100644 --- a/core/src/main/java/com/linecorp/armeria/server/file/ClassPathHttpVfs.java +++ b/core/src/main/java/com/linecorp/armeria/server/file/ClassPathHttpVfs.java @@ -20,8 +20,9 @@ import java.time.Clock; import java.util.concurrent.Executor; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.server.RouteUtil; final class ClassPathHttpVfs extends AbstractBlockingHttpVfs { diff --git a/core/src/main/java/com/linecorp/armeria/server/file/DecompressingHttpFile.java b/core/src/main/java/com/linecorp/armeria/server/file/DecompressingHttpFile.java index 80c93297a93..287ce8621d1 100644 --- a/core/src/main/java/com/linecorp/armeria/server/file/DecompressingHttpFile.java +++ b/core/src/main/java/com/linecorp/armeria/server/file/DecompressingHttpFile.java @@ -19,10 +19,11 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.Executor; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.encoding.StaticHttpDecodedResponse; import com.linecorp.armeria.server.HttpService; import com.linecorp.armeria.server.file.FileService.ContentEncoding; diff --git a/core/src/main/java/com/linecorp/armeria/server/file/DefaultMediaTypeResolver.java b/core/src/main/java/com/linecorp/armeria/server/file/DefaultMediaTypeResolver.java index da16d00a6ff..ff6da4d70fc 100644 --- a/core/src/main/java/com/linecorp/armeria/server/file/DefaultMediaTypeResolver.java +++ b/core/src/main/java/com/linecorp/armeria/server/file/DefaultMediaTypeResolver.java @@ -23,10 +23,11 @@ import java.util.HashMap; import java.util.Map; +import org.jspecify.annotations.Nullable; + import com.google.common.base.Ascii; import com.linecorp.armeria.common.MediaType; -import com.linecorp.armeria.common.annotation.Nullable; enum DefaultMediaTypeResolver implements MediaTypeResolver { INSTANCE; diff --git a/core/src/main/java/com/linecorp/armeria/server/file/DeferredHttpFile.java b/core/src/main/java/com/linecorp/armeria/server/file/DeferredHttpFile.java index cdfa4b42f01..157696bfbd6 100644 --- a/core/src/main/java/com/linecorp/armeria/server/file/DeferredHttpFile.java +++ b/core/src/main/java/com/linecorp/armeria/server/file/DeferredHttpFile.java @@ -21,6 +21,7 @@ import java.util.concurrent.CompletionStage; import java.util.concurrent.Executor; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -28,7 +29,6 @@ import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.server.HttpService; diff --git a/core/src/main/java/com/linecorp/armeria/server/file/FileService.java b/core/src/main/java/com/linecorp/armeria/server/file/FileService.java index 749a668b0fe..47348b8a0d8 100644 --- a/core/src/main/java/com/linecorp/armeria/server/file/FileService.java +++ b/core/src/main/java/com/linecorp/armeria/server/file/FileService.java @@ -31,6 +31,7 @@ import java.util.concurrent.ScheduledExecutorService; import java.util.function.BiFunction; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -45,7 +46,6 @@ import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.MediaType; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.encoding.StreamDecoder; import com.linecorp.armeria.common.encoding.StreamDecoderFactory; import com.linecorp.armeria.common.metric.MeterIdPrefix; diff --git a/core/src/main/java/com/linecorp/armeria/server/file/FileServiceBuilder.java b/core/src/main/java/com/linecorp/armeria/server/file/FileServiceBuilder.java index 1366e6ab26d..67bf85dffc0 100644 --- a/core/src/main/java/com/linecorp/armeria/server/file/FileServiceBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/server/file/FileServiceBuilder.java @@ -27,6 +27,8 @@ import java.util.List; import java.util.Map.Entry; +import org.jspecify.annotations.Nullable; + import com.github.benmanes.caffeine.cache.CaffeineSpec; import com.google.common.collect.ImmutableList; @@ -37,7 +39,6 @@ import com.linecorp.armeria.common.HttpHeadersBuilder; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.MediaType; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** @@ -64,8 +65,7 @@ public final class FileServiceBuilder { HttpHeadersBuilder headers; MediaTypeResolver mediaTypeResolver = MediaTypeResolver.ofDefault(); - @Nullable - private ImmutableList.Builder fallbackFileExtensions; + private ImmutableList.@Nullable Builder fallbackFileExtensions; FileServiceBuilder(HttpVfs vfs) { this.vfs = requireNonNull(vfs, "vfs"); diff --git a/core/src/main/java/com/linecorp/armeria/server/file/FileServiceConfig.java b/core/src/main/java/com/linecorp/armeria/server/file/FileServiceConfig.java index 8766acd95a7..1b2156c620d 100644 --- a/core/src/main/java/com/linecorp/armeria/server/file/FileServiceConfig.java +++ b/core/src/main/java/com/linecorp/armeria/server/file/FileServiceConfig.java @@ -22,13 +22,14 @@ import java.util.List; import java.util.Map.Entry; +import org.jspecify.annotations.Nullable; + import com.github.benmanes.caffeine.cache.CaffeineSpec; import com.google.common.base.MoreObjects; import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.MediaType; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import io.netty.util.AsciiString; diff --git a/core/src/main/java/com/linecorp/armeria/server/file/FileSystemHttpFile.java b/core/src/main/java/com/linecorp/armeria/server/file/FileSystemHttpFile.java index 67dbac22100..b0e31dc873a 100644 --- a/core/src/main/java/com/linecorp/armeria/server/file/FileSystemHttpFile.java +++ b/core/src/main/java/com/linecorp/armeria/server/file/FileSystemHttpFile.java @@ -30,10 +30,11 @@ import java.util.concurrent.Executor; import java.util.function.BiFunction; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.linecorp.armeria.common.HttpHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import io.netty.buffer.ByteBuf; diff --git a/core/src/main/java/com/linecorp/armeria/server/file/FileSystemHttpVfs.java b/core/src/main/java/com/linecorp/armeria/server/file/FileSystemHttpVfs.java index 598430ccd43..aa7f76bed4e 100644 --- a/core/src/main/java/com/linecorp/armeria/server/file/FileSystemHttpVfs.java +++ b/core/src/main/java/com/linecorp/armeria/server/file/FileSystemHttpVfs.java @@ -28,12 +28,13 @@ import java.util.concurrent.Executor; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.MediaType; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.server.RouteUtil; final class FileSystemHttpVfs extends AbstractBlockingHttpVfs { diff --git a/core/src/main/java/com/linecorp/armeria/server/file/HttpDataFile.java b/core/src/main/java/com/linecorp/armeria/server/file/HttpDataFile.java index bc1660b17c1..f30105e7b59 100644 --- a/core/src/main/java/com/linecorp/armeria/server/file/HttpDataFile.java +++ b/core/src/main/java/com/linecorp/armeria/server/file/HttpDataFile.java @@ -25,6 +25,8 @@ import javax.annotation.Nonnull; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.linecorp.armeria.common.ByteBufAccessMode; @@ -33,7 +35,6 @@ import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.UnmodifiableFuture; import io.netty.buffer.ByteBuf; diff --git a/core/src/main/java/com/linecorp/armeria/server/file/HttpFile.java b/core/src/main/java/com/linecorp/armeria/server/file/HttpFile.java index 46f9f19fc12..45478bf9e03 100644 --- a/core/src/main/java/com/linecorp/armeria/server/file/HttpFile.java +++ b/core/src/main/java/com/linecorp/armeria/server/file/HttpFile.java @@ -27,10 +27,11 @@ import java.util.concurrent.CompletionStage; import java.util.concurrent.Executor; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpData; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.server.HttpService; import com.linecorp.armeria.server.file.HttpFileBuilder.ClassPathHttpFileBuilder; diff --git a/core/src/main/java/com/linecorp/armeria/server/file/HttpFileAttributes.java b/core/src/main/java/com/linecorp/armeria/server/file/HttpFileAttributes.java index ae4dd0232cf..30219e3cfc2 100644 --- a/core/src/main/java/com/linecorp/armeria/server/file/HttpFileAttributes.java +++ b/core/src/main/java/com/linecorp/armeria/server/file/HttpFileAttributes.java @@ -20,9 +20,9 @@ import java.util.Date; import java.util.concurrent.Executor; -import com.google.common.base.MoreObjects; +import org.jspecify.annotations.Nullable; -import com.linecorp.armeria.common.annotation.Nullable; +import com.google.common.base.MoreObjects; import io.netty.handler.codec.DateFormatter; diff --git a/core/src/main/java/com/linecorp/armeria/server/file/HttpVfs.java b/core/src/main/java/com/linecorp/armeria/server/file/HttpVfs.java index 7d59dcb6486..a156e6646f0 100644 --- a/core/src/main/java/com/linecorp/armeria/server/file/HttpVfs.java +++ b/core/src/main/java/com/linecorp/armeria/server/file/HttpVfs.java @@ -24,9 +24,10 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.Executor; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.MediaType; -import com.linecorp.armeria.common.annotation.Nullable; import io.micrometer.core.instrument.Meter; import io.micrometer.core.instrument.Tag; diff --git a/core/src/main/java/com/linecorp/armeria/server/file/MediaTypeResolver.java b/core/src/main/java/com/linecorp/armeria/server/file/MediaTypeResolver.java index 56edcbc762b..3dcd6d70dbb 100644 --- a/core/src/main/java/com/linecorp/armeria/server/file/MediaTypeResolver.java +++ b/core/src/main/java/com/linecorp/armeria/server/file/MediaTypeResolver.java @@ -17,8 +17,9 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.MediaType; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/core/src/main/java/com/linecorp/armeria/server/file/NonExistentAggregatedHttpFile.java b/core/src/main/java/com/linecorp/armeria/server/file/NonExistentAggregatedHttpFile.java index d60a6689970..ea07cb827ac 100644 --- a/core/src/main/java/com/linecorp/armeria/server/file/NonExistentAggregatedHttpFile.java +++ b/core/src/main/java/com/linecorp/armeria/server/file/NonExistentAggregatedHttpFile.java @@ -15,10 +15,11 @@ */ package com.linecorp.armeria.server.file; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.AggregatedHttpResponse; import com.linecorp.armeria.common.HttpData; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; final class NonExistentAggregatedHttpFile implements AggregatedHttpFile { diff --git a/core/src/main/java/com/linecorp/armeria/server/file/NonExistentHttpFile.java b/core/src/main/java/com/linecorp/armeria/server/file/NonExistentHttpFile.java index 6a75d8050e2..54bfefd54ea 100644 --- a/core/src/main/java/com/linecorp/armeria/server/file/NonExistentHttpFile.java +++ b/core/src/main/java/com/linecorp/armeria/server/file/NonExistentHttpFile.java @@ -18,10 +18,11 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.Executor; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.UnmodifiableFuture; import com.linecorp.armeria.server.HttpService; diff --git a/core/src/main/java/com/linecorp/armeria/server/file/StreamingHttpFile.java b/core/src/main/java/com/linecorp/armeria/server/file/StreamingHttpFile.java index a2ac81ce69d..763d2428a25 100644 --- a/core/src/main/java/com/linecorp/armeria/server/file/StreamingHttpFile.java +++ b/core/src/main/java/com/linecorp/armeria/server/file/StreamingHttpFile.java @@ -26,6 +26,7 @@ import java.util.concurrent.Executor; import java.util.function.BiFunction; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -35,7 +36,6 @@ import com.linecorp.armeria.common.HttpResponseWriter; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.EventLoopCheckingFuture; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.common.util.UnmodifiableFuture; diff --git a/core/src/main/java/com/linecorp/armeria/server/file/package-info.java b/core/src/main/java/com/linecorp/armeria/server/file/package-info.java index ef789251517..5d4ddbd1784 100644 --- a/core/src/main/java/com/linecorp/armeria/server/file/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/server/file/package-info.java @@ -17,7 +17,7 @@ /** * HTTP static file service. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.file; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/server/healthcheck/CpuHealthChecker.java b/core/src/main/java/com/linecorp/armeria/server/healthcheck/CpuHealthChecker.java index bc040182a72..d9c229bf52b 100644 --- a/core/src/main/java/com/linecorp/armeria/server/healthcheck/CpuHealthChecker.java +++ b/core/src/main/java/com/linecorp/armeria/server/healthcheck/CpuHealthChecker.java @@ -26,14 +26,13 @@ import java.util.List; import java.util.function.DoubleSupplier; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.google.common.annotations.VisibleForTesting; import com.google.common.collect.ImmutableList; -import com.linecorp.armeria.common.annotation.Nullable; - /** * A {@link HealthChecker} that reports as unhealthy when the current * CPU usage or CPU load exceeds threshold. For example: diff --git a/core/src/main/java/com/linecorp/armeria/server/healthcheck/HealthCheckService.java b/core/src/main/java/com/linecorp/armeria/server/healthcheck/HealthCheckService.java index a45b3a5514b..b1b7c7e7f21 100644 --- a/core/src/main/java/com/linecorp/armeria/server/healthcheck/HealthCheckService.java +++ b/core/src/main/java/com/linecorp/armeria/server/healthcheck/HealthCheckService.java @@ -24,6 +24,7 @@ import java.util.concurrent.locks.ReentrantLock; import java.util.function.Consumer; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -40,7 +41,6 @@ import com.linecorp.armeria.common.HttpResponseWriter; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.TimeoutMode; import com.linecorp.armeria.internal.common.ArmeriaHttpUtil; import com.linecorp.armeria.internal.common.util.ReentrantShortLock; diff --git a/core/src/main/java/com/linecorp/armeria/server/healthcheck/HealthCheckServiceBuilder.java b/core/src/main/java/com/linecorp/armeria/server/healthcheck/HealthCheckServiceBuilder.java index 853847adbf8..89245dc9188 100644 --- a/core/src/main/java/com/linecorp/armeria/server/healthcheck/HealthCheckServiceBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/server/healthcheck/HealthCheckServiceBuilder.java @@ -22,6 +22,8 @@ import java.time.Duration; import java.util.concurrent.TimeUnit; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; @@ -29,7 +31,6 @@ import com.linecorp.armeria.common.HttpData; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.MediaType; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.server.TransientServiceOptionsBuilder; import com.linecorp.armeria.server.Server; import com.linecorp.armeria.server.Service; diff --git a/core/src/main/java/com/linecorp/armeria/server/healthcheck/package-info.java b/core/src/main/java/com/linecorp/armeria/server/healthcheck/package-info.java index 1ad8f31f81c..4e01f0103b8 100644 --- a/core/src/main/java/com/linecorp/armeria/server/healthcheck/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/server/healthcheck/package-info.java @@ -17,7 +17,7 @@ /** * HTTP health check service for load balancers. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.healthcheck; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/server/logging/AccessLogComponent.java b/core/src/main/java/com/linecorp/armeria/server/logging/AccessLogComponent.java index 065063dea74..b477765845e 100644 --- a/core/src/main/java/com/linecorp/armeria/server/logging/AccessLogComponent.java +++ b/core/src/main/java/com/linecorp/armeria/server/logging/AccessLogComponent.java @@ -34,6 +34,8 @@ import java.util.function.Function; import java.util.stream.Collectors; +import org.jspecify.annotations.Nullable; + import com.google.common.annotations.VisibleForTesting; import com.google.common.net.UrlEscapers; @@ -42,7 +44,6 @@ import com.linecorp.armeria.common.RequestId; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.RpcRequest; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.internal.common.util.TemporaryThreadLocals; diff --git a/core/src/main/java/com/linecorp/armeria/server/logging/AccessLogFormats.java b/core/src/main/java/com/linecorp/armeria/server/logging/AccessLogFormats.java index f4ece1c8fe7..701cbb38bc3 100644 --- a/core/src/main/java/com/linecorp/armeria/server/logging/AccessLogFormats.java +++ b/core/src/main/java/com/linecorp/armeria/server/logging/AccessLogFormats.java @@ -33,6 +33,8 @@ import java.util.Set; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; @@ -40,7 +42,6 @@ import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.logging.AccessLogComponent.AttributeComponent; import com.linecorp.armeria.server.logging.AccessLogComponent.CommonComponent; import com.linecorp.armeria.server.logging.AccessLogComponent.HttpHeaderComponent; diff --git a/core/src/main/java/com/linecorp/armeria/server/logging/AccessLogType.java b/core/src/main/java/com/linecorp/armeria/server/logging/AccessLogType.java index f4dc35d9053..9cc699399bb 100644 --- a/core/src/main/java/com/linecorp/armeria/server/logging/AccessLogType.java +++ b/core/src/main/java/com/linecorp/armeria/server/logging/AccessLogType.java @@ -22,11 +22,12 @@ import java.util.Map; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableMap; import com.linecorp.armeria.common.RequestContext; import com.linecorp.armeria.common.RequestId; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import io.netty.util.AttributeMap; diff --git a/core/src/main/java/com/linecorp/armeria/server/logging/ContentPreviewingService.java b/core/src/main/java/com/linecorp/armeria/server/logging/ContentPreviewingService.java index da0641261e2..f699f5eac93 100644 --- a/core/src/main/java/com/linecorp/armeria/server/logging/ContentPreviewingService.java +++ b/core/src/main/java/com/linecorp/armeria/server/logging/ContentPreviewingService.java @@ -24,6 +24,8 @@ import java.util.function.BiFunction; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.Request; @@ -31,7 +33,6 @@ import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.Response; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.logging.ContentPreviewer; import com.linecorp.armeria.common.logging.ContentPreviewerFactory; diff --git a/core/src/main/java/com/linecorp/armeria/server/logging/ContentPreviewingServiceBuilder.java b/core/src/main/java/com/linecorp/armeria/server/logging/ContentPreviewingServiceBuilder.java index 832a03b1bda..ad1cea601bb 100644 --- a/core/src/main/java/com/linecorp/armeria/server/logging/ContentPreviewingServiceBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/server/logging/ContentPreviewingServiceBuilder.java @@ -21,8 +21,9 @@ import java.util.function.BiFunction; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.ContentPreviewerFactory; import com.linecorp.armeria.common.util.Functions; import com.linecorp.armeria.server.HttpService; diff --git a/core/src/main/java/com/linecorp/armeria/server/logging/LoggingServiceBuilder.java b/core/src/main/java/com/linecorp/armeria/server/logging/LoggingServiceBuilder.java index 84934c2defd..78e9cde1ac3 100644 --- a/core/src/main/java/com/linecorp/armeria/server/logging/LoggingServiceBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/server/logging/LoggingServiceBuilder.java @@ -23,13 +23,13 @@ import java.util.function.Function; import java.util.function.Predicate; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.HttpStatusClass; import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.LogLevel; import com.linecorp.armeria.common.logging.LogWriter; import com.linecorp.armeria.common.logging.LoggingDecoratorBuilder; diff --git a/core/src/main/java/com/linecorp/armeria/server/logging/package-info.java b/core/src/main/java/com/linecorp/armeria/server/logging/package-info.java index fa23738e1e6..1e49fb59594 100644 --- a/core/src/main/java/com/linecorp/armeria/server/logging/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/server/logging/package-info.java @@ -17,7 +17,7 @@ /** * Logging and metric-collecting service decorators. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.logging; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/server/management/HeapDumpService.java b/core/src/main/java/com/linecorp/armeria/server/management/HeapDumpService.java index 63d36c5a948..503e5899c6e 100644 --- a/core/src/main/java/com/linecorp/armeria/server/management/HeapDumpService.java +++ b/core/src/main/java/com/linecorp/armeria/server/management/HeapDumpService.java @@ -45,6 +45,7 @@ import java.util.concurrent.Executor; import java.util.concurrent.Executors; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -55,7 +56,6 @@ import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.QueryParams; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.SystemInfo; import com.linecorp.armeria.common.util.ThreadFactories; import com.linecorp.armeria.server.HttpService; diff --git a/core/src/main/java/com/linecorp/armeria/server/management/package-info.java b/core/src/main/java/com/linecorp/armeria/server/management/package-info.java index 08e3d7e263c..1232076038e 100644 --- a/core/src/main/java/com/linecorp/armeria/server/management/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/server/management/package-info.java @@ -17,7 +17,7 @@ /** * Supports monitoring and management features. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.management; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/server/metric/MetricCollectingService.java b/core/src/main/java/com/linecorp/armeria/server/metric/MetricCollectingService.java index de6d0283b5b..465fb8d63f2 100644 --- a/core/src/main/java/com/linecorp/armeria/server/metric/MetricCollectingService.java +++ b/core/src/main/java/com/linecorp/armeria/server/metric/MetricCollectingService.java @@ -22,10 +22,11 @@ import java.util.function.BiPredicate; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.metric.MeterIdPrefixFunction; import com.linecorp.armeria.internal.common.metric.RequestMetricSupport; diff --git a/core/src/main/java/com/linecorp/armeria/server/metric/package-info.java b/core/src/main/java/com/linecorp/armeria/server/metric/package-info.java index d5d7040c1f3..6b18130f8ae 100644 --- a/core/src/main/java/com/linecorp/armeria/server/metric/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/server/metric/package-info.java @@ -17,7 +17,7 @@ /** * Metric-collecting service decorators and exporters. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.metric; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/server/observation/DefaultServiceObservationConvention.java b/core/src/main/java/com/linecorp/armeria/server/observation/DefaultServiceObservationConvention.java index a158caf93c6..66efc7d2d5d 100644 --- a/core/src/main/java/com/linecorp/armeria/server/observation/DefaultServiceObservationConvention.java +++ b/core/src/main/java/com/linecorp/armeria/server/observation/DefaultServiceObservationConvention.java @@ -20,11 +20,12 @@ import java.net.InetSocketAddress; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.linecorp.armeria.common.SerializationFormat; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.logging.RequestLogAccess; import com.linecorp.armeria.common.logging.RequestLogProperty; diff --git a/core/src/main/java/com/linecorp/armeria/server/observation/ObservationService.java b/core/src/main/java/com/linecorp/armeria/server/observation/ObservationService.java index 2a22c9ae118..5655d240c8b 100644 --- a/core/src/main/java/com/linecorp/armeria/server/observation/ObservationService.java +++ b/core/src/main/java/com/linecorp/armeria/server/observation/ObservationService.java @@ -21,10 +21,11 @@ import java.util.Set; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.observation.ObservationClient; import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpResponse; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.internal.common.RequestContextExtension; import com.linecorp.armeria.server.HttpService; diff --git a/core/src/main/java/com/linecorp/armeria/server/observation/package-info.java b/core/src/main/java/com/linecorp/armeria/server/observation/package-info.java index 0fa2ad50f70..603e9b7ba0e 100644 --- a/core/src/main/java/com/linecorp/armeria/server/observation/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/server/observation/package-info.java @@ -18,8 +18,9 @@ * Observation basing on Micrometer Observation. */ @UnstableApi -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.observation; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/core/src/main/java/com/linecorp/armeria/server/package-info.java b/core/src/main/java/com/linecorp/armeria/server/package-info.java index 5041f8fe464..d7af60915bd 100644 --- a/core/src/main/java/com/linecorp/armeria/server/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/server/package-info.java @@ -24,7 +24,7 @@ *
  • {@link com.linecorp.armeria.server.Service}
  • * */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/server/streaming/JsonLines.java b/core/src/main/java/com/linecorp/armeria/server/streaming/JsonLines.java index 7b4e5986bbf..17894a6ef12 100644 --- a/core/src/main/java/com/linecorp/armeria/server/streaming/JsonLines.java +++ b/core/src/main/java/com/linecorp/armeria/server/streaming/JsonLines.java @@ -24,6 +24,7 @@ import java.util.function.Function; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -38,7 +39,6 @@ import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.internal.common.JacksonUtil; diff --git a/core/src/main/java/com/linecorp/armeria/server/streaming/JsonTextSequences.java b/core/src/main/java/com/linecorp/armeria/server/streaming/JsonTextSequences.java index a420fffe6c0..b172d9a5bdb 100644 --- a/core/src/main/java/com/linecorp/armeria/server/streaming/JsonTextSequences.java +++ b/core/src/main/java/com/linecorp/armeria/server/streaming/JsonTextSequences.java @@ -24,6 +24,7 @@ import java.util.function.Function; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -36,7 +37,6 @@ import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.internal.common.JacksonUtil; diff --git a/core/src/main/java/com/linecorp/armeria/server/streaming/package-info.java b/core/src/main/java/com/linecorp/armeria/server/streaming/package-info.java index 0371baaf529..9faf75e6a61 100644 --- a/core/src/main/java/com/linecorp/armeria/server/streaming/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/server/streaming/package-info.java @@ -17,7 +17,7 @@ /** * Supports streaming responses from {@link org.reactivestreams.Publisher} or {@link java.util.stream.Stream}. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.streaming; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/server/throttling/RateLimitingThrottlingStrategy.java b/core/src/main/java/com/linecorp/armeria/server/throttling/RateLimitingThrottlingStrategy.java index 6fa363c6d0c..7d2bbd64c03 100644 --- a/core/src/main/java/com/linecorp/armeria/server/throttling/RateLimitingThrottlingStrategy.java +++ b/core/src/main/java/com/linecorp/armeria/server/throttling/RateLimitingThrottlingStrategy.java @@ -20,11 +20,12 @@ import java.util.concurrent.CompletionStage; +import org.jspecify.annotations.Nullable; + import com.google.common.annotations.VisibleForTesting; import com.google.common.util.concurrent.RateLimiter; import com.linecorp.armeria.common.Request; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.UnmodifiableFuture; import com.linecorp.armeria.server.ServiceRequestContext; diff --git a/core/src/main/java/com/linecorp/armeria/server/throttling/ThrottlingRejectHandler.java b/core/src/main/java/com/linecorp/armeria/server/throttling/ThrottlingRejectHandler.java index 0dc97916b20..1e85d35a5cd 100644 --- a/core/src/main/java/com/linecorp/armeria/server/throttling/ThrottlingRejectHandler.java +++ b/core/src/main/java/com/linecorp/armeria/server/throttling/ThrottlingRejectHandler.java @@ -15,13 +15,14 @@ */ package com.linecorp.armeria.server.throttling; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.Request; import com.linecorp.armeria.common.Response; import com.linecorp.armeria.common.RpcRequest; import com.linecorp.armeria.common.RpcResponse; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.Service; import com.linecorp.armeria.server.ServiceRequestContext; diff --git a/core/src/main/java/com/linecorp/armeria/server/throttling/ThrottlingStrategy.java b/core/src/main/java/com/linecorp/armeria/server/throttling/ThrottlingStrategy.java index de17a2d0e73..96afc7a2456 100644 --- a/core/src/main/java/com/linecorp/armeria/server/throttling/ThrottlingStrategy.java +++ b/core/src/main/java/com/linecorp/armeria/server/throttling/ThrottlingStrategy.java @@ -19,8 +19,9 @@ import java.util.concurrent.atomic.AtomicInteger; import java.util.function.BiFunction; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.Request; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.UnmodifiableFuture; import com.linecorp.armeria.server.ServiceRequestContext; diff --git a/core/src/main/java/com/linecorp/armeria/server/throttling/package-info.java b/core/src/main/java/com/linecorp/armeria/server/throttling/package-info.java index 8bc48c079a9..bb8c506f708 100644 --- a/core/src/main/java/com/linecorp/armeria/server/throttling/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/server/throttling/package-info.java @@ -17,7 +17,7 @@ /** * Request throttling service decorators and strategies. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.throttling; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/server/websocket/WebSocketProtocolViolationException.java b/core/src/main/java/com/linecorp/armeria/server/websocket/WebSocketProtocolViolationException.java index 888290dfe4c..2984f06032e 100644 --- a/core/src/main/java/com/linecorp/armeria/server/websocket/WebSocketProtocolViolationException.java +++ b/core/src/main/java/com/linecorp/armeria/server/websocket/WebSocketProtocolViolationException.java @@ -17,8 +17,9 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.ProtocolViolationException; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.websocket.WebSocketCloseStatus; import com.linecorp.armeria.common.websocket.WebSocketFrame; diff --git a/core/src/main/java/com/linecorp/armeria/server/websocket/WebSocketServiceBuilder.java b/core/src/main/java/com/linecorp/armeria/server/websocket/WebSocketServiceBuilder.java index 05f7c293664..745a408855d 100644 --- a/core/src/main/java/com/linecorp/armeria/server/websocket/WebSocketServiceBuilder.java +++ b/core/src/main/java/com/linecorp/armeria/server/websocket/WebSocketServiceBuilder.java @@ -25,13 +25,13 @@ import java.util.regex.Pattern; import java.util.stream.Collectors; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.google.common.base.Ascii; import com.google.common.collect.ImmutableSet; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.websocket.WebSocketCloseStatus; import com.linecorp.armeria.common.websocket.WebSocketFrameType; diff --git a/core/src/main/java/com/linecorp/armeria/server/websocket/WebSocketUpgradeResult.java b/core/src/main/java/com/linecorp/armeria/server/websocket/WebSocketUpgradeResult.java index 9a7172ae7f8..1ec1891489d 100644 --- a/core/src/main/java/com/linecorp/armeria/server/websocket/WebSocketUpgradeResult.java +++ b/core/src/main/java/com/linecorp/armeria/server/websocket/WebSocketUpgradeResult.java @@ -18,10 +18,11 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.linecorp.armeria.common.HttpResponse; -import com.linecorp.armeria.common.annotation.Nullable; /** * The result of a WebSocket upgrade. diff --git a/core/src/main/java/com/linecorp/armeria/server/websocket/package-info.java b/core/src/main/java/com/linecorp/armeria/server/websocket/package-info.java index 0613003da0a..2906c758154 100644 --- a/core/src/main/java/com/linecorp/armeria/server/websocket/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/server/websocket/package-info.java @@ -17,7 +17,7 @@ /** * Server-side classes for the WebSocket Protocol. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.websocket; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java/com/linecorp/armeria/unsafe/PooledObjects.java b/core/src/main/java/com/linecorp/armeria/unsafe/PooledObjects.java index 832f987c969..eff398b9acc 100644 --- a/core/src/main/java/com/linecorp/armeria/unsafe/PooledObjects.java +++ b/core/src/main/java/com/linecorp/armeria/unsafe/PooledObjects.java @@ -17,6 +17,7 @@ import java.util.concurrent.Executor; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import com.linecorp.armeria.common.AggregationOptions; @@ -24,7 +25,6 @@ import com.linecorp.armeria.common.HttpData; import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpResponse; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.stream.StreamMessage; import com.linecorp.armeria.common.stream.SubscriptionOption; diff --git a/core/src/main/java/com/linecorp/armeria/unsafe/package-info.java b/core/src/main/java/com/linecorp/armeria/unsafe/package-info.java index 8c426204d9a..64cb58ca5a4 100644 --- a/core/src/main/java/com/linecorp/armeria/unsafe/package-info.java +++ b/core/src/main/java/com/linecorp/armeria/unsafe/package-info.java @@ -21,9 +21,10 @@ * * @see com.linecorp.armeria.unsafe.PooledObjects */ -@NonNullByDefault +@NullMarked @UnstableApi package com.linecorp.armeria.unsafe; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/core/src/main/java12/com/linecorp/armeria/internal/common/package-info.java b/core/src/main/java12/com/linecorp/armeria/internal/common/package-info.java index 5525b71174b..7b9cd3159bf 100644 --- a/core/src/main/java12/com/linecorp/armeria/internal/common/package-info.java +++ b/core/src/main/java12/com/linecorp/armeria/internal/common/package-info.java @@ -17,7 +17,7 @@ /** * Various classes used internally for JDK 12. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.common; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/main/java9/com/linecorp/armeria/internal/common/package-info.java b/core/src/main/java9/com/linecorp/armeria/internal/common/package-info.java index e95450e9af7..a8fce9bca44 100644 --- a/core/src/main/java9/com/linecorp/armeria/internal/common/package-info.java +++ b/core/src/main/java9/com/linecorp/armeria/internal/common/package-info.java @@ -17,7 +17,7 @@ /** * Various classes used internally for JDK 9. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.common; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/core/src/test/java/com/linecorp/armeria/client/ClientRequestContextDelayedInitTest.java b/core/src/test/java/com/linecorp/armeria/client/ClientRequestContextDelayedInitTest.java index 6d9f0879022..52589563136 100644 --- a/core/src/test/java/com/linecorp/armeria/client/ClientRequestContextDelayedInitTest.java +++ b/core/src/test/java/com/linecorp/armeria/client/ClientRequestContextDelayedInitTest.java @@ -22,6 +22,7 @@ import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicInteger; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; import org.junit.jupiter.params.ParameterizedTest; @@ -40,7 +41,6 @@ import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.ServerBuilder; import com.linecorp.armeria.testing.junit5.server.ServerExtension; diff --git a/core/src/test/java/com/linecorp/armeria/client/ClientRequestContextTest.java b/core/src/test/java/com/linecorp/armeria/client/ClientRequestContextTest.java index d549701c386..1672a093558 100644 --- a/core/src/test/java/com/linecorp/armeria/client/ClientRequestContextTest.java +++ b/core/src/test/java/com/linecorp/armeria/client/ClientRequestContextTest.java @@ -21,6 +21,7 @@ import java.util.function.Function; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtensionContext; import org.junit.jupiter.params.ParameterizedTest; @@ -34,7 +35,6 @@ import com.linecorp.armeria.common.RequestContext; import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.TimeoutException; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.SafeCloseable; import com.linecorp.armeria.server.ServiceRequestContext; diff --git a/core/src/test/java/com/linecorp/armeria/client/ConnectionPoolKeepAliveTest.java b/core/src/test/java/com/linecorp/armeria/client/ConnectionPoolKeepAliveTest.java index b2fefb55ed5..e9a150df9e1 100644 --- a/core/src/test/java/com/linecorp/armeria/client/ConnectionPoolKeepAliveTest.java +++ b/core/src/test/java/com/linecorp/armeria/client/ConnectionPoolKeepAliveTest.java @@ -24,6 +24,7 @@ import java.util.Set; import java.util.concurrent.atomic.AtomicBoolean; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.extension.RegisterExtension; import org.junit.jupiter.params.ParameterizedTest; @@ -32,7 +33,6 @@ import com.linecorp.armeria.common.AggregatedHttpResponse; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.ConnectionEventListener.CloseHint; import com.linecorp.armeria.server.ServerBuilder; import com.linecorp.armeria.testing.junit5.server.ServerExtension; diff --git a/core/src/test/java/com/linecorp/armeria/client/ContextCancellationTest.java b/core/src/test/java/com/linecorp/armeria/client/ContextCancellationTest.java index 2648cd1c217..b961788e46f 100644 --- a/core/src/test/java/com/linecorp/armeria/client/ContextCancellationTest.java +++ b/core/src/test/java/com/linecorp/armeria/client/ContextCancellationTest.java @@ -30,6 +30,7 @@ import java.util.concurrent.atomic.AtomicReference; import java.util.function.Function; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.TestInfo; @@ -44,7 +45,6 @@ import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLogAccess; import com.linecorp.armeria.common.stream.SubscriptionOption; import com.linecorp.armeria.internal.testing.MockAddressResolverGroup; diff --git a/core/src/test/java/com/linecorp/armeria/client/DefaultDnsCacheTest.java b/core/src/test/java/com/linecorp/armeria/client/DefaultDnsCacheTest.java index 921ecd47db3..aeae8782071 100644 --- a/core/src/test/java/com/linecorp/armeria/client/DefaultDnsCacheTest.java +++ b/core/src/test/java/com/linecorp/armeria/client/DefaultDnsCacheTest.java @@ -28,13 +28,13 @@ import java.util.concurrent.atomic.AtomicReference; import org.hamcrest.Matchers; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; import com.google.common.base.Stopwatch; import com.google.common.collect.ImmutableList; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.client.dns.ByteArrayDnsRecord; import com.linecorp.armeria.internal.client.dns.DnsQuestionWithoutTrailingDot; diff --git a/core/src/test/java/com/linecorp/armeria/client/DefaultEventLoopSchedulerTest.java b/core/src/test/java/com/linecorp/armeria/client/DefaultEventLoopSchedulerTest.java index 5db9c933cd5..89960d5fac7 100644 --- a/core/src/test/java/com/linecorp/armeria/client/DefaultEventLoopSchedulerTest.java +++ b/core/src/test/java/com/linecorp/armeria/client/DefaultEventLoopSchedulerTest.java @@ -25,13 +25,13 @@ import java.util.Set; import java.util.concurrent.ThreadLocalRandom; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import com.google.common.collect.ImmutableList; import com.linecorp.armeria.client.endpoint.EndpointGroup; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.ReleasableHolder; import io.netty.channel.DefaultEventLoopGroup; diff --git a/core/src/test/java/com/linecorp/armeria/client/HttpClientIntegrationTest.java b/core/src/test/java/com/linecorp/armeria/client/HttpClientIntegrationTest.java index c24ae896f79..73b29f76db5 100644 --- a/core/src/test/java/com/linecorp/armeria/client/HttpClientIntegrationTest.java +++ b/core/src/test/java/com/linecorp/armeria/client/HttpClientIntegrationTest.java @@ -41,6 +41,7 @@ import org.eclipse.jetty.server.Request; import org.eclipse.jetty.server.ServerConnector; import org.eclipse.jetty.server.handler.AbstractHandler; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.BeforeEach; @@ -76,7 +77,6 @@ import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.stream.SubscriptionOption; import com.linecorp.armeria.common.util.CompletionActions; diff --git a/core/src/test/java/com/linecorp/armeria/client/HttpClientMaxConcurrentStreamTest.java b/core/src/test/java/com/linecorp/armeria/client/HttpClientMaxConcurrentStreamTest.java index c4625094b1d..66a0ab4ea00 100644 --- a/core/src/test/java/com/linecorp/armeria/client/HttpClientMaxConcurrentStreamTest.java +++ b/core/src/test/java/com/linecorp/armeria/client/HttpClientMaxConcurrentStreamTest.java @@ -31,6 +31,7 @@ import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicInteger; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; @@ -40,7 +41,6 @@ import com.linecorp.armeria.common.ClosedSessionException; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.ClientConnectionTimings; import com.linecorp.armeria.common.logging.RequestLogProperty; import com.linecorp.armeria.internal.testing.BlockingUtils; diff --git a/core/src/test/java/com/linecorp/armeria/client/InitiateConnectionShutdownTest.java b/core/src/test/java/com/linecorp/armeria/client/InitiateConnectionShutdownTest.java index 7283d0adc0c..f3a7e798684 100644 --- a/core/src/test/java/com/linecorp/armeria/client/InitiateConnectionShutdownTest.java +++ b/core/src/test/java/com/linecorp/armeria/client/InitiateConnectionShutdownTest.java @@ -23,6 +23,7 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.atomic.AtomicReference; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.extension.RegisterExtension; import org.junit.jupiter.params.ParameterizedTest; @@ -35,7 +36,6 @@ import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLogAccess; import com.linecorp.armeria.internal.client.ClientPendingThrowableUtil; import com.linecorp.armeria.server.ServerBuilder; diff --git a/core/src/test/java/com/linecorp/armeria/client/NoopDnsCache.java b/core/src/test/java/com/linecorp/armeria/client/NoopDnsCache.java index e946e192f07..35f8f7a9bd4 100644 --- a/core/src/test/java/com/linecorp/armeria/client/NoopDnsCache.java +++ b/core/src/test/java/com/linecorp/armeria/client/NoopDnsCache.java @@ -19,7 +19,7 @@ import java.net.UnknownHostException; import java.util.List; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; import io.netty.handler.codec.dns.DnsQuestion; import io.netty.handler.codec.dns.DnsRecord; diff --git a/core/src/test/java/com/linecorp/armeria/client/PendingExceptionTest.java b/core/src/test/java/com/linecorp/armeria/client/PendingExceptionTest.java index e753f6c5e32..56f7159e495 100644 --- a/core/src/test/java/com/linecorp/armeria/client/PendingExceptionTest.java +++ b/core/src/test/java/com/linecorp/armeria/client/PendingExceptionTest.java @@ -20,6 +20,7 @@ import java.util.concurrent.CompletableFuture; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.extension.RegisterExtension; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.EnumSource; @@ -28,7 +29,6 @@ import com.linecorp.armeria.common.ClosedSessionException; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLogProperty; import com.linecorp.armeria.common.stream.ClosedStreamException; import com.linecorp.armeria.internal.client.PendingExceptionUtil; diff --git a/core/src/test/java/com/linecorp/armeria/client/RedirectingClientTest.java b/core/src/test/java/com/linecorp/armeria/client/RedirectingClientTest.java index fe8ab6c86d5..ef3b8ec14fe 100644 --- a/core/src/test/java/com/linecorp/armeria/client/RedirectingClientTest.java +++ b/core/src/test/java/com/linecorp/armeria/client/RedirectingClientTest.java @@ -25,6 +25,7 @@ import java.util.concurrent.atomic.AtomicInteger; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; @@ -50,7 +51,6 @@ import com.linecorp.armeria.common.RequestTarget; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.internal.testing.MockAddressResolverGroup; import com.linecorp.armeria.server.ServerBuilder; diff --git a/core/src/test/java/com/linecorp/armeria/client/RefreshingAddressResolverTest.java b/core/src/test/java/com/linecorp/armeria/client/RefreshingAddressResolverTest.java index 9600b1748d1..d7b2d29e244 100644 --- a/core/src/test/java/com/linecorp/armeria/client/RefreshingAddressResolverTest.java +++ b/core/src/test/java/com/linecorp/armeria/client/RefreshingAddressResolverTest.java @@ -42,6 +42,7 @@ import org.assertj.core.api.AbstractIntegerAssert; import org.assertj.core.api.AbstractStringAssert; import org.hamcrest.Matchers; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; @@ -51,7 +52,6 @@ import com.linecorp.armeria.client.RefreshingAddressResolver.CacheEntry; import com.linecorp.armeria.client.endpoint.dns.TestDnsServer; import com.linecorp.armeria.client.retry.Backoff; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.prometheus.PrometheusMeterRegistries; import com.linecorp.armeria.internal.client.dns.ByteArrayDnsRecord; import com.linecorp.armeria.internal.client.dns.DnsQuestionWithoutTrailingDot; diff --git a/core/src/test/java/com/linecorp/armeria/client/endpoint/AbstractEndpointSelectorTest.java b/core/src/test/java/com/linecorp/armeria/client/endpoint/AbstractEndpointSelectorTest.java index d182839cd74..fc6e0145223 100644 --- a/core/src/test/java/com/linecorp/armeria/client/endpoint/AbstractEndpointSelectorTest.java +++ b/core/src/test/java/com/linecorp/armeria/client/endpoint/AbstractEndpointSelectorTest.java @@ -24,6 +24,7 @@ import java.util.concurrent.TimeUnit; import java.util.stream.IntStream; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import com.google.common.base.Stopwatch; @@ -36,7 +37,6 @@ import com.linecorp.armeria.common.HttpMethod; import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; class AbstractEndpointSelectorTest { diff --git a/core/src/test/java/com/linecorp/armeria/client/endpoint/dns/TestDnsServer.java b/core/src/test/java/com/linecorp/armeria/client/endpoint/dns/TestDnsServer.java index 63cda56d5ed..a06f6f46b1b 100644 --- a/core/src/test/java/com/linecorp/armeria/client/endpoint/dns/TestDnsServer.java +++ b/core/src/test/java/com/linecorp/armeria/client/endpoint/dns/TestDnsServer.java @@ -22,10 +22,11 @@ import java.util.Map; import java.util.Map.Entry; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableMap; import com.linecorp.armeria.common.CommonPools; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.TransportType; import io.netty.bootstrap.Bootstrap; diff --git a/core/src/test/java/com/linecorp/armeria/client/endpoint/dns/TestTcpDnsServer.java b/core/src/test/java/com/linecorp/armeria/client/endpoint/dns/TestTcpDnsServer.java index 24ec7d0b073..2318068b5d8 100644 --- a/core/src/test/java/com/linecorp/armeria/client/endpoint/dns/TestTcpDnsServer.java +++ b/core/src/test/java/com/linecorp/armeria/client/endpoint/dns/TestTcpDnsServer.java @@ -22,13 +22,13 @@ import java.util.Map; import java.util.Map.Entry; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.google.common.collect.ImmutableMap; import com.linecorp.armeria.common.CommonPools; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.TransportType; import io.netty.bootstrap.Bootstrap; diff --git a/core/src/test/java/com/linecorp/armeria/client/endpoint/healthcheck/HealthCheckedEndpointGroupLongPollingPingTest.java b/core/src/test/java/com/linecorp/armeria/client/endpoint/healthcheck/HealthCheckedEndpointGroupLongPollingPingTest.java index 1631a88a35b..dbfa03bc483 100644 --- a/core/src/test/java/com/linecorp/armeria/client/endpoint/healthcheck/HealthCheckedEndpointGroupLongPollingPingTest.java +++ b/core/src/test/java/com/linecorp/armeria/client/endpoint/healthcheck/HealthCheckedEndpointGroupLongPollingPingTest.java @@ -23,6 +23,7 @@ import java.util.concurrent.LinkedBlockingQueue; import java.util.concurrent.LinkedTransferQueue; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; @@ -36,7 +37,6 @@ import com.linecorp.armeria.common.HttpResponseWriter; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.logging.RequestLogAccess; import com.linecorp.armeria.server.ServerBuilder; diff --git a/core/src/test/java/com/linecorp/armeria/client/endpoint/healthcheck/HealthCheckedEndpointGroupLongPollingTest.java b/core/src/test/java/com/linecorp/armeria/client/endpoint/healthcheck/HealthCheckedEndpointGroupLongPollingTest.java index 68b45609770..258669cb044 100644 --- a/core/src/test/java/com/linecorp/armeria/client/endpoint/healthcheck/HealthCheckedEndpointGroupLongPollingTest.java +++ b/core/src/test/java/com/linecorp/armeria/client/endpoint/healthcheck/HealthCheckedEndpointGroupLongPollingTest.java @@ -24,6 +24,7 @@ import java.util.concurrent.LinkedTransferQueue; import java.util.concurrent.TimeUnit; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; @@ -36,7 +37,6 @@ import com.linecorp.armeria.client.retry.Backoff; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.internal.testing.FlakyTest; import com.linecorp.armeria.server.ServerBuilder; diff --git a/core/src/test/java/com/linecorp/armeria/client/observation/ObservationClientTest.java b/core/src/test/java/com/linecorp/armeria/client/observation/ObservationClientTest.java index 4b74171fe5f..67420378e48 100644 --- a/core/src/test/java/com/linecorp/armeria/client/observation/ObservationClientTest.java +++ b/core/src/test/java/com/linecorp/armeria/client/observation/ObservationClientTest.java @@ -32,6 +32,7 @@ import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicInteger; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.Test; @@ -52,7 +53,6 @@ import com.linecorp.armeria.common.RpcRequest; import com.linecorp.armeria.common.RpcResponse; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.util.SafeCloseable; import com.linecorp.armeria.internal.common.observation.SpanCollector; diff --git a/core/src/test/java/com/linecorp/armeria/client/proxy/IntermediaryProxyServerHandler.java b/core/src/test/java/com/linecorp/armeria/client/proxy/IntermediaryProxyServerHandler.java index bcb94b9b1ca..49d65278d35 100644 --- a/core/src/test/java/com/linecorp/armeria/client/proxy/IntermediaryProxyServerHandler.java +++ b/core/src/test/java/com/linecorp/armeria/client/proxy/IntermediaryProxyServerHandler.java @@ -21,9 +21,9 @@ import java.util.concurrent.ConcurrentLinkedDeque; import java.util.function.Consumer; -import com.google.common.collect.ImmutableMap; +import org.jspecify.annotations.Nullable; -import com.linecorp.armeria.common.annotation.Nullable; +import com.google.common.collect.ImmutableMap; import io.netty.bootstrap.Bootstrap; import io.netty.buffer.ByteBuf; diff --git a/core/src/test/java/com/linecorp/armeria/client/proxy/ProxyClientIntegrationTest.java b/core/src/test/java/com/linecorp/armeria/client/proxy/ProxyClientIntegrationTest.java index 457020f1205..70068798b4f 100644 --- a/core/src/test/java/com/linecorp/armeria/client/proxy/ProxyClientIntegrationTest.java +++ b/core/src/test/java/com/linecorp/armeria/client/proxy/ProxyClientIntegrationTest.java @@ -43,6 +43,7 @@ import java.util.function.Consumer; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Order; @@ -70,7 +71,6 @@ import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.SessionProtocol; import com.linecorp.armeria.common.TlsProvider; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.testing.BlockingUtils; import com.linecorp.armeria.internal.testing.NettyServerExtension; import com.linecorp.armeria.internal.testing.SimpleChannelHandlerFactory; diff --git a/core/src/test/java/com/linecorp/armeria/client/retry/RetryingClientTest.java b/core/src/test/java/com/linecorp/armeria/client/retry/RetryingClientTest.java index c68446ad7e3..0a66e2f1f4e 100644 --- a/core/src/test/java/com/linecorp/armeria/client/retry/RetryingClientTest.java +++ b/core/src/test/java/com/linecorp/armeria/client/retry/RetryingClientTest.java @@ -38,6 +38,7 @@ import java.util.function.Function; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.BeforeEach; @@ -72,7 +73,6 @@ import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.stream.AbortedStreamException; import com.linecorp.armeria.common.util.UnmodifiableFuture; diff --git a/core/src/test/java/com/linecorp/armeria/client/websocket/WebSocketClientHandshakeTest.java b/core/src/test/java/com/linecorp/armeria/client/websocket/WebSocketClientHandshakeTest.java index b45f1c23de2..b0c63ed34ee 100644 --- a/core/src/test/java/com/linecorp/armeria/client/websocket/WebSocketClientHandshakeTest.java +++ b/core/src/test/java/com/linecorp/armeria/client/websocket/WebSocketClientHandshakeTest.java @@ -18,6 +18,7 @@ import static org.assertj.core.api.Assertions.assertThat; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.extension.RegisterExtension; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.CsvSource; @@ -26,7 +27,6 @@ import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.SerializationFormat; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.websocket.WebSocket; import com.linecorp.armeria.common.websocket.WebSocketWriter; import com.linecorp.armeria.server.ServerBuilder; diff --git a/core/src/test/java/com/linecorp/armeria/common/DefaultSplitHttpRequestTest.java b/core/src/test/java/com/linecorp/armeria/common/DefaultSplitHttpRequestTest.java index ea16f7ad17c..76425987ed9 100644 --- a/core/src/test/java/com/linecorp/armeria/common/DefaultSplitHttpRequestTest.java +++ b/core/src/test/java/com/linecorp/armeria/common/DefaultSplitHttpRequestTest.java @@ -23,11 +23,11 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.atomic.AtomicReference; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.AbortedStreamException; import com.linecorp.armeria.common.stream.CancelledSubscriptionException; import com.linecorp.armeria.common.stream.StreamMessage; diff --git a/core/src/test/java/com/linecorp/armeria/common/DefaultSplitHttpResponseTest.java b/core/src/test/java/com/linecorp/armeria/common/DefaultSplitHttpResponseTest.java index fd9dfae8321..7b88fa99959 100644 --- a/core/src/test/java/com/linecorp/armeria/common/DefaultSplitHttpResponseTest.java +++ b/core/src/test/java/com/linecorp/armeria/common/DefaultSplitHttpResponseTest.java @@ -26,6 +26,7 @@ import java.util.concurrent.atomic.AtomicBoolean; import java.util.concurrent.atomic.AtomicReference; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; import org.reactivestreams.Subscriber; @@ -35,7 +36,6 @@ import com.linecorp.armeria.client.ResponseTimeoutException; import com.linecorp.armeria.client.WebClient; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.AbortedStreamException; import com.linecorp.armeria.common.stream.CancelledSubscriptionException; import com.linecorp.armeria.common.stream.StreamMessage; diff --git a/core/src/test/java/com/linecorp/armeria/common/DependencyInjectorTest.java b/core/src/test/java/com/linecorp/armeria/common/DependencyInjectorTest.java index 707d5d91bf5..b032ff4e39f 100644 --- a/core/src/test/java/com/linecorp/armeria/common/DependencyInjectorTest.java +++ b/core/src/test/java/com/linecorp/armeria/common/DependencyInjectorTest.java @@ -27,10 +27,10 @@ import java.util.function.Function; import org.eclipse.jetty.util.BlockingArrayQueue; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.testing.AnticipatedException; import com.linecorp.armeria.server.DecoratingHttpServiceFunction; import com.linecorp.armeria.server.HttpService; diff --git a/core/src/test/java/com/linecorp/armeria/common/HttpRequestBuilderTest.java b/core/src/test/java/com/linecorp/armeria/common/HttpRequestBuilderTest.java index af520b110cd..ce0fcb64aaf 100644 --- a/core/src/test/java/com/linecorp/armeria/common/HttpRequestBuilderTest.java +++ b/core/src/test/java/com/linecorp/armeria/common/HttpRequestBuilderTest.java @@ -25,6 +25,7 @@ import java.util.List; import java.util.Map.Entry; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.CsvSource; @@ -34,7 +35,6 @@ import com.linecorp.armeria.common.FixedHttpRequest.EmptyFixedHttpRequest; import com.linecorp.armeria.common.FixedHttpRequest.OneElementFixedHttpRequest; import com.linecorp.armeria.common.FixedHttpRequest.TwoElementFixedHttpRequest; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.StreamMessage; import io.netty.util.AsciiString; diff --git a/core/src/test/java/com/linecorp/armeria/common/RequestContextTest.java b/core/src/test/java/com/linecorp/armeria/common/RequestContextTest.java index b8f3c9bfcf7..7418c78919a 100644 --- a/core/src/test/java/com/linecorp/armeria/common/RequestContextTest.java +++ b/core/src/test/java/com/linecorp/armeria/common/RequestContextTest.java @@ -38,13 +38,13 @@ import java.util.stream.Collectors; import java.util.stream.IntStream; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.google.common.util.concurrent.MoreExecutors; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.SafeCloseable; import com.linecorp.armeria.server.ServiceRequestContext; diff --git a/core/src/test/java/com/linecorp/armeria/common/logging/BeanFieldMaskerSelectorTest.java b/core/src/test/java/com/linecorp/armeria/common/logging/BeanFieldMaskerSelectorTest.java index e9cadee2f88..afe390550fc 100644 --- a/core/src/test/java/com/linecorp/armeria/common/logging/BeanFieldMaskerSelectorTest.java +++ b/core/src/test/java/com/linecorp/armeria/common/logging/BeanFieldMaskerSelectorTest.java @@ -25,6 +25,7 @@ import java.util.Map; import java.util.Set; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import com.fasterxml.jackson.databind.JsonMappingException; @@ -34,7 +35,6 @@ import com.linecorp.armeria.common.HttpMethod; import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.MaskingStructs.Parent.SimpleFoo; class BeanFieldMaskerSelectorTest { diff --git a/core/src/test/java/com/linecorp/armeria/common/logging/ContentPreviewerTest.java b/core/src/test/java/com/linecorp/armeria/common/logging/ContentPreviewerTest.java index cc2303415ea..eb3a3459fca 100644 --- a/core/src/test/java/com/linecorp/armeria/common/logging/ContentPreviewerTest.java +++ b/core/src/test/java/com/linecorp/armeria/common/logging/ContentPreviewerTest.java @@ -22,6 +22,7 @@ import java.nio.charset.StandardCharsets; import java.util.concurrent.CompletableFuture; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; @@ -42,7 +43,6 @@ import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.MediaTypeSet; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.ServerBuilder; import com.linecorp.armeria.server.annotation.Get; import com.linecorp.armeria.server.annotation.Post; diff --git a/core/src/test/java/com/linecorp/armeria/common/logging/JsonLogFormatterTest.java b/core/src/test/java/com/linecorp/armeria/common/logging/JsonLogFormatterTest.java index 41a31695f22..da9bc7d6e5f 100644 --- a/core/src/test/java/com/linecorp/armeria/common/logging/JsonLogFormatterTest.java +++ b/core/src/test/java/com/linecorp/armeria/common/logging/JsonLogFormatterTest.java @@ -23,6 +23,7 @@ import java.util.regex.Pattern; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.Arguments; @@ -42,7 +43,6 @@ import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.RequestId; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.ServiceRequestContext; class JsonLogFormatterTest { diff --git a/core/src/test/java/com/linecorp/armeria/common/logging/LoggingDecoratorBuilderTest.java b/core/src/test/java/com/linecorp/armeria/common/logging/LoggingDecoratorBuilderTest.java index bb7e733e505..95e2d2844c4 100644 --- a/core/src/test/java/com/linecorp/armeria/common/logging/LoggingDecoratorBuilderTest.java +++ b/core/src/test/java/com/linecorp/armeria/common/logging/LoggingDecoratorBuilderTest.java @@ -27,6 +27,7 @@ import java.util.function.BiFunction; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.params.ParameterizedTest; @@ -42,7 +43,6 @@ import com.linecorp.armeria.common.HttpStatusClass; import com.linecorp.armeria.common.RequestContext; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.testing.AnticipatedException; import com.linecorp.armeria.server.ServiceRequestContext; diff --git a/core/src/test/java/com/linecorp/armeria/common/logging/TextLogFormatterTest.java b/core/src/test/java/com/linecorp/armeria/common/logging/TextLogFormatterTest.java index cd01a6062cd..65c2bdb43c2 100644 --- a/core/src/test/java/com/linecorp/armeria/common/logging/TextLogFormatterTest.java +++ b/core/src/test/java/com/linecorp/armeria/common/logging/TextLogFormatterTest.java @@ -22,6 +22,7 @@ import java.util.regex.Pattern; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.Arguments; @@ -39,7 +40,6 @@ import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.RequestId; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.TextFormatter; import com.linecorp.armeria.server.ServiceRequestContext; diff --git a/core/src/test/java/com/linecorp/armeria/common/logging/masker/it/BeanContentSanitizerITTest.java b/core/src/test/java/com/linecorp/armeria/common/logging/masker/it/BeanContentSanitizerITTest.java index d7d5804baeb..4d96beb7052 100644 --- a/core/src/test/java/com/linecorp/armeria/common/logging/masker/it/BeanContentSanitizerITTest.java +++ b/core/src/test/java/com/linecorp/armeria/common/logging/masker/it/BeanContentSanitizerITTest.java @@ -31,6 +31,7 @@ import org.hamcrest.core.StringContains; import org.hamcrest.core.StringEndsWith; import org.hamcrest.core.StringStartsWith; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; @@ -46,7 +47,6 @@ import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.ResponseEntity; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.ContentSanitizer; import com.linecorp.armeria.common.logging.FieldMasker; import com.linecorp.armeria.common.logging.FieldMaskerSelector; diff --git a/core/src/test/java/com/linecorp/armeria/common/metric/MeterIdPrefixFunctionTest.java b/core/src/test/java/com/linecorp/armeria/common/metric/MeterIdPrefixFunctionTest.java index 96ec3f8c47d..2db444f13b2 100644 --- a/core/src/test/java/com/linecorp/armeria/common/metric/MeterIdPrefixFunctionTest.java +++ b/core/src/test/java/com/linecorp/armeria/common/metric/MeterIdPrefixFunctionTest.java @@ -18,6 +18,7 @@ import static org.assertj.core.api.Assertions.assertThat; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Nested; import org.junit.jupiter.api.Test; @@ -28,7 +29,6 @@ import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.RpcRequest; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.logging.RequestOnlyLog; import com.linecorp.armeria.common.prometheus.PrometheusMeterRegistries; diff --git a/core/src/test/java/com/linecorp/armeria/common/multipart/MultipartDecoderTckTest.java b/core/src/test/java/com/linecorp/armeria/common/multipart/MultipartDecoderTckTest.java index 52226fbfd4d..fc0450f761b 100644 --- a/core/src/test/java/com/linecorp/armeria/common/multipart/MultipartDecoderTckTest.java +++ b/core/src/test/java/com/linecorp/armeria/common/multipart/MultipartDecoderTckTest.java @@ -17,11 +17,11 @@ import java.util.stream.LongStream; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; import org.testng.annotations.Test; import com.linecorp.armeria.common.HttpData; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.StreamMessage; import com.linecorp.armeria.common.stream.StreamMessageVerification; diff --git a/core/src/test/java/com/linecorp/armeria/common/multipart/MultipartDecoderTest.java b/core/src/test/java/com/linecorp/armeria/common/multipart/MultipartDecoderTest.java index 5f92d59a7b4..3fc96746621 100644 --- a/core/src/test/java/com/linecorp/armeria/common/multipart/MultipartDecoderTest.java +++ b/core/src/test/java/com/linecorp/armeria/common/multipart/MultipartDecoderTest.java @@ -43,6 +43,7 @@ import java.util.concurrent.atomic.AtomicReference; import java.util.function.BiConsumer; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.EnumSource; @@ -53,7 +54,6 @@ import com.google.common.collect.ImmutableList; import com.linecorp.armeria.common.HttpData; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.multipart.MultipartEncoderTest.HttpDataAggregator; import com.linecorp.armeria.common.stream.AbortedStreamException; import com.linecorp.armeria.common.stream.CancelledSubscriptionException; diff --git a/core/src/test/java/com/linecorp/armeria/common/multipart/MultipartIntegrationTest.java b/core/src/test/java/com/linecorp/armeria/common/multipart/MultipartIntegrationTest.java index 4504b5fbd12..49b34fee4c6 100644 --- a/core/src/test/java/com/linecorp/armeria/common/multipart/MultipartIntegrationTest.java +++ b/core/src/test/java/com/linecorp/armeria/common/multipart/MultipartIntegrationTest.java @@ -22,6 +22,7 @@ import java.util.concurrent.atomic.AtomicBoolean; import java.util.concurrent.atomic.AtomicInteger; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; import org.junit.jupiter.params.ParameterizedTest; @@ -44,7 +45,6 @@ import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.SplitHttpResponse; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.ByteStreamMessage; import com.linecorp.armeria.common.stream.SubscriptionOption; import com.linecorp.armeria.server.ServerBuilder; diff --git a/core/src/test/java/com/linecorp/armeria/common/stream/AbortableSubscriberBlackboxTckTest.java b/core/src/test/java/com/linecorp/armeria/common/stream/AbortableSubscriberBlackboxTckTest.java index 3e257a114f1..043fc765fd4 100644 --- a/core/src/test/java/com/linecorp/armeria/common/stream/AbortableSubscriberBlackboxTckTest.java +++ b/core/src/test/java/com/linecorp/armeria/common/stream/AbortableSubscriberBlackboxTckTest.java @@ -18,13 +18,13 @@ import java.util.stream.LongStream; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; import org.reactivestreams.Subscriber; import org.reactivestreams.tck.SubscriberBlackboxVerification; import org.reactivestreams.tck.TestEnvironment; import org.testng.annotations.Test; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.PublisherBasedStreamMessage.AbortableSubscriber; import io.netty.util.concurrent.ImmediateEventExecutor; diff --git a/core/src/test/java/com/linecorp/armeria/common/stream/DefaultByteStreamMessageTest.java b/core/src/test/java/com/linecorp/armeria/common/stream/DefaultByteStreamMessageTest.java index f53e3ebbd6e..e8b8dc46aa8 100644 --- a/core/src/test/java/com/linecorp/armeria/common/stream/DefaultByteStreamMessageTest.java +++ b/core/src/test/java/com/linecorp/armeria/common/stream/DefaultByteStreamMessageTest.java @@ -26,6 +26,7 @@ import java.util.concurrent.atomic.AtomicReference; import java.util.stream.IntStream; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; @@ -34,7 +35,6 @@ import com.linecorp.armeria.common.CommonPools; import com.linecorp.armeria.common.HttpData; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.EventLoopGroups; import com.linecorp.armeria.internal.testing.AnticipatedException; diff --git a/core/src/test/java/com/linecorp/armeria/common/stream/DeferredStreamMessageTest.java b/core/src/test/java/com/linecorp/armeria/common/stream/DeferredStreamMessageTest.java index 74cf5496b9a..20f8c991bd9 100644 --- a/core/src/test/java/com/linecorp/armeria/common/stream/DeferredStreamMessageTest.java +++ b/core/src/test/java/com/linecorp/armeria/common/stream/DeferredStreamMessageTest.java @@ -30,13 +30,13 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.ExecutionException; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.ArgumentsSource; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.internal.testing.AnticipatedException; diff --git a/core/src/test/java/com/linecorp/armeria/common/stream/FilteredStreamMessageTest.java b/core/src/test/java/com/linecorp/armeria/common/stream/FilteredStreamMessageTest.java index f00e8c01946..b277e09ad8b 100644 --- a/core/src/test/java/com/linecorp/armeria/common/stream/FilteredStreamMessageTest.java +++ b/core/src/test/java/com/linecorp/armeria/common/stream/FilteredStreamMessageTest.java @@ -27,6 +27,7 @@ import java.util.stream.Stream; import org.hamcrest.Matchers; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtensionContext; import org.junit.jupiter.api.extension.RegisterExtension; @@ -38,7 +39,6 @@ import org.reactivestreams.Subscription; import com.linecorp.armeria.common.HttpData; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.testing.junit5.common.EventLoopExtension; import io.netty.buffer.ByteBuf; diff --git a/core/src/test/java/com/linecorp/armeria/common/stream/PublisherBasedStreamMessageTest.java b/core/src/test/java/com/linecorp/armeria/common/stream/PublisherBasedStreamMessageTest.java index d0565ce9244..693f85278b2 100644 --- a/core/src/test/java/com/linecorp/armeria/common/stream/PublisherBasedStreamMessageTest.java +++ b/core/src/test/java/com/linecorp/armeria/common/stream/PublisherBasedStreamMessageTest.java @@ -27,6 +27,7 @@ import static org.mockito.Mockito.timeout; import static org.mockito.Mockito.verify; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.ArgumentsSource; @@ -37,7 +38,6 @@ import org.reactivestreams.Subscription; import com.linecorp.armeria.common.HttpData; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.PublisherBasedStreamMessage.AbortableSubscriber; import io.netty.buffer.ByteBuf; diff --git a/core/src/test/java/com/linecorp/armeria/common/stream/StreamMessageDuplicatorTest.java b/core/src/test/java/com/linecorp/armeria/common/stream/StreamMessageDuplicatorTest.java index 9e4850b20f8..45af166fb96 100644 --- a/core/src/test/java/com/linecorp/armeria/common/stream/StreamMessageDuplicatorTest.java +++ b/core/src/test/java/com/linecorp/armeria/common/stream/StreamMessageDuplicatorTest.java @@ -37,6 +37,7 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.atomic.AtomicBoolean; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.Test; import org.mockito.ArgumentCaptor; @@ -46,7 +47,6 @@ import com.google.common.base.Charsets; import com.linecorp.armeria.common.HttpData; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.DefaultStreamMessageDuplicator.DownstreamSubscription; import com.linecorp.armeria.common.stream.DefaultStreamMessageDuplicator.SignalQueue; import com.linecorp.armeria.common.stream.DefaultStreamMessageDuplicator.StreamMessageProcessor; diff --git a/core/src/test/java/com/linecorp/armeria/common/stream/StreamMessageFilterVerification.java b/core/src/test/java/com/linecorp/armeria/common/stream/StreamMessageFilterVerification.java index 8a221923575..96e349e579c 100644 --- a/core/src/test/java/com/linecorp/armeria/common/stream/StreamMessageFilterVerification.java +++ b/core/src/test/java/com/linecorp/armeria/common/stream/StreamMessageFilterVerification.java @@ -18,7 +18,7 @@ import java.util.function.Predicate; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; public class StreamMessageFilterVerification extends DefaultStreamMessageVerification { diff --git a/core/src/test/java/com/linecorp/armeria/common/stream/StreamMessageVerification.java b/core/src/test/java/com/linecorp/armeria/common/stream/StreamMessageVerification.java index da621ac7676..2dc9893d23e 100644 --- a/core/src/test/java/com/linecorp/armeria/common/stream/StreamMessageVerification.java +++ b/core/src/test/java/com/linecorp/armeria/common/stream/StreamMessageVerification.java @@ -24,6 +24,7 @@ import java.util.concurrent.CompletionException; import java.util.concurrent.atomic.AtomicReference; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; import org.reactivestreams.Subscription; import org.reactivestreams.tck.PublisherVerification; @@ -35,7 +36,6 @@ import org.testng.annotations.Test; import com.linecorp.armeria.common.SplitHttpResponse; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.stream.FixedStreamMessage; public abstract class StreamMessageVerification extends PublisherVerification { diff --git a/core/src/test/java/com/linecorp/armeria/common/stream/SubscriptionOptionTest.java b/core/src/test/java/com/linecorp/armeria/common/stream/SubscriptionOptionTest.java index 39092e02173..39b83e83144 100644 --- a/core/src/test/java/com/linecorp/armeria/common/stream/SubscriptionOptionTest.java +++ b/core/src/test/java/com/linecorp/armeria/common/stream/SubscriptionOptionTest.java @@ -25,6 +25,7 @@ import java.util.concurrent.atomic.AtomicBoolean; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.extension.ExtensionContext; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.Arguments; @@ -34,7 +35,6 @@ import org.reactivestreams.Subscription; import com.linecorp.armeria.common.HttpData; -import com.linecorp.armeria.common.annotation.Nullable; import io.netty.buffer.ByteBuf; import reactor.core.publisher.Mono; diff --git a/core/src/test/java/com/linecorp/armeria/common/stream/TwoElementFixedStreamMessageTest.java b/core/src/test/java/com/linecorp/armeria/common/stream/TwoElementFixedStreamMessageTest.java index ee7d81a12ee..a5e44228a7d 100644 --- a/core/src/test/java/com/linecorp/armeria/common/stream/TwoElementFixedStreamMessageTest.java +++ b/core/src/test/java/com/linecorp/armeria/common/stream/TwoElementFixedStreamMessageTest.java @@ -18,12 +18,12 @@ import static org.assertj.core.api.Assertions.assertThat; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; import com.linecorp.armeria.common.HttpData; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.EventLoopGroups; import com.linecorp.armeria.internal.common.stream.TwoElementFixedStreamMessage; diff --git a/core/src/test/java/com/linecorp/armeria/common/util/StartStopSupportTest.java b/core/src/test/java/com/linecorp/armeria/common/util/StartStopSupportTest.java index 91813c5dc7c..05dc1e7cd00 100644 --- a/core/src/test/java/com/linecorp/armeria/common/util/StartStopSupportTest.java +++ b/core/src/test/java/com/linecorp/armeria/common/util/StartStopSupportTest.java @@ -43,12 +43,12 @@ import java.util.concurrent.atomic.AtomicLong; import org.assertj.core.api.ThrowableAssert.ThrowingCallable; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; import com.google.common.base.Stopwatch; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.testing.AnticipatedException; import com.linecorp.armeria.testing.junit5.common.EventLoopExtension; diff --git a/core/src/test/java/com/linecorp/armeria/internal/client/AbstractAsyncSelectorTest.java b/core/src/test/java/com/linecorp/armeria/internal/client/AbstractAsyncSelectorTest.java index 2918030e52e..0f6c7ad7425 100644 --- a/core/src/test/java/com/linecorp/armeria/internal/client/AbstractAsyncSelectorTest.java +++ b/core/src/test/java/com/linecorp/armeria/internal/client/AbstractAsyncSelectorTest.java @@ -23,6 +23,7 @@ import java.util.concurrent.Future; import java.util.concurrent.TimeUnit; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import com.google.common.collect.ImmutableList; @@ -33,7 +34,6 @@ import com.linecorp.armeria.common.CommonPools; import com.linecorp.armeria.common.HttpMethod; import com.linecorp.armeria.common.HttpRequest; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.client.AbstractAsyncSelector.ListeningFuture; class AbstractAsyncSelectorTest { diff --git a/core/src/test/java/com/linecorp/armeria/internal/common/DefaultRequestTargetTest.java b/core/src/test/java/com/linecorp/armeria/internal/common/DefaultRequestTargetTest.java index 62251179c7e..255f589b768 100644 --- a/core/src/test/java/com/linecorp/armeria/internal/common/DefaultRequestTargetTest.java +++ b/core/src/test/java/com/linecorp/armeria/internal/common/DefaultRequestTargetTest.java @@ -24,6 +24,7 @@ import java.util.Set; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.CsvSource; @@ -38,7 +39,6 @@ import com.linecorp.armeria.common.QueryParams; import com.linecorp.armeria.common.RequestTarget; -import com.linecorp.armeria.common.annotation.Nullable; class DefaultRequestTargetTest { diff --git a/core/src/test/java/com/linecorp/armeria/internal/common/stream/AbstractFixedStreamMessageTest.java b/core/src/test/java/com/linecorp/armeria/internal/common/stream/AbstractFixedStreamMessageTest.java index 6abfdec56a3..d6c9c2f966e 100644 --- a/core/src/test/java/com/linecorp/armeria/internal/common/stream/AbstractFixedStreamMessageTest.java +++ b/core/src/test/java/com/linecorp/armeria/internal/common/stream/AbstractFixedStreamMessageTest.java @@ -23,13 +23,12 @@ import java.util.concurrent.atomic.AtomicBoolean; import java.util.concurrent.atomic.AtomicInteger; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.CsvSource; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; -import com.linecorp.armeria.common.annotation.Nullable; - import io.netty.util.concurrent.ImmediateEventExecutor; class AbstractFixedStreamMessageTest { diff --git a/core/src/test/java/com/linecorp/armeria/internal/common/stream/RecoverableStreamMessageTest.java b/core/src/test/java/com/linecorp/armeria/internal/common/stream/RecoverableStreamMessageTest.java index 21589e5e59f..09ec2895bdf 100644 --- a/core/src/test/java/com/linecorp/armeria/internal/common/stream/RecoverableStreamMessageTest.java +++ b/core/src/test/java/com/linecorp/armeria/internal/common/stream/RecoverableStreamMessageTest.java @@ -26,6 +26,7 @@ import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicReference; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.CsvSource; @@ -39,7 +40,6 @@ import com.linecorp.armeria.common.HttpResponseWriter; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.AbortedStreamException; import com.linecorp.armeria.common.stream.CancelledSubscriptionException; import com.linecorp.armeria.common.stream.ClosedStreamException; diff --git a/core/src/test/java/com/linecorp/armeria/internal/common/stream/SurroundingPublisherTckTest.java b/core/src/test/java/com/linecorp/armeria/internal/common/stream/SurroundingPublisherTckTest.java index b250cf7ffee..d2715324c9b 100644 --- a/core/src/test/java/com/linecorp/armeria/internal/common/stream/SurroundingPublisherTckTest.java +++ b/core/src/test/java/com/linecorp/armeria/internal/common/stream/SurroundingPublisherTckTest.java @@ -19,6 +19,7 @@ import java.util.concurrent.atomic.AtomicLong; import java.util.stream.LongStream; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscription; import org.reactivestreams.tck.TestEnvironment; import org.reactivestreams.tck.flow.support.PublisherVerificationRules; @@ -27,7 +28,6 @@ import com.google.common.math.LongMath; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.StreamMessage; import com.linecorp.armeria.common.stream.StreamMessageVerification; diff --git a/core/src/test/java/com/linecorp/armeria/internal/common/util/KeyStoreUtilTest.java b/core/src/test/java/com/linecorp/armeria/internal/common/util/KeyStoreUtilTest.java index 0f4d44f9d81..7ba67245aab 100644 --- a/core/src/test/java/com/linecorp/armeria/internal/common/util/KeyStoreUtilTest.java +++ b/core/src/test/java/com/linecorp/armeria/internal/common/util/KeyStoreUtilTest.java @@ -21,12 +21,12 @@ import java.io.File; import java.net.URL; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.CsvSource; import com.linecorp.armeria.common.TlsKeyPair; -import com.linecorp.armeria.common.annotation.Nullable; class KeyStoreUtilTest { // The key store files used in this test case were generated with the following commands: diff --git a/core/src/test/java/com/linecorp/armeria/internal/common/util/SslContextUtilTest.java b/core/src/test/java/com/linecorp/armeria/internal/common/util/SslContextUtilTest.java index d3d6c6faa9c..57a4e1edc30 100644 --- a/core/src/test/java/com/linecorp/armeria/internal/common/util/SslContextUtilTest.java +++ b/core/src/test/java/com/linecorp/armeria/internal/common/util/SslContextUtilTest.java @@ -24,6 +24,7 @@ import javax.net.ssl.SSLException; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import com.google.common.collect.ImmutableList; @@ -31,7 +32,6 @@ import com.linecorp.armeria.client.ClientFactory; import com.linecorp.armeria.client.ClientTlsSpec; import com.linecorp.armeria.common.Flags; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.common.util.SystemInfo; diff --git a/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedBeanFactoryRegistryTest.java b/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedBeanFactoryRegistryTest.java index 46bff45a66f..ee67371dd02 100644 --- a/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedBeanFactoryRegistryTest.java +++ b/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedBeanFactoryRegistryTest.java @@ -23,6 +23,7 @@ import java.util.List; import java.util.Set; +import org.jspecify.annotations.Nullable; import org.junit.Test; import com.google.common.collect.ImmutableList; @@ -30,7 +31,6 @@ import com.linecorp.armeria.common.DependencyInjector; import com.linecorp.armeria.common.HttpRequest; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.server.annotation.AnnotatedBeanFactoryRegistry.BeanFactoryId; import com.linecorp.armeria.internal.server.annotation.AnnotatedValueResolver.RequestObjectResolver; import com.linecorp.armeria.server.annotation.Header; diff --git a/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedDocServicePluginTest.java b/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedDocServicePluginTest.java index 835e4a0cd51..97097341f47 100644 --- a/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedDocServicePluginTest.java +++ b/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedDocServicePluginTest.java @@ -41,6 +41,7 @@ import java.util.function.BiFunction; import java.util.function.Function; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import com.fasterxml.jackson.annotation.JsonProperty; @@ -50,7 +51,6 @@ import com.linecorp.armeria.common.HttpMethod; import com.linecorp.armeria.common.MediaType; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.Route; import com.linecorp.armeria.server.RouteBuilder; import com.linecorp.armeria.server.Server; diff --git a/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceAnnotationAliasTest.java b/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceAnnotationAliasTest.java index c9df07a584e..a7a5a4eb78d 100644 --- a/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceAnnotationAliasTest.java +++ b/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceAnnotationAliasTest.java @@ -22,6 +22,7 @@ import java.lang.reflect.ParameterizedType; import java.util.function.Function; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; @@ -39,7 +40,6 @@ import com.linecorp.armeria.common.MediaTypeNames; import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.LogLevel; import com.linecorp.armeria.server.DecoratingHttpServiceFunction; import com.linecorp.armeria.server.HttpService; diff --git a/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceContentTest.java b/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceContentTest.java index 74a2770090a..61dcc770640 100644 --- a/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceContentTest.java +++ b/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceContentTest.java @@ -21,6 +21,7 @@ import java.io.File; import java.nio.file.Path; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; @@ -34,7 +35,6 @@ import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseEntity; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.multipart.BodyPart; import com.linecorp.armeria.common.multipart.Multipart; import com.linecorp.armeria.common.multipart.MultipartFile; diff --git a/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceExceptionHandlerTest.java b/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceExceptionHandlerTest.java index 557a9587bef..3aac6f64494 100644 --- a/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceExceptionHandlerTest.java +++ b/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceExceptionHandlerTest.java @@ -27,6 +27,7 @@ import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicReference; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; @@ -44,7 +45,6 @@ import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.ClosedStreamException; import com.linecorp.armeria.internal.server.annotation.AnnotatedServiceExceptionHandlerTest.CompositeRequest.SimpleRequest; import com.linecorp.armeria.internal.testing.AnticipatedException; diff --git a/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceHandlersOrderTest.java b/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceHandlersOrderTest.java index 1e7ab7783ae..69668760a66 100644 --- a/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceHandlersOrderTest.java +++ b/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceHandlersOrderTest.java @@ -21,6 +21,7 @@ import java.lang.reflect.ParameterizedType; import java.util.concurrent.atomic.AtomicInteger; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; @@ -38,7 +39,6 @@ import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.HttpResponseException; import com.linecorp.armeria.server.ServerBuilder; import com.linecorp.armeria.server.ServiceRequestContext; diff --git a/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceNullableParamTest.java b/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceNullableParamTest.java index 5e1a019242f..cece9d1c23b 100644 --- a/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceNullableParamTest.java +++ b/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceNullableParamTest.java @@ -20,6 +20,7 @@ import java.util.Optional; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.extension.RegisterExtension; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.CsvSource; @@ -27,7 +28,6 @@ import com.linecorp.armeria.client.BlockingWebClient; import com.linecorp.armeria.common.HttpMethod; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.ServerBuilder; import com.linecorp.armeria.server.annotation.Default; import com.linecorp.armeria.server.annotation.Get; diff --git a/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceRequestConverterTest.java b/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceRequestConverterTest.java index 73d18e17ce1..a0873f4932d 100644 --- a/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceRequestConverterTest.java +++ b/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceRequestConverterTest.java @@ -39,6 +39,7 @@ import java.util.Optional; import java.util.UUID; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; @@ -62,7 +63,6 @@ import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.QueryParams; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.server.annotation.AnnotatedServiceRequestConverterTest.MyService3.CompositeRequestBean1; import com.linecorp.armeria.internal.server.annotation.AnnotatedServiceRequestConverterTest.MyService3.CompositeRequestBean2; import com.linecorp.armeria.internal.server.annotation.AnnotatedServiceRequestConverterTest.MyService3.CompositeRequestBean3; diff --git a/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceRequestLogNameTest.java b/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceRequestLogNameTest.java index 50c19aeeb78..bfc6e529bb6 100644 --- a/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceRequestLogNameTest.java +++ b/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceRequestLogNameTest.java @@ -20,6 +20,7 @@ import java.util.concurrent.BlockingQueue; import java.util.concurrent.LinkedTransferQueue; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; @@ -28,7 +29,6 @@ import com.linecorp.armeria.common.AggregatedHttpResponse; import com.linecorp.armeria.common.HttpMethod; import com.linecorp.armeria.common.HttpStatus; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.logging.RequestLogAccess; import com.linecorp.armeria.server.HttpStatusException; diff --git a/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceTest.java b/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceTest.java index 7f4de00d2f3..4fab3687026 100644 --- a/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceTest.java +++ b/core/src/test/java/com/linecorp/armeria/internal/server/annotation/AnnotatedServiceTest.java @@ -46,6 +46,7 @@ import org.apache.hc.core5.http.ParseException; import org.apache.hc.core5.http.io.entity.EntityUtils; import org.apache.hc.core5.http.message.BasicNameValuePair; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; import org.junit.jupiter.params.ParameterizedTest; @@ -72,7 +73,6 @@ import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.ResponseEntity; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.UnmodifiableFuture; import com.linecorp.armeria.internal.testing.AnticipatedException; import com.linecorp.armeria.internal.testing.GenerateNativeImageTrace; diff --git a/core/src/test/java/com/linecorp/armeria/internal/server/annotation/CompositeResponseConverterFunctionTest.java b/core/src/test/java/com/linecorp/armeria/internal/server/annotation/CompositeResponseConverterFunctionTest.java index 5dfd7671312..c7dfc148e6a 100644 --- a/core/src/test/java/com/linecorp/armeria/internal/server/annotation/CompositeResponseConverterFunctionTest.java +++ b/core/src/test/java/com/linecorp/armeria/internal/server/annotation/CompositeResponseConverterFunctionTest.java @@ -20,6 +20,7 @@ import java.lang.reflect.Type; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import com.google.common.collect.ImmutableList; @@ -28,7 +29,6 @@ import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.ServiceRequestContext; import com.linecorp.armeria.server.annotation.ResponseConverterFunction; diff --git a/core/src/test/java/com/linecorp/armeria/internal/server/annotation/DefaultDescriptiveTypeInfoProviderTest.java b/core/src/test/java/com/linecorp/armeria/internal/server/annotation/DefaultDescriptiveTypeInfoProviderTest.java index 2799650b723..72cc4edbecb 100644 --- a/core/src/test/java/com/linecorp/armeria/internal/server/annotation/DefaultDescriptiveTypeInfoProviderTest.java +++ b/core/src/test/java/com/linecorp/armeria/internal/server/annotation/DefaultDescriptiveTypeInfoProviderTest.java @@ -28,6 +28,7 @@ import java.util.concurrent.CompletableFuture; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtensionContext; import org.junit.jupiter.api.extension.RegisterExtension; @@ -46,7 +47,6 @@ import com.linecorp.armeria.client.BlockingWebClient; import com.linecorp.armeria.common.HttpResponse; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.UnmodifiableFuture; import com.linecorp.armeria.server.ServerBuilder; import com.linecorp.armeria.server.annotation.ConsumesJson; diff --git a/core/src/test/java/com/linecorp/armeria/internal/server/annotation/ResponseConverterFunctionUtilTest.java b/core/src/test/java/com/linecorp/armeria/internal/server/annotation/ResponseConverterFunctionUtilTest.java index f83da94a3b6..9e380b61db5 100644 --- a/core/src/test/java/com/linecorp/armeria/internal/server/annotation/ResponseConverterFunctionUtilTest.java +++ b/core/src/test/java/com/linecorp/armeria/internal/server/annotation/ResponseConverterFunctionUtilTest.java @@ -21,6 +21,7 @@ import java.util.Collections; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import com.google.common.collect.ImmutableList; @@ -32,7 +33,6 @@ import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.ServiceRequestContext; import com.linecorp.armeria.server.annotation.ResponseConverterFunction; diff --git a/core/src/test/java/com/linecorp/armeria/internal/server/annotation/ServiceWorkerGroupTest.java b/core/src/test/java/com/linecorp/armeria/internal/server/annotation/ServiceWorkerGroupTest.java index ddf856e0548..c2e9708f07b 100644 --- a/core/src/test/java/com/linecorp/armeria/internal/server/annotation/ServiceWorkerGroupTest.java +++ b/core/src/test/java/com/linecorp/armeria/internal/server/annotation/ServiceWorkerGroupTest.java @@ -22,6 +22,7 @@ import java.util.Queue; import java.util.concurrent.ArrayBlockingQueue; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; @@ -39,7 +40,6 @@ import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLogProperty; import com.linecorp.armeria.common.util.ThreadFactories; import com.linecorp.armeria.server.Server; diff --git a/core/src/test/java/com/linecorp/armeria/internal/server/annotation/TestDelegatingSpiConverterProvider.java b/core/src/test/java/com/linecorp/armeria/internal/server/annotation/TestDelegatingSpiConverterProvider.java index 6dfa3ae4eb8..1132ec429ed 100644 --- a/core/src/test/java/com/linecorp/armeria/internal/server/annotation/TestDelegatingSpiConverterProvider.java +++ b/core/src/test/java/com/linecorp/armeria/internal/server/annotation/TestDelegatingSpiConverterProvider.java @@ -17,12 +17,13 @@ import java.lang.reflect.Type; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.server.annotation.ResponseConverterFunctionUtilTest.TestClassWithDelegatingResponseConverterProvider; import com.linecorp.armeria.server.ServiceRequestContext; import com.linecorp.armeria.server.annotation.DelegatingResponseConverterFunctionProvider; diff --git a/core/src/test/java/com/linecorp/armeria/internal/server/annotation/TestSpiConverterProvider.java b/core/src/test/java/com/linecorp/armeria/internal/server/annotation/TestSpiConverterProvider.java index 11255e5daf9..7f5359aa8f3 100644 --- a/core/src/test/java/com/linecorp/armeria/internal/server/annotation/TestSpiConverterProvider.java +++ b/core/src/test/java/com/linecorp/armeria/internal/server/annotation/TestSpiConverterProvider.java @@ -17,12 +17,13 @@ import java.lang.reflect.Type; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.server.annotation.ResponseConverterFunctionUtilTest.TestClassWithNonDelegatingResponseConverterProvider; import com.linecorp.armeria.server.ServiceRequestContext; import com.linecorp.armeria.server.annotation.ResponseConverterFunction; diff --git a/core/src/test/java/com/linecorp/armeria/server/CustomServerErrorHandlerTest.java b/core/src/test/java/com/linecorp/armeria/server/CustomServerErrorHandlerTest.java index 221f1fcfba7..cd65bb4dd0c 100644 --- a/core/src/test/java/com/linecorp/armeria/server/CustomServerErrorHandlerTest.java +++ b/core/src/test/java/com/linecorp/armeria/server/CustomServerErrorHandlerTest.java @@ -23,6 +23,7 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.TimeUnit; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; import org.junit.jupiter.params.ParameterizedTest; @@ -44,7 +45,6 @@ import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLogProperty; import com.linecorp.armeria.internal.testing.AnticipatedException; import com.linecorp.armeria.testing.junit5.server.ServerExtension; diff --git a/core/src/test/java/com/linecorp/armeria/server/FallbackServiceTest.java b/core/src/test/java/com/linecorp/armeria/server/FallbackServiceTest.java index 14fec4cad64..e5640344156 100644 --- a/core/src/test/java/com/linecorp/armeria/server/FallbackServiceTest.java +++ b/core/src/test/java/com/linecorp/armeria/server/FallbackServiceTest.java @@ -19,6 +19,7 @@ import java.time.Duration; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; @@ -40,7 +41,6 @@ import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.testing.junit5.server.ServerExtension; diff --git a/core/src/test/java/com/linecorp/armeria/server/HttpHeaderUtilTest.java b/core/src/test/java/com/linecorp/armeria/server/HttpHeaderUtilTest.java index 71877eb6c45..b793f95d8d5 100644 --- a/core/src/test/java/com/linecorp/armeria/server/HttpHeaderUtilTest.java +++ b/core/src/test/java/com/linecorp/armeria/server/HttpHeaderUtilTest.java @@ -28,6 +28,7 @@ import java.util.function.Function; import java.util.function.Predicate; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import com.google.common.collect.ImmutableList; @@ -35,7 +36,6 @@ import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.HttpHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import io.netty.handler.codec.http.DefaultHttpHeaders; import io.netty.handler.codec.http.DefaultHttpRequest; diff --git a/core/src/test/java/com/linecorp/armeria/server/HttpServerAbortingInfiniteStreamTest.java b/core/src/test/java/com/linecorp/armeria/server/HttpServerAbortingInfiniteStreamTest.java index 1819460776b..12353caa96b 100644 --- a/core/src/test/java/com/linecorp/armeria/server/HttpServerAbortingInfiniteStreamTest.java +++ b/core/src/test/java/com/linecorp/armeria/server/HttpServerAbortingInfiniteStreamTest.java @@ -23,6 +23,7 @@ import java.util.concurrent.atomic.AtomicReference; import org.awaitility.core.ConditionTimeoutException; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.extension.RegisterExtension; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.EnumSource; @@ -41,7 +42,6 @@ import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.AbortedStreamException; import com.linecorp.armeria.common.stream.CancelledSubscriptionException; import com.linecorp.armeria.testing.junit5.server.ServerExtension; diff --git a/core/src/test/java/com/linecorp/armeria/server/HttpServerRequestTimeoutTest.java b/core/src/test/java/com/linecorp/armeria/server/HttpServerRequestTimeoutTest.java index 8ff5a038c30..336e0dfdfce 100644 --- a/core/src/test/java/com/linecorp/armeria/server/HttpServerRequestTimeoutTest.java +++ b/core/src/test/java/com/linecorp/armeria/server/HttpServerRequestTimeoutTest.java @@ -26,6 +26,7 @@ import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicReference; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; @@ -40,7 +41,6 @@ import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.TimeoutException; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.stream.ClosedStreamException; import com.linecorp.armeria.common.util.TimeoutMode; diff --git a/core/src/test/java/com/linecorp/armeria/server/HttpServerTest.java b/core/src/test/java/com/linecorp/armeria/server/HttpServerTest.java index 12ac0b7e593..10c6d7359e8 100644 --- a/core/src/test/java/com/linecorp/armeria/server/HttpServerTest.java +++ b/core/src/test/java/com/linecorp/armeria/server/HttpServerTest.java @@ -43,6 +43,7 @@ import java.util.zip.GZIPInputStream; import java.util.zip.InflaterInputStream; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; @@ -81,7 +82,6 @@ import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.stream.ClosedStreamException; import com.linecorp.armeria.common.util.EventLoopGroups; diff --git a/core/src/test/java/com/linecorp/armeria/server/ProtocolViolationHandlingTest.java b/core/src/test/java/com/linecorp/armeria/server/ProtocolViolationHandlingTest.java index 58fc88eb313..d8695e2125e 100644 --- a/core/src/test/java/com/linecorp/armeria/server/ProtocolViolationHandlingTest.java +++ b/core/src/test/java/com/linecorp/armeria/server/ProtocolViolationHandlingTest.java @@ -18,6 +18,7 @@ import static org.assertj.core.api.Assertions.assertThat; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; @@ -28,7 +29,6 @@ import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.testing.junit5.server.ServerExtension; import joptsimple.internal.Strings; diff --git a/core/src/test/java/com/linecorp/armeria/server/RouteDecoratingTest.java b/core/src/test/java/com/linecorp/armeria/server/RouteDecoratingTest.java index a8b5153976b..bc596561ba5 100644 --- a/core/src/test/java/com/linecorp/armeria/server/RouteDecoratingTest.java +++ b/core/src/test/java/com/linecorp/armeria/server/RouteDecoratingTest.java @@ -25,6 +25,7 @@ import java.util.function.Function; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; @@ -45,7 +46,6 @@ import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.RequestHeadersBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.testing.MockAddressResolverGroup; import com.linecorp.armeria.server.annotation.Get; import com.linecorp.armeria.server.annotation.Param; diff --git a/core/src/test/java/com/linecorp/armeria/server/RoutingContextTest.java b/core/src/test/java/com/linecorp/armeria/server/RoutingContextTest.java index d0fa916e080..64988abb3cb 100644 --- a/core/src/test/java/com/linecorp/armeria/server/RoutingContextTest.java +++ b/core/src/test/java/com/linecorp/armeria/server/RoutingContextTest.java @@ -22,6 +22,7 @@ import java.util.List; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import com.linecorp.armeria.common.HttpHeaderNames; @@ -30,7 +31,6 @@ import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.RequestTarget; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; class RoutingContextTest { diff --git a/core/src/test/java/com/linecorp/armeria/server/ServerErrorHandlerTest.java b/core/src/test/java/com/linecorp/armeria/server/ServerErrorHandlerTest.java index fa493b69e3f..3dc421e1f2b 100644 --- a/core/src/test/java/com/linecorp/armeria/server/ServerErrorHandlerTest.java +++ b/core/src/test/java/com/linecorp/armeria/server/ServerErrorHandlerTest.java @@ -17,6 +17,7 @@ import static org.assertj.core.api.Assertions.assertThat; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; import org.junit.jupiter.params.ParameterizedTest; @@ -30,7 +31,6 @@ import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.testing.AnticipatedException; import com.linecorp.armeria.testing.junit5.server.ServerExtension; diff --git a/core/src/test/java/com/linecorp/armeria/server/ServerTlsProviderTest.java b/core/src/test/java/com/linecorp/armeria/server/ServerTlsProviderTest.java index d33b7a52bc6..66ac24f0e8f 100644 --- a/core/src/test/java/com/linecorp/armeria/server/ServerTlsProviderTest.java +++ b/core/src/test/java/com/linecorp/armeria/server/ServerTlsProviderTest.java @@ -19,6 +19,7 @@ import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.assertThatThrownBy; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; @@ -34,7 +35,6 @@ import com.linecorp.armeria.common.SessionProtocol; import com.linecorp.armeria.common.TlsKeyPair; import com.linecorp.armeria.common.TlsProvider; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.util.CertificateUtil; import com.linecorp.armeria.internal.testing.MockAddressResolverGroup; import com.linecorp.armeria.testing.junit5.server.ServerExtension; diff --git a/core/src/test/java/com/linecorp/armeria/server/ServiceFinderTest.java b/core/src/test/java/com/linecorp/armeria/server/ServiceFinderTest.java index 1c34a055aa2..3668404d170 100644 --- a/core/src/test/java/com/linecorp/armeria/server/ServiceFinderTest.java +++ b/core/src/test/java/com/linecorp/armeria/server/ServiceFinderTest.java @@ -18,6 +18,7 @@ import static org.assertj.core.api.Assertions.assertThat; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; @@ -26,7 +27,6 @@ import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpStatus; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.metric.MeterIdPrefixFunction; import com.linecorp.armeria.server.cors.CorsService; import com.linecorp.armeria.server.encoding.EncodingService; diff --git a/core/src/test/java/com/linecorp/armeria/server/ServiceRequestContextTest.java b/core/src/test/java/com/linecorp/armeria/server/ServiceRequestContextTest.java index 6c3da23ac5a..a7497cd16f6 100644 --- a/core/src/test/java/com/linecorp/armeria/server/ServiceRequestContextTest.java +++ b/core/src/test/java/com/linecorp/armeria/server/ServiceRequestContextTest.java @@ -21,6 +21,7 @@ import java.util.function.Function; import org.assertj.core.api.ObjectAssert; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import com.google.common.collect.ImmutableList; @@ -30,7 +31,6 @@ import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.QueryParams; import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.SafeCloseable; class ServiceRequestContextTest { diff --git a/core/src/test/java/com/linecorp/armeria/server/ServiceTest.java b/core/src/test/java/com/linecorp/armeria/server/ServiceTest.java index f14815c7df3..86fcf5a3a61 100644 --- a/core/src/test/java/com/linecorp/armeria/server/ServiceTest.java +++ b/core/src/test/java/com/linecorp/armeria/server/ServiceTest.java @@ -20,6 +20,7 @@ import static org.assertj.core.api.Assertions.assertThat; import org.assertj.core.util.Files; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import com.google.common.collect.ImmutableList; @@ -31,7 +32,6 @@ import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.RequestId; import com.linecorp.armeria.common.SuccessFunction; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.logging.AccessLogWriter; public class ServiceTest { diff --git a/core/src/test/java/com/linecorp/armeria/server/TestConverters.java b/core/src/test/java/com/linecorp/armeria/server/TestConverters.java index cf35dccf7ae..f9a5ca774e1 100644 --- a/core/src/test/java/com/linecorp/armeria/server/TestConverters.java +++ b/core/src/test/java/com/linecorp/armeria/server/TestConverters.java @@ -16,6 +16,8 @@ package com.linecorp.armeria.server; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpData; import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.HttpHeaders; @@ -25,7 +27,6 @@ import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.ResponseHeadersBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.annotation.ResponseConverterFunction; public final class TestConverters { diff --git a/core/src/test/java/com/linecorp/armeria/server/auth/AuthorizerTest.java b/core/src/test/java/com/linecorp/armeria/server/auth/AuthorizerTest.java index 5fa1ef38b52..cff8d018b8c 100644 --- a/core/src/test/java/com/linecorp/armeria/server/auth/AuthorizerTest.java +++ b/core/src/test/java/com/linecorp/armeria/server/auth/AuthorizerTest.java @@ -30,6 +30,7 @@ import java.util.concurrent.CompletionStage; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; @@ -42,7 +43,6 @@ import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpStatus; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.HttpService; import com.linecorp.armeria.server.ServiceRequestContext; import com.linecorp.armeria.testing.junit5.common.EventLoopExtension; diff --git a/core/src/test/java/com/linecorp/armeria/server/encoding/HttpEncodersTest.java b/core/src/test/java/com/linecorp/armeria/server/encoding/HttpEncodersTest.java index 66da29493ed..fa62e7cd0c1 100644 --- a/core/src/test/java/com/linecorp/armeria/server/encoding/HttpEncodersTest.java +++ b/core/src/test/java/com/linecorp/armeria/server/encoding/HttpEncodersTest.java @@ -23,6 +23,7 @@ import java.util.Map; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.Arguments; @@ -33,7 +34,6 @@ import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.HttpMethod; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.encoding.StreamEncoderFactories; import com.linecorp.armeria.common.encoding.StreamEncoderFactory; diff --git a/core/src/test/java/com/linecorp/armeria/server/file/FileServiceTest.java b/core/src/test/java/com/linecorp/armeria/server/file/FileServiceTest.java index c321b19cb1c..485313dd30b 100644 --- a/core/src/test/java/com/linecorp/armeria/server/file/FileServiceTest.java +++ b/core/src/test/java/com/linecorp/armeria/server/file/FileServiceTest.java @@ -39,6 +39,7 @@ import org.apache.hc.client5.http.impl.classic.HttpClients; import org.apache.hc.core5.http.HttpHeaders; import org.apache.hc.core5.http.io.entity.EntityUtils; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; @@ -60,7 +61,6 @@ import com.linecorp.armeria.common.AggregatedHttpResponse; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.MediaType; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.OsType; import com.linecorp.armeria.common.util.SystemInfo; import com.linecorp.armeria.internal.common.RequestTargetCache; diff --git a/core/src/test/java/com/linecorp/armeria/server/logging/ContentPreviewerCancellationTest.java b/core/src/test/java/com/linecorp/armeria/server/logging/ContentPreviewerCancellationTest.java index f0d058e8ffd..e72dff1d35c 100644 --- a/core/src/test/java/com/linecorp/armeria/server/logging/ContentPreviewerCancellationTest.java +++ b/core/src/test/java/com/linecorp/armeria/server/logging/ContentPreviewerCancellationTest.java @@ -23,6 +23,7 @@ import java.util.concurrent.CompletionException; import java.util.function.Function; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; import org.reactivestreams.Subscriber; @@ -36,7 +37,6 @@ import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.ContentPreviewerFactory; import com.linecorp.armeria.common.metric.MeterIdPrefixFunction; import com.linecorp.armeria.common.prometheus.PrometheusMeterRegistries; diff --git a/core/src/test/java/com/linecorp/armeria/server/logging/HttpServiceLogNameTest.java b/core/src/test/java/com/linecorp/armeria/server/logging/HttpServiceLogNameTest.java index 9661e6df177..2844522a0d5 100644 --- a/core/src/test/java/com/linecorp/armeria/server/logging/HttpServiceLogNameTest.java +++ b/core/src/test/java/com/linecorp/armeria/server/logging/HttpServiceLogNameTest.java @@ -19,6 +19,7 @@ import static org.assertj.core.api.Assertions.assertThat; import static org.awaitility.Awaitility.await; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; @@ -30,7 +31,6 @@ import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpStatus; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestOnlyLog; import com.linecorp.armeria.common.metric.MeterIdPrefixFunction; import com.linecorp.armeria.common.metric.MoreMeters; diff --git a/dropwizard2/src/main/java/com/linecorp/armeria/dropwizard/ArmeriaConfigurationUtil.java b/dropwizard2/src/main/java/com/linecorp/armeria/dropwizard/ArmeriaConfigurationUtil.java index 1833209b6ca..41b5a6b6393 100644 --- a/dropwizard2/src/main/java/com/linecorp/armeria/dropwizard/ArmeriaConfigurationUtil.java +++ b/dropwizard2/src/main/java/com/linecorp/armeria/dropwizard/ArmeriaConfigurationUtil.java @@ -41,6 +41,7 @@ import javax.net.ssl.KeyManagerFactory; import javax.net.ssl.TrustManagerFactory; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -54,7 +55,6 @@ import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.dropwizard.ArmeriaSettings.AccessLog; import com.linecorp.armeria.dropwizard.ArmeriaSettings.Compression; import com.linecorp.armeria.dropwizard.ArmeriaSettings.Http1; @@ -315,7 +315,7 @@ private static KeyStore loadKeyStore( * Configures a decorator for encoding the content of the HTTP responses sent from the server. */ private static Function contentEncodingDecorator( - @Nullable String[] mimeTypes, @Nullable String[] excludedUserAgents, + String @Nullable [] mimeTypes, String @Nullable [] excludedUserAgents, int minBytesToForceChunkedAndEncoding) { final Predicate encodableContentTypePredicate; if (mimeTypes == null || mimeTypes.length == 0) { diff --git a/dropwizard2/src/main/java/com/linecorp/armeria/dropwizard/ArmeriaServerFactory.java b/dropwizard2/src/main/java/com/linecorp/armeria/dropwizard/ArmeriaServerFactory.java index 6bf4868c3b2..254360b2b8e 100644 --- a/dropwizard2/src/main/java/com/linecorp/armeria/dropwizard/ArmeriaServerFactory.java +++ b/dropwizard2/src/main/java/com/linecorp/armeria/dropwizard/ArmeriaServerFactory.java @@ -28,6 +28,7 @@ import org.eclipse.jetty.server.Server; import org.eclipse.jetty.util.thread.ThreadPool; import org.hibernate.validator.constraints.NotEmpty; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -39,7 +40,6 @@ import com.fasterxml.jackson.annotation.JsonUnwrapped; import com.google.common.collect.ImmutableMap; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.metric.DropwizardMeterRegistries; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.common.util.ThreadFactories; diff --git a/dropwizard2/src/main/java/com/linecorp/armeria/dropwizard/ArmeriaSettings.java b/dropwizard2/src/main/java/com/linecorp/armeria/dropwizard/ArmeriaSettings.java index fe3b40f05f6..b947c6d9f45 100644 --- a/dropwizard2/src/main/java/com/linecorp/armeria/dropwizard/ArmeriaSettings.java +++ b/dropwizard2/src/main/java/com/linecorp/armeria/dropwizard/ArmeriaSettings.java @@ -35,11 +35,12 @@ import java.util.Objects; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.Server; import com.linecorp.armeria.server.VirtualHostBuilder; @@ -759,8 +760,7 @@ static class Compression { /** * The {@code "user-agent"} header values which are not applicable for the HTTP content encoding. */ - @Nullable - private String[] excludedUserAgents; + private String @Nullable [] excludedUserAgents; /** * The minimum bytes for encoding the content of an HTTP response. @@ -776,7 +776,6 @@ void setEnabled(boolean enabled) { this.enabled = enabled; } - @Nullable String[] getMimeTypes() { return mimeTypes; } @@ -785,8 +784,7 @@ void setMimeTypes(String[] mimeTypes) { this.mimeTypes = mimeTypes; } - @Nullable - String[] getExcludedUserAgents() { + String @Nullable [] getExcludedUserAgents() { return excludedUserAgents; } diff --git a/dropwizard2/src/main/java/com/linecorp/armeria/dropwizard/ManagedArmeriaServer.java b/dropwizard2/src/main/java/com/linecorp/armeria/dropwizard/ManagedArmeriaServer.java index a031b6d27c1..662211019fa 100644 --- a/dropwizard2/src/main/java/com/linecorp/armeria/dropwizard/ManagedArmeriaServer.java +++ b/dropwizard2/src/main/java/com/linecorp/armeria/dropwizard/ManagedArmeriaServer.java @@ -19,10 +19,10 @@ import javax.validation.Valid; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.server.Server; import com.linecorp.armeria.server.ServerBuilder; diff --git a/dropwizard2/src/main/java/com/linecorp/armeria/dropwizard/package-info.java b/dropwizard2/src/main/java/com/linecorp/armeria/dropwizard/package-info.java index 4afd2e28ab7..0cb307182ef 100644 --- a/dropwizard2/src/main/java/com/linecorp/armeria/dropwizard/package-info.java +++ b/dropwizard2/src/main/java/com/linecorp/armeria/dropwizard/package-info.java @@ -17,7 +17,7 @@ /** * Provides a Dropwizard Bundle for Armeria. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.dropwizard; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/eureka/src/main/java/com/linecorp/armeria/client/eureka/EurekaEndpointGroup.java b/eureka/src/main/java/com/linecorp/armeria/client/eureka/EurekaEndpointGroup.java index 9d52edb8df1..a785ad20bfa 100644 --- a/eureka/src/main/java/com/linecorp/armeria/client/eureka/EurekaEndpointGroup.java +++ b/eureka/src/main/java/com/linecorp/armeria/client/eureka/EurekaEndpointGroup.java @@ -29,6 +29,7 @@ import java.util.function.Function; import java.util.function.Predicate; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -58,7 +59,6 @@ import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.RequestHeadersBuilder; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.eureka.InstanceInfo; import com.linecorp.armeria.common.eureka.InstanceInfo.InstanceStatus; diff --git a/eureka/src/main/java/com/linecorp/armeria/client/eureka/EurekaEndpointGroupBuilder.java b/eureka/src/main/java/com/linecorp/armeria/client/eureka/EurekaEndpointGroupBuilder.java index 88019b06053..5cb9594bae2 100644 --- a/eureka/src/main/java/com/linecorp/armeria/client/eureka/EurekaEndpointGroupBuilder.java +++ b/eureka/src/main/java/com/linecorp/armeria/client/eureka/EurekaEndpointGroupBuilder.java @@ -29,6 +29,8 @@ import java.util.function.Function; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.linecorp.armeria.client.AbstractWebClientBuilder; @@ -58,7 +60,6 @@ import com.linecorp.armeria.common.RequestId; import com.linecorp.armeria.common.SessionProtocol; import com.linecorp.armeria.common.SuccessFunction; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.auth.AuthToken; import com.linecorp.armeria.common.auth.BasicToken; import com.linecorp.armeria.common.auth.OAuth1aToken; diff --git a/eureka/src/main/java/com/linecorp/armeria/client/eureka/package-info.java b/eureka/src/main/java/com/linecorp/armeria/client/eureka/package-info.java index ef19891c5cd..59d5004dd78 100644 --- a/eureka/src/main/java/com/linecorp/armeria/client/eureka/package-info.java +++ b/eureka/src/main/java/com/linecorp/armeria/client/eureka/package-info.java @@ -17,7 +17,7 @@ * Eureka-based * {@link com.linecorp.armeria.client.endpoint.EndpointGroup} for automatic service discovery. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.client.eureka; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/eureka/src/main/java/com/linecorp/armeria/common/eureka/DataCenterInfo.java b/eureka/src/main/java/com/linecorp/armeria/common/eureka/DataCenterInfo.java index 612adb268fa..1a41428fe5b 100644 --- a/eureka/src/main/java/com/linecorp/armeria/common/eureka/DataCenterInfo.java +++ b/eureka/src/main/java/com/linecorp/armeria/common/eureka/DataCenterInfo.java @@ -20,13 +20,14 @@ import java.util.Map; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.google.common.base.Objects; import com.google.common.collect.ImmutableMap; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.eureka.DataCenterInfoSerializer; /** diff --git a/eureka/src/main/java/com/linecorp/armeria/common/eureka/InstanceInfo.java b/eureka/src/main/java/com/linecorp/armeria/common/eureka/InstanceInfo.java index 9017f25e4f9..a92036c1d90 100644 --- a/eureka/src/main/java/com/linecorp/armeria/common/eureka/InstanceInfo.java +++ b/eureka/src/main/java/com/linecorp/armeria/common/eureka/InstanceInfo.java @@ -20,6 +20,7 @@ import java.util.Map; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -33,7 +34,6 @@ import com.google.common.collect.ImmutableMap; import com.linecorp.armeria.client.Endpoint; -import com.linecorp.armeria.common.annotation.Nullable; import io.netty.util.AttributeKey; diff --git a/eureka/src/main/java/com/linecorp/armeria/common/eureka/package-info.java b/eureka/src/main/java/com/linecorp/armeria/common/eureka/package-info.java index a146087c0f6..350bfeedd91 100644 --- a/eureka/src/main/java/com/linecorp/armeria/common/eureka/package-info.java +++ b/eureka/src/main/java/com/linecorp/armeria/common/eureka/package-info.java @@ -16,7 +16,7 @@ /** * Eureka-related common classes. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.common.eureka; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/eureka/src/main/java/com/linecorp/armeria/internal/common/eureka/Applications.java b/eureka/src/main/java/com/linecorp/armeria/internal/common/eureka/Applications.java index d541ae6394c..6ff37e4d898 100644 --- a/eureka/src/main/java/com/linecorp/armeria/internal/common/eureka/Applications.java +++ b/eureka/src/main/java/com/linecorp/armeria/internal/common/eureka/Applications.java @@ -19,12 +19,12 @@ import java.util.Set; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.annotation.JsonRootName; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.google.common.collect.ImmutableSet; -import com.linecorp.armeria.common.annotation.Nullable; - /** * A {@link Set} of {@link Application}s. */ diff --git a/eureka/src/main/java/com/linecorp/armeria/internal/common/eureka/EurekaWebClient.java b/eureka/src/main/java/com/linecorp/armeria/internal/common/eureka/EurekaWebClient.java index 112630c22ae..41151223fd6 100644 --- a/eureka/src/main/java/com/linecorp/armeria/internal/common/eureka/EurekaWebClient.java +++ b/eureka/src/main/java/com/linecorp/armeria/internal/common/eureka/EurekaWebClient.java @@ -19,6 +19,8 @@ import java.net.URI; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.annotation.JsonInclude.Include; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; @@ -33,7 +35,6 @@ import com.linecorp.armeria.common.QueryParams; import com.linecorp.armeria.common.QueryParamsBuilder; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.eureka.InstanceInfo; import com.linecorp.armeria.common.eureka.InstanceInfo.InstanceStatus; diff --git a/eureka/src/main/java/com/linecorp/armeria/internal/common/eureka/package-info.java b/eureka/src/main/java/com/linecorp/armeria/internal/common/eureka/package-info.java index 03acd0e53ea..e9ffe6eeea8 100644 --- a/eureka/src/main/java/com/linecorp/armeria/internal/common/eureka/package-info.java +++ b/eureka/src/main/java/com/linecorp/armeria/internal/common/eureka/package-info.java @@ -16,7 +16,7 @@ /** * Eureka-related common classes. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.common.eureka; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/eureka/src/main/java/com/linecorp/armeria/server/eureka/EurekaUpdatingListener.java b/eureka/src/main/java/com/linecorp/armeria/server/eureka/EurekaUpdatingListener.java index 5d9b2eafa62..dec45d1ab53 100644 --- a/eureka/src/main/java/com/linecorp/armeria/server/eureka/EurekaUpdatingListener.java +++ b/eureka/src/main/java/com/linecorp/armeria/server/eureka/EurekaUpdatingListener.java @@ -24,6 +24,7 @@ import java.util.Optional; import java.util.concurrent.TimeUnit; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -36,7 +37,6 @@ import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.eureka.InstanceInfo; import com.linecorp.armeria.common.eureka.InstanceInfo.InstanceStatus; diff --git a/eureka/src/main/java/com/linecorp/armeria/server/eureka/EurekaUpdatingListenerBuilder.java b/eureka/src/main/java/com/linecorp/armeria/server/eureka/EurekaUpdatingListenerBuilder.java index e2f8808a90f..8bf7ad3159e 100644 --- a/eureka/src/main/java/com/linecorp/armeria/server/eureka/EurekaUpdatingListenerBuilder.java +++ b/eureka/src/main/java/com/linecorp/armeria/server/eureka/EurekaUpdatingListenerBuilder.java @@ -28,6 +28,8 @@ import java.util.function.Function; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; + import com.google.common.primitives.Ints; import com.linecorp.armeria.client.AbstractWebClientBuilder; @@ -52,7 +54,6 @@ import com.linecorp.armeria.common.RequestId; import com.linecorp.armeria.common.SessionProtocol; import com.linecorp.armeria.common.SuccessFunction; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.auth.AuthToken; import com.linecorp.armeria.common.auth.BasicToken; import com.linecorp.armeria.common.auth.OAuth1aToken; diff --git a/eureka/src/main/java/com/linecorp/armeria/server/eureka/InstanceInfoBuilder.java b/eureka/src/main/java/com/linecorp/armeria/server/eureka/InstanceInfoBuilder.java index 9e4632ea975..fa5e506bd69 100644 --- a/eureka/src/main/java/com/linecorp/armeria/server/eureka/InstanceInfoBuilder.java +++ b/eureka/src/main/java/com/linecorp/armeria/server/eureka/InstanceInfoBuilder.java @@ -23,10 +23,11 @@ import java.util.Map; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableMap; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.eureka.DataCenterInfo; import com.linecorp.armeria.common.eureka.InstanceInfo; import com.linecorp.armeria.common.eureka.InstanceInfo.InstanceStatus; diff --git a/eureka/src/main/java/com/linecorp/armeria/server/eureka/package-info.java b/eureka/src/main/java/com/linecorp/armeria/server/eureka/package-info.java index 5c293889598..139bcf8b15e 100644 --- a/eureka/src/main/java/com/linecorp/armeria/server/eureka/package-info.java +++ b/eureka/src/main/java/com/linecorp/armeria/server/eureka/package-info.java @@ -16,7 +16,7 @@ /** * Eureka-based automatic service registration. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.eureka; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/eureka/src/test/java/com/linecorp/armeria/client/eureka/ArmeriaEurekaClientTest.java b/eureka/src/test/java/com/linecorp/armeria/client/eureka/ArmeriaEurekaClientTest.java index d577ac090ed..19dbdfc39f6 100644 --- a/eureka/src/test/java/com/linecorp/armeria/client/eureka/ArmeriaEurekaClientTest.java +++ b/eureka/src/test/java/com/linecorp/armeria/client/eureka/ArmeriaEurekaClientTest.java @@ -25,6 +25,7 @@ import java.util.List; import java.util.Map; +import org.jspecify.annotations.Nullable; import org.junit.Ignore; import org.junit.Test; @@ -51,7 +52,6 @@ import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.auth.AuthToken; import com.linecorp.armeria.common.eureka.InstanceInfo.PortWrapper; import com.linecorp.armeria.internal.common.eureka.EurekaWebClient; diff --git a/examples/annotated-http-service/src/main/java/example/armeria/server/annotated/MessageConverterService.java b/examples/annotated-http-service/src/main/java/example/armeria/server/annotated/MessageConverterService.java index b24252bb928..d5a0d627df5 100644 --- a/examples/annotated-http-service/src/main/java/example/armeria/server/annotated/MessageConverterService.java +++ b/examples/annotated-http-service/src/main/java/example/armeria/server/annotated/MessageConverterService.java @@ -4,6 +4,8 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.CompletionStage; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.databind.JsonNode; @@ -15,7 +17,6 @@ import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.LogLevel; import com.linecorp.armeria.server.ServiceRequestContext; import com.linecorp.armeria.server.annotation.JacksonRequestConverterFunction; diff --git a/examples/grpc-envoy/src/main/java/example/armeria/grpc/envoy/EnvoyContainer.java b/examples/grpc-envoy/src/main/java/example/armeria/grpc/envoy/EnvoyContainer.java index d62d55767fb..273315ead8d 100644 --- a/examples/grpc-envoy/src/main/java/example/armeria/grpc/envoy/EnvoyContainer.java +++ b/examples/grpc-envoy/src/main/java/example/armeria/grpc/envoy/EnvoyContainer.java @@ -1,5 +1,6 @@ package example.armeria.grpc.envoy; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.testcontainers.containers.BindMode; @@ -8,8 +9,6 @@ import com.github.dockerjava.api.command.InspectContainerResponse; -import com.linecorp.armeria.common.annotation.Nullable; - // https://github.com/envoyproxy/java-control-plane/blob/eaca1a4380e53b4b6339db4e9ffe0ada5e0b7f8f/server/src/test/java/io/envoyproxy/controlplane/server/EnvoyContainer.java class EnvoyContainer extends GenericContainer { diff --git a/examples/saml-service-provider/src/main/java/example/armeria/server/saml/sp/MyAuthHandler.java b/examples/saml-service-provider/src/main/java/example/armeria/server/saml/sp/MyAuthHandler.java index 5918657b334..2b3d34e0573 100644 --- a/examples/saml-service-provider/src/main/java/example/armeria/server/saml/sp/MyAuthHandler.java +++ b/examples/saml-service-provider/src/main/java/example/armeria/server/saml/sp/MyAuthHandler.java @@ -4,6 +4,7 @@ import java.util.concurrent.CompletionStage; +import org.jspecify.annotations.Nullable; import org.opensaml.messaging.context.MessageContext; import org.opensaml.saml.saml2.core.NameID; import org.opensaml.saml.saml2.core.Response; @@ -21,7 +22,6 @@ import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.UnmodifiableFuture; import com.linecorp.armeria.server.ServiceRequestContext; import com.linecorp.armeria.server.auth.Authorizer; diff --git a/examples/server-sent-events/src/test/java/example/armeria/server/sse/MainTest.java b/examples/server-sent-events/src/test/java/example/armeria/server/sse/MainTest.java index 23195d19d8d..16a832cc11a 100644 --- a/examples/server-sent-events/src/test/java/example/armeria/server/sse/MainTest.java +++ b/examples/server-sent-events/src/test/java/example/armeria/server/sse/MainTest.java @@ -7,6 +7,7 @@ import java.time.Duration; import java.util.concurrent.atomic.AtomicLong; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; @@ -18,7 +19,6 @@ import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.HttpDecoder; import com.linecorp.armeria.common.stream.StreamDecoderInput; import com.linecorp.armeria.common.stream.StreamDecoderOutput; diff --git a/examples/tutorials/grpc/src/main/java/example/armeria/server/blog/grpc/GrpcExceptionHandler.java b/examples/tutorials/grpc/src/main/java/example/armeria/server/blog/grpc/GrpcExceptionHandler.java index 91feda5fd1e..b17198580c7 100644 --- a/examples/tutorials/grpc/src/main/java/example/armeria/server/blog/grpc/GrpcExceptionHandler.java +++ b/examples/tutorials/grpc/src/main/java/example/armeria/server/blog/grpc/GrpcExceptionHandler.java @@ -1,7 +1,8 @@ package example.armeria.server.blog.grpc; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.grpc.GrpcExceptionHandlerFunction; import io.grpc.Metadata; diff --git a/examples/tutorials/rest-api-annotated-service/src/main/java/example/armeria/server/blog/BlogPostRequestConverter.java b/examples/tutorials/rest-api-annotated-service/src/main/java/example/armeria/server/blog/BlogPostRequestConverter.java index 7aa0e9946f7..26de78cd24b 100644 --- a/examples/tutorials/rest-api-annotated-service/src/main/java/example/armeria/server/blog/BlogPostRequestConverter.java +++ b/examples/tutorials/rest-api-annotated-service/src/main/java/example/armeria/server/blog/BlogPostRequestConverter.java @@ -3,12 +3,13 @@ import java.lang.reflect.ParameterizedType; import java.util.concurrent.atomic.AtomicInteger; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; import com.linecorp.armeria.common.AggregatedHttpRequest; import com.linecorp.armeria.common.HttpRequest; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.ServiceRequestContext; import com.linecorp.armeria.server.annotation.RequestConverterFunction; diff --git a/graphql-protocol/src/main/java/com/linecorp/armeria/common/graphql/protocol/DefaultGraphqlRequest.java b/graphql-protocol/src/main/java/com/linecorp/armeria/common/graphql/protocol/DefaultGraphqlRequest.java index c8139d6ae6c..0b9c103246b 100644 --- a/graphql-protocol/src/main/java/com/linecorp/armeria/common/graphql/protocol/DefaultGraphqlRequest.java +++ b/graphql-protocol/src/main/java/com/linecorp/armeria/common/graphql/protocol/DefaultGraphqlRequest.java @@ -19,9 +19,9 @@ import java.util.Map; import java.util.Objects; -import com.google.common.base.MoreObjects; +import org.jspecify.annotations.Nullable; -import com.linecorp.armeria.common.annotation.Nullable; +import com.google.common.base.MoreObjects; final class DefaultGraphqlRequest implements GraphqlRequest { diff --git a/graphql-protocol/src/main/java/com/linecorp/armeria/common/graphql/protocol/GraphqlRequest.java b/graphql-protocol/src/main/java/com/linecorp/armeria/common/graphql/protocol/GraphqlRequest.java index 721d554bc7b..423e0edf3d3 100644 --- a/graphql-protocol/src/main/java/com/linecorp/armeria/common/graphql/protocol/GraphqlRequest.java +++ b/graphql-protocol/src/main/java/com/linecorp/armeria/common/graphql/protocol/GraphqlRequest.java @@ -21,9 +21,10 @@ import java.util.Map; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableMap; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/graphql-protocol/src/main/java/com/linecorp/armeria/common/graphql/protocol/package-info.java b/graphql-protocol/src/main/java/com/linecorp/armeria/common/graphql/protocol/package-info.java index 983fc445006..f84c798c95b 100644 --- a/graphql-protocol/src/main/java/com/linecorp/armeria/common/graphql/protocol/package-info.java +++ b/graphql-protocol/src/main/java/com/linecorp/armeria/common/graphql/protocol/package-info.java @@ -17,8 +17,9 @@ * Common classes for handling the GraphQL protocol. */ @UnstableApi -@NonNullByDefault +@NullMarked package com.linecorp.armeria.common.graphql.protocol; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/graphql-protocol/src/main/java/com/linecorp/armeria/internal/server/graphql/protocol/GraphqlUtil.java b/graphql-protocol/src/main/java/com/linecorp/armeria/internal/server/graphql/protocol/GraphqlUtil.java index 9afc6620b2a..f505c7d72aa 100644 --- a/graphql-protocol/src/main/java/com/linecorp/armeria/internal/server/graphql/protocol/GraphqlUtil.java +++ b/graphql-protocol/src/main/java/com/linecorp/armeria/internal/server/graphql/protocol/GraphqlUtil.java @@ -18,10 +18,11 @@ import java.util.List; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.graphql.protocol.AbstractGraphqlService; /** diff --git a/graphql-protocol/src/main/java/com/linecorp/armeria/internal/server/graphql/protocol/package-info.java b/graphql-protocol/src/main/java/com/linecorp/armeria/internal/server/graphql/protocol/package-info.java index e23e63fb868..df5a16410c3 100644 --- a/graphql-protocol/src/main/java/com/linecorp/armeria/internal/server/graphql/protocol/package-info.java +++ b/graphql-protocol/src/main/java/com/linecorp/armeria/internal/server/graphql/protocol/package-info.java @@ -17,8 +17,9 @@ * Internal common classes for handling the GraphQL protocol. */ @UnstableApi -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.server.graphql.protocol; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/graphql-protocol/src/main/java/com/linecorp/armeria/server/graphql/protocol/AbstractGraphqlService.java b/graphql-protocol/src/main/java/com/linecorp/armeria/server/graphql/protocol/AbstractGraphqlService.java index 2377e6d6961..c1a1b62432c 100644 --- a/graphql-protocol/src/main/java/com/linecorp/armeria/server/graphql/protocol/AbstractGraphqlService.java +++ b/graphql-protocol/src/main/java/com/linecorp/armeria/server/graphql/protocol/AbstractGraphqlService.java @@ -21,6 +21,8 @@ import java.util.List; import java.util.Map; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.ObjectMapper; @@ -34,7 +36,6 @@ import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.QueryParams; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.graphql.protocol.GraphqlRequest; import com.linecorp.armeria.common.multipart.MultipartFile; diff --git a/graphql-protocol/src/main/java/com/linecorp/armeria/server/graphql/protocol/MultipartVariableMapper.java b/graphql-protocol/src/main/java/com/linecorp/armeria/server/graphql/protocol/MultipartVariableMapper.java index b4e49feb5f0..0adcddda2e6 100644 --- a/graphql-protocol/src/main/java/com/linecorp/armeria/server/graphql/protocol/MultipartVariableMapper.java +++ b/graphql-protocol/src/main/java/com/linecorp/armeria/server/graphql/protocol/MultipartVariableMapper.java @@ -34,10 +34,11 @@ import java.util.List; import java.util.Map; +import org.jspecify.annotations.Nullable; + import com.google.common.base.Splitter; import com.google.common.collect.ImmutableList; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.multipart.MultipartFile; /** diff --git a/graphql-protocol/src/main/java/com/linecorp/armeria/server/graphql/protocol/package-info.java b/graphql-protocol/src/main/java/com/linecorp/armeria/server/graphql/protocol/package-info.java index d9efd77fe17..3217ff329c6 100644 --- a/graphql-protocol/src/main/java/com/linecorp/armeria/server/graphql/protocol/package-info.java +++ b/graphql-protocol/src/main/java/com/linecorp/armeria/server/graphql/protocol/package-info.java @@ -20,8 +20,9 @@ * libraries. */ @UnstableApi -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.graphql.protocol; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/graphql-protocol/src/test/java/com/linecorp/armeria/server/graphql/protocol/AbstractGraphqlServiceTest.java b/graphql-protocol/src/test/java/com/linecorp/armeria/server/graphql/protocol/AbstractGraphqlServiceTest.java index f2748a383ce..51cc6591459 100644 --- a/graphql-protocol/src/test/java/com/linecorp/armeria/server/graphql/protocol/AbstractGraphqlServiceTest.java +++ b/graphql-protocol/src/test/java/com/linecorp/armeria/server/graphql/protocol/AbstractGraphqlServiceTest.java @@ -22,6 +22,7 @@ import java.util.Map; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtensionContext; @@ -46,7 +47,6 @@ import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.QueryParams; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.graphql.protocol.GraphqlRequest; import com.linecorp.armeria.common.multipart.BodyPart; import com.linecorp.armeria.common.multipart.Multipart; diff --git a/graphql/src/main/java/com/linecorp/armeria/common/graphql/scalar/package-info.java b/graphql/src/main/java/com/linecorp/armeria/common/graphql/scalar/package-info.java index c6b48479530..ec0b85c3afc 100644 --- a/graphql/src/main/java/com/linecorp/armeria/common/graphql/scalar/package-info.java +++ b/graphql/src/main/java/com/linecorp/armeria/common/graphql/scalar/package-info.java @@ -18,8 +18,9 @@ * GraphQL-related extended scalar classes. */ @UnstableApi -@NonNullByDefault +@NullMarked package com.linecorp.armeria.common.graphql.scalar; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/graphql/src/main/java/com/linecorp/armeria/internal/server/graphql/package-info.java b/graphql/src/main/java/com/linecorp/armeria/internal/server/graphql/package-info.java index 8235c434e69..147ab53bb0a 100644 --- a/graphql/src/main/java/com/linecorp/armeria/internal/server/graphql/package-info.java +++ b/graphql/src/main/java/com/linecorp/armeria/internal/server/graphql/package-info.java @@ -17,9 +17,10 @@ /** * GraphQL-related internal server classes. */ -@NonNullByDefault +@NullMarked @UnstableApi package com.linecorp.armeria.internal.server.graphql; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/graphql/src/main/java/com/linecorp/armeria/server/graphql/DefaultGraphqlErrorHandler.java b/graphql/src/main/java/com/linecorp/armeria/server/graphql/DefaultGraphqlErrorHandler.java index b73326f1039..7daa2f28632 100644 --- a/graphql/src/main/java/com/linecorp/armeria/server/graphql/DefaultGraphqlErrorHandler.java +++ b/graphql/src/main/java/com/linecorp/armeria/server/graphql/DefaultGraphqlErrorHandler.java @@ -22,12 +22,13 @@ import javax.annotation.Nonnull; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableMap; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.MediaType; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.server.graphql.protocol.GraphqlUtil; import com.linecorp.armeria.server.ServiceRequestContext; diff --git a/graphql/src/main/java/com/linecorp/armeria/server/graphql/ExecutionResultSubscriber.java b/graphql/src/main/java/com/linecorp/armeria/server/graphql/ExecutionResultSubscriber.java index 0be77f46c5a..73dc558a5db 100644 --- a/graphql/src/main/java/com/linecorp/armeria/server/graphql/ExecutionResultSubscriber.java +++ b/graphql/src/main/java/com/linecorp/armeria/server/graphql/ExecutionResultSubscriber.java @@ -16,6 +16,7 @@ package com.linecorp.armeria.server.graphql; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; import org.slf4j.Logger; @@ -23,7 +24,6 @@ import com.fasterxml.jackson.core.JsonProcessingException; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.stream.NoopSubscription; import graphql.ExecutionResult; diff --git a/graphql/src/main/java/com/linecorp/armeria/server/graphql/GraphqlErrorHandler.java b/graphql/src/main/java/com/linecorp/armeria/server/graphql/GraphqlErrorHandler.java index 2273db905a8..4351e338a91 100644 --- a/graphql/src/main/java/com/linecorp/armeria/server/graphql/GraphqlErrorHandler.java +++ b/graphql/src/main/java/com/linecorp/armeria/server/graphql/GraphqlErrorHandler.java @@ -18,8 +18,9 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpResponse; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.server.ServiceRequestContext; diff --git a/graphql/src/main/java/com/linecorp/armeria/server/graphql/GraphqlServiceBuilder.java b/graphql/src/main/java/com/linecorp/armeria/server/graphql/GraphqlServiceBuilder.java index d34f05c96b2..9d790bbd5c2 100644 --- a/graphql/src/main/java/com/linecorp/armeria/server/graphql/GraphqlServiceBuilder.java +++ b/graphql/src/main/java/com/linecorp/armeria/server/graphql/GraphqlServiceBuilder.java @@ -35,13 +35,13 @@ import java.util.function.Function; import org.dataloader.DataLoaderRegistry; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.google.common.collect.ImmutableList; import com.google.common.collect.Streams; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.internal.common.util.ResourceUtil; import com.linecorp.armeria.server.ServiceRequestContext; @@ -76,24 +76,18 @@ public final class GraphqlServiceBuilder { // Fields for building a graphql @Nullable private ExecutionIdGenerator executionIdGenerator; - @Nullable - private ImmutableList.Builder instrumentations; - @Nullable - private ImmutableList.Builder graphqlBuilderConsumers; + private ImmutableList.@Nullable Builder instrumentations; + private ImmutableList.@Nullable Builder graphqlBuilderConsumers; // Fields for building a schema in a graphql @Nullable private GraphQLSchema schema; - @Nullable - private ImmutableList.Builder schemaUrls; - @Nullable - private ImmutableList.Builder runtimeWiringConfigurators; - @Nullable - private ImmutableList.Builder typeVisitors; + private ImmutableList.@Nullable Builder schemaUrls; + private ImmutableList.@Nullable Builder runtimeWiringConfigurators; + private ImmutableList.@Nullable Builder typeVisitors; // Fields for building a DataLoaderRegistry - @Nullable - private ImmutableList.Builder> dataLoaderRegistryConsumers; + private ImmutableList.@Nullable Builder> dataLoaderRegistryConsumers; @Nullable private Function dataLoaderRegistryFactory; diff --git a/graphql/src/main/java/com/linecorp/armeria/server/graphql/GraphqlWSSubProtocol.java b/graphql/src/main/java/com/linecorp/armeria/server/graphql/GraphqlWSSubProtocol.java index 7188f48891d..57fbd0b0e97 100644 --- a/graphql/src/main/java/com/linecorp/armeria/server/graphql/GraphqlWSSubProtocol.java +++ b/graphql/src/main/java/com/linecorp/armeria/server/graphql/GraphqlWSSubProtocol.java @@ -28,6 +28,7 @@ import java.util.stream.Collectors; import org.dataloader.DataLoaderRegistry; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -38,7 +39,6 @@ import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.StreamMessage; import com.linecorp.armeria.common.websocket.WebSocketCloseStatus; import com.linecorp.armeria.common.websocket.WebSocketWriter; @@ -86,7 +86,6 @@ class GraphqlWSSubProtocol { /** * Called when a binary frame is received. Binary frames are not supported by the graphql-ws protocol. */ - @Nullable public void handleBinary(WebSocketWriter out) { out.close(WebSocketCloseStatus.INVALID_MESSAGE_TYPE, "Binary frames are not supported"); } @@ -94,7 +93,6 @@ public void handleBinary(WebSocketWriter out) { /** * Receives an event and returns a response if one should be sent. */ - @Nullable public void handleText(String event, WebSocketWriter out) { if (!out.isOpen()) { return; diff --git a/graphql/src/main/java/com/linecorp/armeria/server/graphql/GraphqlWebSocketService.java b/graphql/src/main/java/com/linecorp/armeria/server/graphql/GraphqlWebSocketService.java index 4f7dda740a5..4bd37f99c17 100644 --- a/graphql/src/main/java/com/linecorp/armeria/server/graphql/GraphqlWebSocketService.java +++ b/graphql/src/main/java/com/linecorp/armeria/server/graphql/GraphqlWebSocketService.java @@ -20,8 +20,8 @@ import java.util.function.Function; import org.dataloader.DataLoaderRegistry; +import org.jspecify.annotations.Nullable; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.websocket.WebSocket; import com.linecorp.armeria.common.websocket.WebSocketWriter; import com.linecorp.armeria.server.ServiceOptions; diff --git a/graphql/src/main/java/com/linecorp/armeria/server/graphql/GraphqlWebSocketSubscriber.java b/graphql/src/main/java/com/linecorp/armeria/server/graphql/GraphqlWebSocketSubscriber.java index aed58ac261e..dc90add616d 100644 --- a/graphql/src/main/java/com/linecorp/armeria/server/graphql/GraphqlWebSocketSubscriber.java +++ b/graphql/src/main/java/com/linecorp/armeria/server/graphql/GraphqlWebSocketSubscriber.java @@ -16,12 +16,12 @@ package com.linecorp.armeria.server.graphql; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.websocket.WebSocketFrame; import com.linecorp.armeria.common.websocket.WebSocketWriter; diff --git a/graphql/src/main/java/com/linecorp/armeria/server/graphql/package-info.java b/graphql/src/main/java/com/linecorp/armeria/server/graphql/package-info.java index e72e0d11ad5..2287b5be62d 100644 --- a/graphql/src/main/java/com/linecorp/armeria/server/graphql/package-info.java +++ b/graphql/src/main/java/com/linecorp/armeria/server/graphql/package-info.java @@ -17,9 +17,10 @@ /** * GraphQL-related server classes. */ -@NonNullByDefault +@NullMarked @UnstableApi package com.linecorp.armeria.server.graphql; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/graphql/src/test/java/com/linecorp/armeria/server/graphql/ExecutionIdGeneratorTest.java b/graphql/src/test/java/com/linecorp/armeria/server/graphql/ExecutionIdGeneratorTest.java index d2ab983d7da..bec33da3d07 100644 --- a/graphql/src/test/java/com/linecorp/armeria/server/graphql/ExecutionIdGeneratorTest.java +++ b/graphql/src/test/java/com/linecorp/armeria/server/graphql/ExecutionIdGeneratorTest.java @@ -21,6 +21,7 @@ import java.io.File; import java.util.concurrent.CompletableFuture; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; @@ -29,7 +30,6 @@ import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.MediaType; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.ServerBuilder; import com.linecorp.armeria.server.ServiceRequestContext; import com.linecorp.armeria.testing.junit5.server.ServerExtension; diff --git a/grpc-protocol/src/main/java/com/linecorp/armeria/client/grpc/protocol/UnaryGrpcClient.java b/grpc-protocol/src/main/java/com/linecorp/armeria/client/grpc/protocol/UnaryGrpcClient.java index c253089da72..8d08ae9a360 100644 --- a/grpc-protocol/src/main/java/com/linecorp/armeria/client/grpc/protocol/UnaryGrpcClient.java +++ b/grpc-protocol/src/main/java/com/linecorp/armeria/client/grpc/protocol/UnaryGrpcClient.java @@ -21,6 +21,7 @@ import java.util.Set; import java.util.concurrent.CompletableFuture; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; import org.slf4j.Logger; @@ -46,7 +47,6 @@ import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.SerializationFormat; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.grpc.protocol.ArmeriaMessageDeframer; import com.linecorp.armeria.common.grpc.protocol.ArmeriaMessageFramer; diff --git a/grpc-protocol/src/main/java/com/linecorp/armeria/client/grpc/protocol/package-info.java b/grpc-protocol/src/main/java/com/linecorp/armeria/client/grpc/protocol/package-info.java index 5fc64a39c97..3f6b438c4ea 100644 --- a/grpc-protocol/src/main/java/com/linecorp/armeria/client/grpc/protocol/package-info.java +++ b/grpc-protocol/src/main/java/com/linecorp/armeria/client/grpc/protocol/package-info.java @@ -25,8 +25,9 @@ * it's an advanced API.

    */ @UnstableApi -@NonNullByDefault +@NullMarked package com.linecorp.armeria.client.grpc.protocol; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/grpc-protocol/src/main/java/com/linecorp/armeria/common/grpc/protocol/AbstractMessageDeframer.java b/grpc-protocol/src/main/java/com/linecorp/armeria/common/grpc/protocol/AbstractMessageDeframer.java index f2d3c565ba3..5c254bd3d84 100644 --- a/grpc-protocol/src/main/java/com/linecorp/armeria/common/grpc/protocol/AbstractMessageDeframer.java +++ b/grpc-protocol/src/main/java/com/linecorp/armeria/common/grpc/protocol/AbstractMessageDeframer.java @@ -20,9 +20,10 @@ import java.io.IOException; import java.io.InputStream; +import org.jspecify.annotations.Nullable; + import com.google.common.annotations.VisibleForTesting; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.StreamDecoderInput; import com.linecorp.armeria.internal.common.grpc.protocol.StatusCodes; diff --git a/grpc-protocol/src/main/java/com/linecorp/armeria/common/grpc/protocol/ArmeriaMessageDeframer.java b/grpc-protocol/src/main/java/com/linecorp/armeria/common/grpc/protocol/ArmeriaMessageDeframer.java index b09b661c3cf..c3f4b5f99ec 100644 --- a/grpc-protocol/src/main/java/com/linecorp/armeria/common/grpc/protocol/ArmeriaMessageDeframer.java +++ b/grpc-protocol/src/main/java/com/linecorp/armeria/common/grpc/protocol/ArmeriaMessageDeframer.java @@ -49,8 +49,9 @@ import static com.google.common.base.Preconditions.checkState; import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpData; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.stream.HttpDecoder; import com.linecorp.armeria.common.stream.StreamDecoderInput; diff --git a/grpc-protocol/src/main/java/com/linecorp/armeria/common/grpc/protocol/ArmeriaMessageFramer.java b/grpc-protocol/src/main/java/com/linecorp/armeria/common/grpc/protocol/ArmeriaMessageFramer.java index bb249755957..9b4b90f1f60 100644 --- a/grpc-protocol/src/main/java/com/linecorp/armeria/common/grpc/protocol/ArmeriaMessageFramer.java +++ b/grpc-protocol/src/main/java/com/linecorp/armeria/common/grpc/protocol/ArmeriaMessageFramer.java @@ -53,10 +53,11 @@ import java.io.InputStream; import java.io.OutputStream; +import org.jspecify.annotations.Nullable; + import com.google.common.annotations.VisibleForTesting; import com.linecorp.armeria.common.HttpData; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.internal.common.grpc.protocol.StatusCodes; diff --git a/grpc-protocol/src/main/java/com/linecorp/armeria/common/grpc/protocol/ArmeriaStatusException.java b/grpc-protocol/src/main/java/com/linecorp/armeria/common/grpc/protocol/ArmeriaStatusException.java index 457e7c9fdbd..78c2e2a6430 100644 --- a/grpc-protocol/src/main/java/com/linecorp/armeria/common/grpc/protocol/ArmeriaStatusException.java +++ b/grpc-protocol/src/main/java/com/linecorp/armeria/common/grpc/protocol/ArmeriaStatusException.java @@ -16,7 +16,8 @@ package com.linecorp.armeria.common.grpc.protocol; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; /** @@ -29,8 +30,7 @@ public final class ArmeriaStatusException extends RuntimeException { private final int code; - @Nullable - private final byte[] grpcStatusDetailsBin; + private final byte @Nullable [] grpcStatusDetailsBin; /** * Constructs an {@link ArmeriaStatusException} for the given gRPC status code and message. @@ -45,7 +45,7 @@ public ArmeriaStatusException(int code, @Nullable String message) { * {@code com.google.rpc.Status} to follow the * unofficial specification. */ - public ArmeriaStatusException(int code, @Nullable String message, @Nullable byte[] grpcStatusDetailsBin) { + public ArmeriaStatusException(int code, @Nullable String message, byte @Nullable [] grpcStatusDetailsBin) { this(code, message, grpcStatusDetailsBin, null); } @@ -62,7 +62,7 @@ public ArmeriaStatusException(int code, @Nullable String message, @Nullable Thro * {@code com.google.rpc.Status} to follow the * unofficial specification. */ - public ArmeriaStatusException(int code, @Nullable String message, @Nullable byte[] grpcStatusDetailsBin, + public ArmeriaStatusException(int code, @Nullable String message, byte @Nullable [] grpcStatusDetailsBin, @Nullable Throwable cause) { super(message, cause); this.code = code; @@ -79,8 +79,7 @@ public int getCode() { /** * Returns the gRPC details binary for this {@link ArmeriaStatusException}. */ - @Nullable - public byte[] getGrpcStatusDetailsBin() { + public byte @Nullable [] getGrpcStatusDetailsBin() { return grpcStatusDetailsBin; } } diff --git a/grpc-protocol/src/main/java/com/linecorp/armeria/common/grpc/protocol/DeframedMessage.java b/grpc-protocol/src/main/java/com/linecorp/armeria/common/grpc/protocol/DeframedMessage.java index 1a0b13bce89..51f3fa0d2c1 100644 --- a/grpc-protocol/src/main/java/com/linecorp/armeria/common/grpc/protocol/DeframedMessage.java +++ b/grpc-protocol/src/main/java/com/linecorp/armeria/common/grpc/protocol/DeframedMessage.java @@ -22,9 +22,10 @@ import java.io.InputStream; import java.util.Objects; +import org.jspecify.annotations.Nullable; + import com.google.common.annotations.VisibleForTesting; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.util.SafeCloseable; diff --git a/grpc-protocol/src/main/java/com/linecorp/armeria/common/grpc/protocol/GrpcWebTrailers.java b/grpc-protocol/src/main/java/com/linecorp/armeria/common/grpc/protocol/GrpcWebTrailers.java index dff10cc3082..d192dc3a483 100644 --- a/grpc-protocol/src/main/java/com/linecorp/armeria/common/grpc/protocol/GrpcWebTrailers.java +++ b/grpc-protocol/src/main/java/com/linecorp/armeria/common/grpc/protocol/GrpcWebTrailers.java @@ -16,11 +16,12 @@ package com.linecorp.armeria.common.grpc.protocol; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.retry.RetryRuleWithContent; import com.linecorp.armeria.common.AggregatedHttpResponse; import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.internal.common.InternalGrpcWebTrailers; diff --git a/grpc-protocol/src/main/java/com/linecorp/armeria/common/grpc/protocol/package-info.java b/grpc-protocol/src/main/java/com/linecorp/armeria/common/grpc/protocol/package-info.java index 8904425cf46..14d788a29d0 100644 --- a/grpc-protocol/src/main/java/com/linecorp/armeria/common/grpc/protocol/package-info.java +++ b/grpc-protocol/src/main/java/com/linecorp/armeria/common/grpc/protocol/package-info.java @@ -25,8 +25,9 @@ * it's an advanced API.

    */ @UnstableApi -@NonNullByDefault +@NullMarked package com.linecorp.armeria.common.grpc.protocol; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/grpc-protocol/src/main/java/com/linecorp/armeria/internal/client/grpc/protocol/InternalGrpcWebUtil.java b/grpc-protocol/src/main/java/com/linecorp/armeria/internal/client/grpc/protocol/InternalGrpcWebUtil.java index 9541b20b519..8d126397844 100644 --- a/grpc-protocol/src/main/java/com/linecorp/armeria/internal/client/grpc/protocol/InternalGrpcWebUtil.java +++ b/grpc-protocol/src/main/java/com/linecorp/armeria/internal/client/grpc/protocol/InternalGrpcWebUtil.java @@ -20,11 +20,12 @@ import java.io.InputStream; import java.nio.charset.StandardCharsets; +import org.jspecify.annotations.Nullable; + import com.google.common.io.ByteStreams; import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.HttpHeadersBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.grpc.protocol.DeframedMessage; import io.netty.buffer.ByteBuf; diff --git a/grpc-protocol/src/main/java/com/linecorp/armeria/internal/client/grpc/protocol/package-info.java b/grpc-protocol/src/main/java/com/linecorp/armeria/internal/client/grpc/protocol/package-info.java index 68473733366..b8c30ea0c62 100644 --- a/grpc-protocol/src/main/java/com/linecorp/armeria/internal/client/grpc/protocol/package-info.java +++ b/grpc-protocol/src/main/java/com/linecorp/armeria/internal/client/grpc/protocol/package-info.java @@ -17,8 +17,9 @@ * Internal common classes for handling the gRPC wire protocol. */ @UnstableApi -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.client.grpc.protocol; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/grpc-protocol/src/main/java/com/linecorp/armeria/internal/common/grpc/protocol/Base64Decoder.java b/grpc-protocol/src/main/java/com/linecorp/armeria/internal/common/grpc/protocol/Base64Decoder.java index 773f8161717..eee533e26fc 100644 --- a/grpc-protocol/src/main/java/com/linecorp/armeria/internal/common/grpc/protocol/Base64Decoder.java +++ b/grpc-protocol/src/main/java/com/linecorp/armeria/internal/common/grpc/protocol/Base64Decoder.java @@ -34,7 +34,7 @@ */ package com.linecorp.armeria.internal.common.grpc.protocol; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; import io.netty.buffer.ByteBuf; import io.netty.buffer.ByteBufAllocator; diff --git a/grpc-protocol/src/main/java/com/linecorp/armeria/internal/common/grpc/protocol/GrpcTrailersUtil.java b/grpc-protocol/src/main/java/com/linecorp/armeria/internal/common/grpc/protocol/GrpcTrailersUtil.java index d5aabb4c552..a76d0e81647 100644 --- a/grpc-protocol/src/main/java/com/linecorp/armeria/internal/common/grpc/protocol/GrpcTrailersUtil.java +++ b/grpc-protocol/src/main/java/com/linecorp/armeria/internal/common/grpc/protocol/GrpcTrailersUtil.java @@ -21,9 +21,10 @@ import java.util.Base64; import java.util.Map; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.HttpHeadersBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.grpc.protocol.GrpcHeaderNames; import com.linecorp.armeria.common.grpc.protocol.StatusMessageEscaper; import com.linecorp.armeria.internal.common.util.StringUtil; @@ -45,7 +46,7 @@ public final class GrpcTrailersUtil { */ public static void addStatusMessageToTrailers( HttpHeadersBuilder trailersBuilder, int code, @Nullable String message, - @Nullable byte[] details) { + byte @Nullable [] details) { trailersBuilder.endOfStream(true); trailersBuilder.add(GrpcHeaderNames.GRPC_STATUS, StringUtil.toString(code)); if (message != null) { diff --git a/grpc-protocol/src/main/java/com/linecorp/armeria/internal/common/grpc/protocol/package-info.java b/grpc-protocol/src/main/java/com/linecorp/armeria/internal/common/grpc/protocol/package-info.java index 49874a92e2e..95971ddbde2 100644 --- a/grpc-protocol/src/main/java/com/linecorp/armeria/internal/common/grpc/protocol/package-info.java +++ b/grpc-protocol/src/main/java/com/linecorp/armeria/internal/common/grpc/protocol/package-info.java @@ -17,8 +17,9 @@ * Internal common classes for handling the gRPC wire protocol. */ @UnstableApi -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.common.grpc.protocol; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/grpc-protocol/src/main/java/com/linecorp/armeria/server/grpc/protocol/AbstractUnsafeUnaryGrpcService.java b/grpc-protocol/src/main/java/com/linecorp/armeria/server/grpc/protocol/AbstractUnsafeUnaryGrpcService.java index 4aa8515eb14..eda4e32d192 100644 --- a/grpc-protocol/src/main/java/com/linecorp/armeria/server/grpc/protocol/AbstractUnsafeUnaryGrpcService.java +++ b/grpc-protocol/src/main/java/com/linecorp/armeria/server/grpc/protocol/AbstractUnsafeUnaryGrpcService.java @@ -23,6 +23,7 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.CompletionStage; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; @@ -37,7 +38,6 @@ import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.ResponseHeadersBuilder; import com.linecorp.armeria.common.SerializationFormat; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.grpc.protocol.ArmeriaMessageDeframer; import com.linecorp.armeria.common.grpc.protocol.ArmeriaMessageFramer; diff --git a/grpc-protocol/src/main/java/com/linecorp/armeria/server/grpc/protocol/package-info.java b/grpc-protocol/src/main/java/com/linecorp/armeria/server/grpc/protocol/package-info.java index 26a0c0e8b08..970edad8b4c 100644 --- a/grpc-protocol/src/main/java/com/linecorp/armeria/server/grpc/protocol/package-info.java +++ b/grpc-protocol/src/main/java/com/linecorp/armeria/server/grpc/protocol/package-info.java @@ -26,8 +26,9 @@ * it's an advanced API.

    */ @UnstableApi -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.grpc.protocol; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/grpc/src/main/java/com/linecorp/armeria/client/grpc/GrpcClientBuilder.java b/grpc/src/main/java/com/linecorp/armeria/client/grpc/GrpcClientBuilder.java index 59e627af848..60455b93243 100644 --- a/grpc/src/main/java/com/linecorp/armeria/client/grpc/GrpcClientBuilder.java +++ b/grpc/src/main/java/com/linecorp/armeria/client/grpc/GrpcClientBuilder.java @@ -40,6 +40,7 @@ import java.util.function.Supplier; import org.curioswitch.common.protobuf.json.MessageMarshaller; +import org.jspecify.annotations.Nullable; import com.google.common.collect.ImmutableList; import com.google.protobuf.ByteString; @@ -68,7 +69,6 @@ import com.linecorp.armeria.common.SerializationFormat; import com.linecorp.armeria.common.SessionProtocol; import com.linecorp.armeria.common.SuccessFunction; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.auth.AuthToken; import com.linecorp.armeria.common.auth.BasicToken; diff --git a/grpc/src/main/java/com/linecorp/armeria/client/grpc/GrpcClientCall.java b/grpc/src/main/java/com/linecorp/armeria/client/grpc/GrpcClientCall.java index 9147b3b2497..d230a2944c3 100644 --- a/grpc/src/main/java/com/linecorp/armeria/client/grpc/GrpcClientCall.java +++ b/grpc/src/main/java/com/linecorp/armeria/client/grpc/GrpcClientCall.java @@ -20,8 +20,9 @@ import static com.linecorp.armeria.internal.client.grpc.InternalGrpcClientCall.GRPC_METHOD_DESCRIPTOR; import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import io.grpc.CallOptions; diff --git a/grpc/src/main/java/com/linecorp/armeria/client/grpc/GrpcClientStubFactory.java b/grpc/src/main/java/com/linecorp/armeria/client/grpc/GrpcClientStubFactory.java index 57eb09d86a2..396863b6c97 100644 --- a/grpc/src/main/java/com/linecorp/armeria/client/grpc/GrpcClientStubFactory.java +++ b/grpc/src/main/java/com/linecorp/armeria/client/grpc/GrpcClientStubFactory.java @@ -16,7 +16,7 @@ package com.linecorp.armeria.client.grpc; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; import io.grpc.Channel; import io.grpc.ServiceDescriptor; diff --git a/grpc/src/main/java/com/linecorp/armeria/client/grpc/package-info.java b/grpc/src/main/java/com/linecorp/armeria/client/grpc/package-info.java index 9185ced8709..3f1859b7343 100644 --- a/grpc/src/main/java/com/linecorp/armeria/client/grpc/package-info.java +++ b/grpc/src/main/java/com/linecorp/armeria/client/grpc/package-info.java @@ -17,7 +17,7 @@ /** * An armeria client that uses the gRPC wire protocol. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.client.grpc; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/grpc/src/main/java/com/linecorp/armeria/common/grpc/GoogleGrpcExceptionHandlerFunction.java b/grpc/src/main/java/com/linecorp/armeria/common/grpc/GoogleGrpcExceptionHandlerFunction.java index 9d32de1003e..caeff8a65b7 100644 --- a/grpc/src/main/java/com/linecorp/armeria/common/grpc/GoogleGrpcExceptionHandlerFunction.java +++ b/grpc/src/main/java/com/linecorp/armeria/common/grpc/GoogleGrpcExceptionHandlerFunction.java @@ -18,8 +18,9 @@ import static com.linecorp.armeria.common.grpc.GoogleGrpcExceptionHandlerFunctionUtil.handleException; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import io.grpc.Metadata; diff --git a/grpc/src/main/java/com/linecorp/armeria/common/grpc/GoogleGrpcExceptionHandlerFunctionUtil.java b/grpc/src/main/java/com/linecorp/armeria/common/grpc/GoogleGrpcExceptionHandlerFunctionUtil.java index 127118871b5..b7460272346 100644 --- a/grpc/src/main/java/com/linecorp/armeria/common/grpc/GoogleGrpcExceptionHandlerFunctionUtil.java +++ b/grpc/src/main/java/com/linecorp/armeria/common/grpc/GoogleGrpcExceptionHandlerFunctionUtil.java @@ -19,8 +19,9 @@ import static com.linecorp.armeria.internal.common.grpc.MetadataUtil.GRPC_STATUS_DETAILS_BIN_KEY; import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import io.grpc.Metadata; diff --git a/grpc/src/main/java/com/linecorp/armeria/common/grpc/GoogleGrpcStatusFunction.java b/grpc/src/main/java/com/linecorp/armeria/common/grpc/GoogleGrpcStatusFunction.java index 96661adddcf..f945f3046d4 100644 --- a/grpc/src/main/java/com/linecorp/armeria/common/grpc/GoogleGrpcStatusFunction.java +++ b/grpc/src/main/java/com/linecorp/armeria/common/grpc/GoogleGrpcStatusFunction.java @@ -18,8 +18,9 @@ import static com.linecorp.armeria.common.grpc.GoogleGrpcExceptionHandlerFunctionUtil.handleException; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import io.grpc.Metadata; diff --git a/grpc/src/main/java/com/linecorp/armeria/common/grpc/GrpcCallOptions.java b/grpc/src/main/java/com/linecorp/armeria/common/grpc/GrpcCallOptions.java index b863a8c2166..06ff6574137 100644 --- a/grpc/src/main/java/com/linecorp/armeria/common/grpc/GrpcCallOptions.java +++ b/grpc/src/main/java/com/linecorp/armeria/common/grpc/GrpcCallOptions.java @@ -16,9 +16,10 @@ package com.linecorp.armeria.common.grpc; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.grpc.GrpcClientCall; import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import io.grpc.CallOptions; diff --git a/grpc/src/main/java/com/linecorp/armeria/common/grpc/GrpcExceptionHandlerFunction.java b/grpc/src/main/java/com/linecorp/armeria/common/grpc/GrpcExceptionHandlerFunction.java index db7802033ad..cff442443a6 100644 --- a/grpc/src/main/java/com/linecorp/armeria/common/grpc/GrpcExceptionHandlerFunction.java +++ b/grpc/src/main/java/com/linecorp/armeria/common/grpc/GrpcExceptionHandlerFunction.java @@ -18,8 +18,9 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import io.grpc.Metadata; diff --git a/grpc/src/main/java/com/linecorp/armeria/common/grpc/GrpcJsonMarshallerBuilder.java b/grpc/src/main/java/com/linecorp/armeria/common/grpc/GrpcJsonMarshallerBuilder.java index 80707d0ac59..08042d554f1 100644 --- a/grpc/src/main/java/com/linecorp/armeria/common/grpc/GrpcJsonMarshallerBuilder.java +++ b/grpc/src/main/java/com/linecorp/armeria/common/grpc/GrpcJsonMarshallerBuilder.java @@ -22,11 +22,11 @@ import org.curioswitch.common.protobuf.json.MessageMarshaller; import org.curioswitch.common.protobuf.json.MessageMarshaller.Builder; +import org.jspecify.annotations.Nullable; import com.google.common.collect.ImmutableList; import com.google.protobuf.Message; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.grpc.DefaultJsonMarshaller; import io.grpc.ServiceDescriptor; diff --git a/grpc/src/main/java/com/linecorp/armeria/common/grpc/GrpcJsonUtil.java b/grpc/src/main/java/com/linecorp/armeria/common/grpc/GrpcJsonUtil.java index e7e915757ab..f5e004a4671 100644 --- a/grpc/src/main/java/com/linecorp/armeria/common/grpc/GrpcJsonUtil.java +++ b/grpc/src/main/java/com/linecorp/armeria/common/grpc/GrpcJsonUtil.java @@ -20,11 +20,10 @@ import java.util.function.Consumer; import org.curioswitch.common.protobuf.json.MessageMarshaller; +import org.jspecify.annotations.Nullable; import com.google.protobuf.Message; -import com.linecorp.armeria.common.annotation.Nullable; - import io.grpc.MethodDescriptor; import io.grpc.MethodDescriptor.Marshaller; import io.grpc.MethodDescriptor.PrototypeMarshaller; diff --git a/grpc/src/main/java/com/linecorp/armeria/common/grpc/GrpcStatusFunction.java b/grpc/src/main/java/com/linecorp/armeria/common/grpc/GrpcStatusFunction.java index 571a928d054..c17db7be39a 100644 --- a/grpc/src/main/java/com/linecorp/armeria/common/grpc/GrpcStatusFunction.java +++ b/grpc/src/main/java/com/linecorp/armeria/common/grpc/GrpcStatusFunction.java @@ -16,8 +16,9 @@ package com.linecorp.armeria.common.grpc; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import io.grpc.Metadata; diff --git a/grpc/src/main/java/com/linecorp/armeria/common/grpc/GrpcWebTrailers.java b/grpc/src/main/java/com/linecorp/armeria/common/grpc/GrpcWebTrailers.java index cd46a97f195..0af873a2363 100644 --- a/grpc/src/main/java/com/linecorp/armeria/common/grpc/GrpcWebTrailers.java +++ b/grpc/src/main/java/com/linecorp/armeria/common/grpc/GrpcWebTrailers.java @@ -16,11 +16,12 @@ package com.linecorp.armeria.common.grpc; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.retry.RetryRuleWithContent; import com.linecorp.armeria.common.AggregatedHttpResponse; import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.grpc.protocol.GrpcHeaderNames; import com.linecorp.armeria.internal.common.InternalGrpcWebTrailers; diff --git a/grpc/src/main/java/com/linecorp/armeria/common/grpc/GsonGrpcJsonMarshallerBuilder.java b/grpc/src/main/java/com/linecorp/armeria/common/grpc/GsonGrpcJsonMarshallerBuilder.java index ec5e9f45721..f5b118a0556 100644 --- a/grpc/src/main/java/com/linecorp/armeria/common/grpc/GsonGrpcJsonMarshallerBuilder.java +++ b/grpc/src/main/java/com/linecorp/armeria/common/grpc/GsonGrpcJsonMarshallerBuilder.java @@ -21,14 +21,13 @@ import java.util.function.Consumer; import java.util.function.Function; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.google.protobuf.Message; import com.google.protobuf.util.JsonFormat; -import com.linecorp.armeria.common.annotation.Nullable; - /** * A builder for creating a new {@link GrpcJsonMarshaller} that serializes and deserializes a {@link Message} * to and from JSON. diff --git a/grpc/src/main/java/com/linecorp/armeria/common/grpc/package-info.java b/grpc/src/main/java/com/linecorp/armeria/common/grpc/package-info.java index 472c56cc7e6..48a756704b4 100644 --- a/grpc/src/main/java/com/linecorp/armeria/common/grpc/package-info.java +++ b/grpc/src/main/java/com/linecorp/armeria/common/grpc/package-info.java @@ -17,7 +17,7 @@ /** * gRPC-related common classes. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.common.grpc; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/ArmeriaChannel.java b/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/ArmeriaChannel.java index efbb7d06635..9c237520fce 100644 --- a/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/ArmeriaChannel.java +++ b/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/ArmeriaChannel.java @@ -23,6 +23,8 @@ import java.util.Map; import java.util.function.BiFunction; +import org.jspecify.annotations.Nullable; + import com.google.common.base.Strings; import com.google.common.collect.Maps; @@ -46,7 +48,6 @@ import com.linecorp.armeria.common.Scheme; import com.linecorp.armeria.common.SerializationFormat; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.grpc.GrpcJsonMarshaller; import com.linecorp.armeria.common.logging.RequestLogProperty; import com.linecorp.armeria.common.util.SystemInfo; diff --git a/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/ArmeriaClientCall.java b/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/ArmeriaClientCall.java index cc317f03656..527479240c8 100644 --- a/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/ArmeriaClientCall.java +++ b/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/ArmeriaClientCall.java @@ -30,6 +30,7 @@ import java.util.concurrent.atomic.AtomicReferenceFieldUpdater; import java.util.function.BiFunction; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; import org.slf4j.Logger; @@ -45,7 +46,6 @@ import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.RequestHeadersBuilder; import com.linecorp.armeria.common.SerializationFormat; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.grpc.GrpcJsonMarshaller; import com.linecorp.armeria.common.grpc.GrpcSerializationFormats; import com.linecorp.armeria.common.grpc.protocol.ArmeriaMessageFramer; diff --git a/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/GrpcClientFactory.java b/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/GrpcClientFactory.java index 8dfbd9dfb6a..145a0d1d51b 100644 --- a/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/GrpcClientFactory.java +++ b/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/GrpcClientFactory.java @@ -29,6 +29,7 @@ import java.util.Set; import java.util.function.Function; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -52,7 +53,6 @@ import com.linecorp.armeria.common.Scheme; import com.linecorp.armeria.common.SerializationFormat; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.grpc.GrpcJsonMarshaller; import com.linecorp.armeria.common.grpc.GrpcSerializationFormats; import com.linecorp.armeria.common.util.Unwrappable; diff --git a/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/GrpcClientFactoryUtil.java b/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/GrpcClientFactoryUtil.java index 521b7ce3cb2..d05b9c0942a 100644 --- a/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/GrpcClientFactoryUtil.java +++ b/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/GrpcClientFactoryUtil.java @@ -19,7 +19,7 @@ import java.lang.reflect.Method; import java.lang.reflect.Modifier; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; import io.grpc.Channel; diff --git a/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/JavaGrpcClientStubFactory.java b/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/JavaGrpcClientStubFactory.java index 998a7ae681d..1f297849679 100644 --- a/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/JavaGrpcClientStubFactory.java +++ b/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/JavaGrpcClientStubFactory.java @@ -21,8 +21,9 @@ import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.grpc.GrpcClientStubFactory; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import io.grpc.Channel; diff --git a/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/KotlinGrpcClientStubFactory.java b/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/KotlinGrpcClientStubFactory.java index bae41445f4b..4395ab901ad 100644 --- a/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/KotlinGrpcClientStubFactory.java +++ b/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/KotlinGrpcClientStubFactory.java @@ -23,8 +23,9 @@ import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.grpc.GrpcClientStubFactory; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import io.grpc.BindableService; diff --git a/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/ReactorGrpcClientStubFactory.java b/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/ReactorGrpcClientStubFactory.java index e9852df8362..cad9ee47bc7 100644 --- a/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/ReactorGrpcClientStubFactory.java +++ b/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/ReactorGrpcClientStubFactory.java @@ -21,8 +21,9 @@ import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.grpc.GrpcClientStubFactory; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import io.grpc.Channel; diff --git a/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/ScalaPbGrpcClientStubFactory.java b/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/ScalaPbGrpcClientStubFactory.java index 8e9657c25e1..fd88076b3dc 100644 --- a/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/ScalaPbGrpcClientStubFactory.java +++ b/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/ScalaPbGrpcClientStubFactory.java @@ -21,8 +21,9 @@ import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.grpc.GrpcClientStubFactory; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import io.grpc.Channel; diff --git a/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/UnwrappableChannel.java b/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/UnwrappableChannel.java index 53f1e7b1986..4c1fbb60b9a 100644 --- a/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/UnwrappableChannel.java +++ b/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/UnwrappableChannel.java @@ -16,7 +16,8 @@ package com.linecorp.armeria.internal.client.grpc; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.util.Unwrappable; import io.grpc.CallOptions; diff --git a/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/package-info.java b/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/package-info.java index c35fd819151..5a5bbbec553 100644 --- a/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/package-info.java +++ b/grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/package-info.java @@ -17,7 +17,7 @@ /** * Various classes used internally. Anything in this package can be changed or removed at any time. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.client.grpc; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/grpc/src/main/java/com/linecorp/armeria/internal/common/grpc/ForwardingCompressor.java b/grpc/src/main/java/com/linecorp/armeria/internal/common/grpc/ForwardingCompressor.java index 4ec4bde43cc..da3d67e99cc 100644 --- a/grpc/src/main/java/com/linecorp/armeria/internal/common/grpc/ForwardingCompressor.java +++ b/grpc/src/main/java/com/linecorp/armeria/internal/common/grpc/ForwardingCompressor.java @@ -21,7 +21,8 @@ import java.io.IOException; import java.io.OutputStream; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.grpc.protocol.Compressor; import io.grpc.Codec.Identity; diff --git a/grpc/src/main/java/com/linecorp/armeria/internal/common/grpc/ForwardingDecompressor.java b/grpc/src/main/java/com/linecorp/armeria/internal/common/grpc/ForwardingDecompressor.java index 3e8cf7c467c..cca236d9839 100644 --- a/grpc/src/main/java/com/linecorp/armeria/internal/common/grpc/ForwardingDecompressor.java +++ b/grpc/src/main/java/com/linecorp/armeria/internal/common/grpc/ForwardingDecompressor.java @@ -21,7 +21,8 @@ import java.io.IOException; import java.io.InputStream; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.grpc.protocol.Decompressor; import io.grpc.Codec.Identity; diff --git a/grpc/src/main/java/com/linecorp/armeria/internal/common/grpc/GrpcLogUtil.java b/grpc/src/main/java/com/linecorp/armeria/internal/common/grpc/GrpcLogUtil.java index 5b3e6c965a7..ad1eba6188b 100644 --- a/grpc/src/main/java/com/linecorp/armeria/internal/common/grpc/GrpcLogUtil.java +++ b/grpc/src/main/java/com/linecorp/armeria/internal/common/grpc/GrpcLogUtil.java @@ -16,11 +16,12 @@ package com.linecorp.armeria.internal.common.grpc; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.linecorp.armeria.common.RpcRequest; import com.linecorp.armeria.common.RpcResponse; -import com.linecorp.armeria.common.annotation.Nullable; import io.grpc.MethodDescriptor; import io.grpc.Status; diff --git a/grpc/src/main/java/com/linecorp/armeria/internal/common/grpc/GrpcMessageMarshaller.java b/grpc/src/main/java/com/linecorp/armeria/internal/common/grpc/GrpcMessageMarshaller.java index 6a5f73ea09c..4247483336c 100644 --- a/grpc/src/main/java/com/linecorp/armeria/internal/common/grpc/GrpcMessageMarshaller.java +++ b/grpc/src/main/java/com/linecorp/armeria/internal/common/grpc/GrpcMessageMarshaller.java @@ -22,6 +22,8 @@ import java.io.IOException; import java.io.InputStream; +import org.jspecify.annotations.Nullable; + import com.google.common.io.ByteStreams; import com.google.protobuf.CodedInputStream; import com.google.protobuf.CodedOutputStream; @@ -30,7 +32,6 @@ import com.google.protobuf.UnsafeByteOperations; import com.linecorp.armeria.common.SerializationFormat; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.grpc.GrpcJsonMarshaller; import com.linecorp.armeria.common.grpc.GrpcSerializationFormats; import com.linecorp.armeria.common.grpc.protocol.DeframedMessage; diff --git a/grpc/src/main/java/com/linecorp/armeria/internal/common/grpc/HttpStreamDeframer.java b/grpc/src/main/java/com/linecorp/armeria/internal/common/grpc/HttpStreamDeframer.java index 9c52ccf4c71..764cf8354c4 100644 --- a/grpc/src/main/java/com/linecorp/armeria/internal/common/grpc/HttpStreamDeframer.java +++ b/grpc/src/main/java/com/linecorp/armeria/internal/common/grpc/HttpStreamDeframer.java @@ -19,13 +19,14 @@ import static com.google.common.base.Preconditions.checkState; import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.HttpObject; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.RequestContext; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.grpc.protocol.ArmeriaMessageDeframer; import com.linecorp.armeria.common.grpc.protocol.Decompressor; import com.linecorp.armeria.common.grpc.protocol.DeframedMessage; diff --git a/grpc/src/main/java/com/linecorp/armeria/internal/common/grpc/MetadataUtil.java b/grpc/src/main/java/com/linecorp/armeria/internal/common/grpc/MetadataUtil.java index 2ca8d888645..c60f7c4ae47 100644 --- a/grpc/src/main/java/com/linecorp/armeria/internal/common/grpc/MetadataUtil.java +++ b/grpc/src/main/java/com/linecorp/armeria/internal/common/grpc/MetadataUtil.java @@ -22,6 +22,7 @@ import java.util.Map.Entry; import java.util.Set; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -33,7 +34,6 @@ import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.HttpHeadersBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.grpc.protocol.GrpcHeaderNames; import io.grpc.InternalMetadata; diff --git a/grpc/src/main/java/com/linecorp/armeria/internal/common/grpc/StatusAndMetadata.java b/grpc/src/main/java/com/linecorp/armeria/internal/common/grpc/StatusAndMetadata.java index 2887829b801..3e20084b735 100644 --- a/grpc/src/main/java/com/linecorp/armeria/internal/common/grpc/StatusAndMetadata.java +++ b/grpc/src/main/java/com/linecorp/armeria/internal/common/grpc/StatusAndMetadata.java @@ -16,7 +16,7 @@ package com.linecorp.armeria.internal.common.grpc; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; import io.grpc.Metadata; import io.grpc.Status; diff --git a/grpc/src/main/java/com/linecorp/armeria/internal/common/grpc/TransportStatusListener.java b/grpc/src/main/java/com/linecorp/armeria/internal/common/grpc/TransportStatusListener.java index 95d31497651..d2ab17fe3ad 100644 --- a/grpc/src/main/java/com/linecorp/armeria/internal/common/grpc/TransportStatusListener.java +++ b/grpc/src/main/java/com/linecorp/armeria/internal/common/grpc/TransportStatusListener.java @@ -16,7 +16,7 @@ package com.linecorp.armeria.internal.common.grpc; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; import io.grpc.Metadata; import io.grpc.Status; diff --git a/grpc/src/main/java/com/linecorp/armeria/internal/common/grpc/package-info.java b/grpc/src/main/java/com/linecorp/armeria/internal/common/grpc/package-info.java index 2f3da6cc3d9..1235a46f3ec 100644 --- a/grpc/src/main/java/com/linecorp/armeria/internal/common/grpc/package-info.java +++ b/grpc/src/main/java/com/linecorp/armeria/internal/common/grpc/package-info.java @@ -17,7 +17,7 @@ /** * Various classes used internally. Anything in this package can be changed or removed at any time. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.common.grpc; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/grpc/src/main/java/com/linecorp/armeria/internal/server/grpc/AbstractServerCall.java b/grpc/src/main/java/com/linecorp/armeria/internal/server/grpc/AbstractServerCall.java index 06d30a88fb4..f4ee84d2bd8 100644 --- a/grpc/src/main/java/com/linecorp/armeria/internal/server/grpc/AbstractServerCall.java +++ b/grpc/src/main/java/com/linecorp/armeria/internal/server/grpc/AbstractServerCall.java @@ -26,6 +26,7 @@ import java.util.List; import java.util.concurrent.Executor; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -41,7 +42,6 @@ import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.SerializationFormat; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.grpc.GrpcJsonMarshaller; import com.linecorp.armeria.common.grpc.GrpcSerializationFormats; import com.linecorp.armeria.common.grpc.ThrowableProto; @@ -118,8 +118,7 @@ public abstract class AbstractServerCall extends ServerCall { private final InternalGrpcExceptionHandler exceptionHandler; // Only set once. - @Nullable - private ServerCall.Listener listener; + private ServerCall.@Nullable Listener listener; // Message compression defaults to being enabled unless a user disables it using a server interceptor. private boolean messageCompression = true; diff --git a/grpc/src/main/java/com/linecorp/armeria/internal/server/grpc/GrpcDocServicePlugin.java b/grpc/src/main/java/com/linecorp/armeria/internal/server/grpc/GrpcDocServicePlugin.java index 84b57b94d81..57726d213dd 100644 --- a/grpc/src/main/java/com/linecorp/armeria/internal/server/grpc/GrpcDocServicePlugin.java +++ b/grpc/src/main/java/com/linecorp/armeria/internal/server/grpc/GrpcDocServicePlugin.java @@ -34,6 +34,8 @@ import java.util.regex.Pattern; import java.util.stream.Collectors; +import org.jspecify.annotations.Nullable; + import com.google.common.annotations.VisibleForTesting; import com.google.common.base.Strings; import com.google.common.collect.HashMultimap; @@ -54,7 +56,6 @@ import com.linecorp.armeria.common.HttpMethod; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.SerializationFormat; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.grpc.GrpcSerializationFormats; import com.linecorp.armeria.internal.server.grpc.HttpEndpointSpecification.Parameter; import com.linecorp.armeria.server.Route; diff --git a/grpc/src/main/java/com/linecorp/armeria/internal/server/grpc/GrpcDocStringExtractor.java b/grpc/src/main/java/com/linecorp/armeria/internal/server/grpc/GrpcDocStringExtractor.java index 70da68d86a5..d9b3adaeaf8 100644 --- a/grpc/src/main/java/com/linecorp/armeria/internal/server/grpc/GrpcDocStringExtractor.java +++ b/grpc/src/main/java/com/linecorp/armeria/internal/server/grpc/GrpcDocStringExtractor.java @@ -27,6 +27,7 @@ import java.util.Set; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -38,7 +39,6 @@ import com.google.protobuf.DescriptorProtos.FileDescriptorSet; import com.google.protobuf.DescriptorProtos.ServiceDescriptorProto; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.docs.DocService; import com.linecorp.armeria.server.docs.DocStringExtractor; diff --git a/grpc/src/main/java/com/linecorp/armeria/internal/server/grpc/HttpEndpointSupport.java b/grpc/src/main/java/com/linecorp/armeria/internal/server/grpc/HttpEndpointSupport.java index 8c279de0c42..e63d721617b 100644 --- a/grpc/src/main/java/com/linecorp/armeria/internal/server/grpc/HttpEndpointSupport.java +++ b/grpc/src/main/java/com/linecorp/armeria/internal/server/grpc/HttpEndpointSupport.java @@ -16,7 +16,8 @@ package com.linecorp.armeria.internal.server.grpc; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.server.Route; import com.linecorp.armeria.server.docs.DocService; diff --git a/grpc/src/main/java/com/linecorp/armeria/internal/server/grpc/ServerStatusAndMetadata.java b/grpc/src/main/java/com/linecorp/armeria/internal/server/grpc/ServerStatusAndMetadata.java index 52d218e1720..c03e862e34e 100644 --- a/grpc/src/main/java/com/linecorp/armeria/internal/server/grpc/ServerStatusAndMetadata.java +++ b/grpc/src/main/java/com/linecorp/armeria/internal/server/grpc/ServerStatusAndMetadata.java @@ -16,9 +16,10 @@ package com.linecorp.armeria.internal.server.grpc; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.grpc.StatusAndMetadata; import io.grpc.Metadata; diff --git a/grpc/src/main/java/com/linecorp/armeria/internal/server/grpc/package-info.java b/grpc/src/main/java/com/linecorp/armeria/internal/server/grpc/package-info.java index 31ba69c49e1..b655b9aaea4 100644 --- a/grpc/src/main/java/com/linecorp/armeria/internal/server/grpc/package-info.java +++ b/grpc/src/main/java/com/linecorp/armeria/internal/server/grpc/package-info.java @@ -17,7 +17,7 @@ /** * Various classes used internally. Anything in this package can be changed or removed at any time. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.server.grpc; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/grpc/src/main/java/com/linecorp/armeria/server/grpc/AbstractUnframedGrpcService.java b/grpc/src/main/java/com/linecorp/armeria/server/grpc/AbstractUnframedGrpcService.java index 6d6640642cc..3510f52948b 100644 --- a/grpc/src/main/java/com/linecorp/armeria/server/grpc/AbstractUnframedGrpcService.java +++ b/grpc/src/main/java/com/linecorp/armeria/server/grpc/AbstractUnframedGrpcService.java @@ -24,6 +24,7 @@ import java.util.concurrent.CompletableFuture; import java.util.function.Function; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; import org.slf4j.Logger; @@ -43,7 +44,6 @@ import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.ResponseHeadersBuilder; import com.linecorp.armeria.common.SerializationFormat; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.grpc.GrpcSerializationFormats; import com.linecorp.armeria.common.grpc.protocol.ArmeriaMessageDeframer; import com.linecorp.armeria.common.grpc.protocol.ArmeriaMessageFramer; diff --git a/grpc/src/main/java/com/linecorp/armeria/server/grpc/ArmeriaCoroutineContextInterceptor.java b/grpc/src/main/java/com/linecorp/armeria/server/grpc/ArmeriaCoroutineContextInterceptor.java index 7b5c8b61b2e..c97ee0ac516 100644 --- a/grpc/src/main/java/com/linecorp/armeria/server/grpc/ArmeriaCoroutineContextInterceptor.java +++ b/grpc/src/main/java/com/linecorp/armeria/server/grpc/ArmeriaCoroutineContextInterceptor.java @@ -26,13 +26,13 @@ import java.util.ServiceLoader; import java.util.concurrent.ScheduledExecutorService; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.google.common.collect.ImmutableList; import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.ServiceRequestContext; import io.grpc.Metadata; diff --git a/grpc/src/main/java/com/linecorp/armeria/server/grpc/DefaultUnframedGrpcErrorHandler.java b/grpc/src/main/java/com/linecorp/armeria/server/grpc/DefaultUnframedGrpcErrorHandler.java index fade0593e84..b65bdbe8303 100644 --- a/grpc/src/main/java/com/linecorp/armeria/server/grpc/DefaultUnframedGrpcErrorHandler.java +++ b/grpc/src/main/java/com/linecorp/armeria/server/grpc/DefaultUnframedGrpcErrorHandler.java @@ -17,11 +17,11 @@ package com.linecorp.armeria.server.grpc; import org.curioswitch.common.protobuf.json.MessageMarshaller; +import org.jspecify.annotations.Nullable; import com.linecorp.armeria.common.AggregatedHttpResponse; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.MediaType; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.ServiceRequestContext; import io.grpc.Status; diff --git a/grpc/src/main/java/com/linecorp/armeria/server/grpc/DeferredListener.java b/grpc/src/main/java/com/linecorp/armeria/server/grpc/DeferredListener.java index a61aaa7bfa2..34c6a8a3381 100644 --- a/grpc/src/main/java/com/linecorp/armeria/server/grpc/DeferredListener.java +++ b/grpc/src/main/java/com/linecorp/armeria/server/grpc/DeferredListener.java @@ -24,7 +24,8 @@ import java.util.concurrent.Executor; import java.util.function.Consumer; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.internal.server.grpc.AbstractServerCall; import io.grpc.ServerCall; diff --git a/grpc/src/main/java/com/linecorp/armeria/server/grpc/FramedGrpcService.java b/grpc/src/main/java/com/linecorp/armeria/server/grpc/FramedGrpcService.java index e9ac96ae0b0..114a9695ae4 100644 --- a/grpc/src/main/java/com/linecorp/armeria/server/grpc/FramedGrpcService.java +++ b/grpc/src/main/java/com/linecorp/armeria/server/grpc/FramedGrpcService.java @@ -33,6 +33,7 @@ import java.util.concurrent.TimeUnit; import java.util.function.Function; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -51,7 +52,6 @@ import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.ResponseHeadersBuilder; import com.linecorp.armeria.common.SerializationFormat; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.grpc.GrpcJsonMarshaller; import com.linecorp.armeria.common.grpc.GrpcSerializationFormats; import com.linecorp.armeria.common.grpc.protocol.ArmeriaMessageDeframer; diff --git a/grpc/src/main/java/com/linecorp/armeria/server/grpc/GrpcDecoratingService.java b/grpc/src/main/java/com/linecorp/armeria/server/grpc/GrpcDecoratingService.java index 25fa68d7d30..ea0dbf41abf 100644 --- a/grpc/src/main/java/com/linecorp/armeria/server/grpc/GrpcDecoratingService.java +++ b/grpc/src/main/java/com/linecorp/armeria/server/grpc/GrpcDecoratingService.java @@ -20,13 +20,14 @@ import java.util.Map; import java.util.Set; +import org.jspecify.annotations.Nullable; + import com.google.common.annotations.VisibleForTesting; import com.linecorp.armeria.common.DependencyInjector; import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.SerializationFormat; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.HttpService; import com.linecorp.armeria.server.Route; import com.linecorp.armeria.server.ServiceConfig; diff --git a/grpc/src/main/java/com/linecorp/armeria/server/grpc/GrpcRequestUtil.java b/grpc/src/main/java/com/linecorp/armeria/server/grpc/GrpcRequestUtil.java index 0e2aad6fe95..30f2f4944bf 100644 --- a/grpc/src/main/java/com/linecorp/armeria/server/grpc/GrpcRequestUtil.java +++ b/grpc/src/main/java/com/linecorp/armeria/server/grpc/GrpcRequestUtil.java @@ -16,7 +16,8 @@ package com.linecorp.armeria.server.grpc; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.server.ServiceRequestContext; /** diff --git a/grpc/src/main/java/com/linecorp/armeria/server/grpc/GrpcService.java b/grpc/src/main/java/com/linecorp/armeria/server/grpc/GrpcService.java index affdc7da915..feea54b4672 100644 --- a/grpc/src/main/java/com/linecorp/armeria/server/grpc/GrpcService.java +++ b/grpc/src/main/java/com/linecorp/armeria/server/grpc/GrpcService.java @@ -23,8 +23,9 @@ import java.util.Set; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.SerializationFormat; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.server.HttpService; import com.linecorp.armeria.server.HttpServiceWithRoutes; diff --git a/grpc/src/main/java/com/linecorp/armeria/server/grpc/GrpcServiceBuilder.java b/grpc/src/main/java/com/linecorp/armeria/server/grpc/GrpcServiceBuilder.java index 772b6cf454a..a8d9c07e937 100644 --- a/grpc/src/main/java/com/linecorp/armeria/server/grpc/GrpcServiceBuilder.java +++ b/grpc/src/main/java/com/linecorp/armeria/server/grpc/GrpcServiceBuilder.java @@ -29,6 +29,7 @@ import java.util.function.Function; import org.curioswitch.common.protobuf.json.MessageMarshaller; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -41,7 +42,6 @@ import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.RequestContext; import com.linecorp.armeria.common.SerializationFormat; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.grpc.GrpcExceptionHandlerFunction; import com.linecorp.armeria.common.grpc.GrpcExceptionHandlerFunctionBuilder; @@ -118,8 +118,7 @@ public final class GrpcServiceBuilder { @Nullable private GrpcExceptionHandlerFunction exceptionHandler; - @Nullable - private ImmutableList.Builder interceptors; + private ImmutableList.@Nullable Builder interceptors; @Nullable private UnframedGrpcErrorHandler unframedGrpcErrorHandler; diff --git a/grpc/src/main/java/com/linecorp/armeria/server/grpc/HandlerRegistry.java b/grpc/src/main/java/com/linecorp/armeria/server/grpc/HandlerRegistry.java index b82c97c4331..ab423851ff5 100644 --- a/grpc/src/main/java/com/linecorp/armeria/server/grpc/HandlerRegistry.java +++ b/grpc/src/main/java/com/linecorp/armeria/server/grpc/HandlerRegistry.java @@ -61,6 +61,8 @@ import java.util.Set; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.google.common.annotations.VisibleForTesting; import com.google.common.base.CaseFormat; import com.google.common.base.Converter; @@ -69,7 +71,6 @@ import com.google.common.collect.ImmutableSet; import com.linecorp.armeria.common.DependencyInjector; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.grpc.GrpcExceptionHandlerFunction; import com.linecorp.armeria.internal.common.grpc.InternalGrpcExceptionHandler; import com.linecorp.armeria.internal.server.annotation.AnnotationUtil; diff --git a/grpc/src/main/java/com/linecorp/armeria/server/grpc/HttpJsonTranscodingOptionsBuilder.java b/grpc/src/main/java/com/linecorp/armeria/server/grpc/HttpJsonTranscodingOptionsBuilder.java index d1842d2d3c8..4ef770c176e 100644 --- a/grpc/src/main/java/com/linecorp/armeria/server/grpc/HttpJsonTranscodingOptionsBuilder.java +++ b/grpc/src/main/java/com/linecorp/armeria/server/grpc/HttpJsonTranscodingOptionsBuilder.java @@ -24,6 +24,8 @@ import java.util.EnumSet; import java.util.Set; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; import com.google.common.collect.Iterables; @@ -31,7 +33,6 @@ import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.QueryParams; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/grpc/src/main/java/com/linecorp/armeria/server/grpc/HttpJsonTranscodingPathParser.java b/grpc/src/main/java/com/linecorp/armeria/server/grpc/HttpJsonTranscodingPathParser.java index d2308bd343d..4dfb8784e50 100644 --- a/grpc/src/main/java/com/linecorp/armeria/server/grpc/HttpJsonTranscodingPathParser.java +++ b/grpc/src/main/java/com/linecorp/armeria/server/grpc/HttpJsonTranscodingPathParser.java @@ -27,11 +27,12 @@ import java.util.regex.Pattern; import java.util.stream.Collectors; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.util.StringUtil; import com.linecorp.armeria.server.grpc.HttpJsonTranscodingPathParser.PathSegment.PathMappingType; diff --git a/grpc/src/main/java/com/linecorp/armeria/server/grpc/HttpJsonTranscodingRouteAndPathVariables.java b/grpc/src/main/java/com/linecorp/armeria/server/grpc/HttpJsonTranscodingRouteAndPathVariables.java index 68852768dc9..23847f56ff2 100644 --- a/grpc/src/main/java/com/linecorp/armeria/server/grpc/HttpJsonTranscodingRouteAndPathVariables.java +++ b/grpc/src/main/java/com/linecorp/armeria/server/grpc/HttpJsonTranscodingRouteAndPathVariables.java @@ -21,6 +21,7 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -28,7 +29,6 @@ import com.google.common.collect.ImmutableList; import com.linecorp.armeria.common.HttpMethod; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.server.RouteUtil; import com.linecorp.armeria.server.Route; import com.linecorp.armeria.server.RouteBuilder; diff --git a/grpc/src/main/java/com/linecorp/armeria/server/grpc/HttpJsonTranscodingService.java b/grpc/src/main/java/com/linecorp/armeria/server/grpc/HttpJsonTranscodingService.java index b2df88d0395..ad34f89e9f7 100644 --- a/grpc/src/main/java/com/linecorp/armeria/server/grpc/HttpJsonTranscodingService.java +++ b/grpc/src/main/java/com/linecorp/armeria/server/grpc/HttpJsonTranscodingService.java @@ -38,6 +38,7 @@ import java.util.function.Function; import java.util.stream.Collectors; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -97,7 +98,6 @@ import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.RequestHeadersBuilder; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.grpc.GrpcSerializationFormats; import com.linecorp.armeria.common.grpc.protocol.GrpcHeaderNames; import com.linecorp.armeria.common.logging.RequestLogProperty; diff --git a/grpc/src/main/java/com/linecorp/armeria/server/grpc/ProtoReflectionServiceInterceptor.java b/grpc/src/main/java/com/linecorp/armeria/server/grpc/ProtoReflectionServiceInterceptor.java index 6363358bafa..f76ef6f751f 100644 --- a/grpc/src/main/java/com/linecorp/armeria/server/grpc/ProtoReflectionServiceInterceptor.java +++ b/grpc/src/main/java/com/linecorp/armeria/server/grpc/ProtoReflectionServiceInterceptor.java @@ -16,7 +16,7 @@ package com.linecorp.armeria.server.grpc; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; import io.grpc.Context; import io.grpc.Contexts; diff --git a/grpc/src/main/java/com/linecorp/armeria/server/grpc/ServerCallUtil.java b/grpc/src/main/java/com/linecorp/armeria/server/grpc/ServerCallUtil.java index 0996ad7c8e8..6a236cee644 100644 --- a/grpc/src/main/java/com/linecorp/armeria/server/grpc/ServerCallUtil.java +++ b/grpc/src/main/java/com/linecorp/armeria/server/grpc/ServerCallUtil.java @@ -20,7 +20,8 @@ import java.lang.invoke.MethodHandles; import java.lang.reflect.Method; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.internal.server.grpc.AbstractServerCall; import com.linecorp.armeria.server.ServiceRequestContext; diff --git a/grpc/src/main/java/com/linecorp/armeria/server/grpc/StreamingServerCall.java b/grpc/src/main/java/com/linecorp/armeria/server/grpc/StreamingServerCall.java index 5d5611be04a..ec9f57c793a 100644 --- a/grpc/src/main/java/com/linecorp/armeria/server/grpc/StreamingServerCall.java +++ b/grpc/src/main/java/com/linecorp/armeria/server/grpc/StreamingServerCall.java @@ -22,6 +22,7 @@ import java.util.concurrent.Executor; import java.util.concurrent.atomic.AtomicIntegerFieldUpdater; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; @@ -30,7 +31,6 @@ import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.SerializationFormat; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.grpc.GrpcJsonMarshaller; import com.linecorp.armeria.common.grpc.GrpcSerializationFormats; import com.linecorp.armeria.common.grpc.protocol.DeframedMessage; diff --git a/grpc/src/main/java/com/linecorp/armeria/server/grpc/UnaryMessageDeframer.java b/grpc/src/main/java/com/linecorp/armeria/server/grpc/UnaryMessageDeframer.java index 9d06bed152f..12ddb9595a5 100644 --- a/grpc/src/main/java/com/linecorp/armeria/server/grpc/UnaryMessageDeframer.java +++ b/grpc/src/main/java/com/linecorp/armeria/server/grpc/UnaryMessageDeframer.java @@ -18,9 +18,10 @@ import java.util.List; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpData; import com.linecorp.armeria.common.HttpObject; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.grpc.protocol.AbstractMessageDeframer; import com.linecorp.armeria.common.grpc.protocol.Decompressor; import com.linecorp.armeria.common.grpc.protocol.DeframedMessage; diff --git a/grpc/src/main/java/com/linecorp/armeria/server/grpc/UnaryServerCall.java b/grpc/src/main/java/com/linecorp/armeria/server/grpc/UnaryServerCall.java index 687e1692de4..68f8ccf31af 100644 --- a/grpc/src/main/java/com/linecorp/armeria/server/grpc/UnaryServerCall.java +++ b/grpc/src/main/java/com/linecorp/armeria/server/grpc/UnaryServerCall.java @@ -23,6 +23,8 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.Executor; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.AggregationOptions; import com.linecorp.armeria.common.HttpData; import com.linecorp.armeria.common.HttpHeaders; @@ -33,7 +35,6 @@ import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.ResponseHeadersBuilder; import com.linecorp.armeria.common.SerializationFormat; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.grpc.GrpcJsonMarshaller; import com.linecorp.armeria.common.grpc.GrpcSerializationFormats; import com.linecorp.armeria.internal.common.grpc.GrpcLogUtil; diff --git a/grpc/src/main/java/com/linecorp/armeria/server/grpc/UnframedGrpcErrorHandlerBuilder.java b/grpc/src/main/java/com/linecorp/armeria/server/grpc/UnframedGrpcErrorHandlerBuilder.java index b184be0c042..efe642893ca 100644 --- a/grpc/src/main/java/com/linecorp/armeria/server/grpc/UnframedGrpcErrorHandlerBuilder.java +++ b/grpc/src/main/java/com/linecorp/armeria/server/grpc/UnframedGrpcErrorHandlerBuilder.java @@ -26,10 +26,10 @@ import java.util.Set; import org.curioswitch.common.protobuf.json.MessageMarshaller; +import org.jspecify.annotations.Nullable; import com.google.protobuf.Message; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/grpc/src/main/java/com/linecorp/armeria/server/grpc/UnframedGrpcErrorHandlerUtil.java b/grpc/src/main/java/com/linecorp/armeria/server/grpc/UnframedGrpcErrorHandlerUtil.java index ff976d6d3be..cf260497529 100644 --- a/grpc/src/main/java/com/linecorp/armeria/server/grpc/UnframedGrpcErrorHandlerUtil.java +++ b/grpc/src/main/java/com/linecorp/armeria/server/grpc/UnframedGrpcErrorHandlerUtil.java @@ -18,7 +18,8 @@ import static java.util.Objects.requireNonNull; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.logging.RequestLogAccess; import com.linecorp.armeria.common.logging.RequestLogProperty; import com.linecorp.armeria.server.ServiceRequestContext; diff --git a/grpc/src/main/java/com/linecorp/armeria/server/grpc/UnframedGrpcService.java b/grpc/src/main/java/com/linecorp/armeria/server/grpc/UnframedGrpcService.java index aa69eff27bc..bfedeb7ed8c 100644 --- a/grpc/src/main/java/com/linecorp/armeria/server/grpc/UnframedGrpcService.java +++ b/grpc/src/main/java/com/linecorp/armeria/server/grpc/UnframedGrpcService.java @@ -22,6 +22,8 @@ import java.util.concurrent.CompletableFuture; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.AggregatedHttpResponse; import com.linecorp.armeria.common.AggregationOptions; import com.linecorp.armeria.common.HttpRequest; @@ -32,7 +34,6 @@ import com.linecorp.armeria.common.RequestHeadersBuilder; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.SerializationFormat; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.grpc.GrpcSerializationFormats; import com.linecorp.armeria.common.grpc.protocol.GrpcHeaderNames; import com.linecorp.armeria.common.logging.RequestLogProperty; diff --git a/grpc/src/main/java/com/linecorp/armeria/server/grpc/UnframedGrpcStatusMappingFunction.java b/grpc/src/main/java/com/linecorp/armeria/server/grpc/UnframedGrpcStatusMappingFunction.java index 72f94ae1c62..2c54fd0223b 100644 --- a/grpc/src/main/java/com/linecorp/armeria/server/grpc/UnframedGrpcStatusMappingFunction.java +++ b/grpc/src/main/java/com/linecorp/armeria/server/grpc/UnframedGrpcStatusMappingFunction.java @@ -18,8 +18,9 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpStatus; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.grpc.GrpcStatus; import com.linecorp.armeria.server.ServiceRequestContext; diff --git a/grpc/src/main/java/com/linecorp/armeria/server/grpc/package-info.java b/grpc/src/main/java/com/linecorp/armeria/server/grpc/package-info.java index dd5d3203538..d054526250f 100644 --- a/grpc/src/main/java/com/linecorp/armeria/server/grpc/package-info.java +++ b/grpc/src/main/java/com/linecorp/armeria/server/grpc/package-info.java @@ -17,7 +17,7 @@ /** * Allows an Armeria server to host a gRPC API using the gRPC wire protocol. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.grpc; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/grpc/src/main/java/com/linecorp/armeria/unsafe/grpc/package-info.java b/grpc/src/main/java/com/linecorp/armeria/unsafe/grpc/package-info.java index 5ccc807bfb3..7fb32d8bc1a 100644 --- a/grpc/src/main/java/com/linecorp/armeria/unsafe/grpc/package-info.java +++ b/grpc/src/main/java/com/linecorp/armeria/unsafe/grpc/package-info.java @@ -19,9 +19,10 @@ * when dealing with large buffers but require careful memory management or there will be memory leaks. Only use * these methods if you really know what you're doing. */ -@NonNullByDefault +@NullMarked @UnstableApi package com.linecorp.armeria.unsafe.grpc; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/grpc/src/test/java/com/linecorp/armeria/client/grpc/GrpcClientBuilderTest.java b/grpc/src/test/java/com/linecorp/armeria/client/grpc/GrpcClientBuilderTest.java index 338c3f503be..2410e0a7e44 100644 --- a/grpc/src/test/java/com/linecorp/armeria/client/grpc/GrpcClientBuilderTest.java +++ b/grpc/src/test/java/com/linecorp/armeria/client/grpc/GrpcClientBuilderTest.java @@ -23,6 +23,7 @@ import java.io.InputStream; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; import org.junit.jupiter.params.ParameterizedTest; @@ -49,7 +50,6 @@ import com.linecorp.armeria.common.Scheme; import com.linecorp.armeria.common.SerializationFormat; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.grpc.GrpcExceptionHandlerFunction; import com.linecorp.armeria.common.grpc.GrpcSerializationFormats; import com.linecorp.armeria.internal.client.ClientBuilderParamsUtil; diff --git a/grpc/src/test/java/com/linecorp/armeria/client/grpc/GrpcClientListenerTest.java b/grpc/src/test/java/com/linecorp/armeria/client/grpc/GrpcClientListenerTest.java index beef1667df7..18e5ca36b2e 100644 --- a/grpc/src/test/java/com/linecorp/armeria/client/grpc/GrpcClientListenerTest.java +++ b/grpc/src/test/java/com/linecorp/armeria/client/grpc/GrpcClientListenerTest.java @@ -23,13 +23,13 @@ import java.util.concurrent.ScheduledExecutorService; import org.hamcrest.Matchers; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpStatus; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.grpc.protocol.GrpcHeaderNames; import com.linecorp.armeria.internal.common.grpc.TestServiceImpl; import com.linecorp.armeria.server.ServerBuilder; diff --git a/grpc/src/test/java/com/linecorp/armeria/client/grpc/GrpcClientTest.java b/grpc/src/test/java/com/linecorp/armeria/client/grpc/GrpcClientTest.java index 77453933a91..7a259b75b78 100644 --- a/grpc/src/test/java/com/linecorp/armeria/client/grpc/GrpcClientTest.java +++ b/grpc/src/test/java/com/linecorp/armeria/client/grpc/GrpcClientTest.java @@ -47,6 +47,7 @@ import java.util.concurrent.atomic.AtomicReference; import java.util.function.BiConsumer; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; @@ -77,7 +78,6 @@ import com.linecorp.armeria.common.RpcRequest; import com.linecorp.armeria.common.RpcResponse; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.grpc.GrpcCallOptions; import com.linecorp.armeria.common.grpc.GrpcExceptionHandlerFunction; import com.linecorp.armeria.common.grpc.GrpcSerializationFormats; diff --git a/grpc/src/test/java/com/linecorp/armeria/client/grpc/LazyDynamicEndpointGroupTest.java b/grpc/src/test/java/com/linecorp/armeria/client/grpc/LazyDynamicEndpointGroupTest.java index 1bafdd27d78..0f4dceb1830 100644 --- a/grpc/src/test/java/com/linecorp/armeria/client/grpc/LazyDynamicEndpointGroupTest.java +++ b/grpc/src/test/java/com/linecorp/armeria/client/grpc/LazyDynamicEndpointGroupTest.java @@ -27,6 +27,7 @@ import java.util.concurrent.atomic.AtomicReference; import org.hamcrest.Matchers; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; @@ -43,7 +44,6 @@ import com.linecorp.armeria.client.logging.LoggingClient; import com.linecorp.armeria.common.Scheme; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.grpc.GrpcSerializationFormats; import com.linecorp.armeria.internal.common.grpc.TestServiceImpl; import com.linecorp.armeria.internal.testing.AnticipatedException; diff --git a/grpc/src/test/java/com/linecorp/armeria/common/grpc/GrpcMeterIdPrefixFunctionTest.java b/grpc/src/test/java/com/linecorp/armeria/common/grpc/GrpcMeterIdPrefixFunctionTest.java index 898090c1c99..4fa6840391a 100644 --- a/grpc/src/test/java/com/linecorp/armeria/common/grpc/GrpcMeterIdPrefixFunctionTest.java +++ b/grpc/src/test/java/com/linecorp/armeria/common/grpc/GrpcMeterIdPrefixFunctionTest.java @@ -25,6 +25,7 @@ import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.extension.ExtensionContext; import org.junit.jupiter.api.extension.RegisterExtension; @@ -43,7 +44,6 @@ import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.SerializationFormat; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.grpc.protocol.GrpcHeaderNames; import com.linecorp.armeria.common.logging.RequestLogAccess; import com.linecorp.armeria.common.logging.RequestLogProperty; diff --git a/grpc/src/test/java/com/linecorp/armeria/internal/common/grpc/StreamRecorder.java b/grpc/src/test/java/com/linecorp/armeria/internal/common/grpc/StreamRecorder.java index 760bef5b251..80e7a00aaa8 100644 --- a/grpc/src/test/java/com/linecorp/armeria/internal/common/grpc/StreamRecorder.java +++ b/grpc/src/test/java/com/linecorp/armeria/internal/common/grpc/StreamRecorder.java @@ -52,11 +52,11 @@ import java.util.concurrent.CountDownLatch; import java.util.concurrent.TimeUnit; +import org.jspecify.annotations.Nullable; + import com.google.common.util.concurrent.ListenableFuture; import com.google.common.util.concurrent.SettableFuture; -import com.linecorp.armeria.common.annotation.Nullable; - import io.grpc.ExperimentalApi; import io.grpc.stub.StreamObserver; diff --git a/grpc/src/test/java/com/linecorp/armeria/it/grpc/GrpcMetricsIntegrationTest.java b/grpc/src/test/java/com/linecorp/armeria/it/grpc/GrpcMetricsIntegrationTest.java index 44bac4f4586..297d7132d41 100644 --- a/grpc/src/test/java/com/linecorp/armeria/it/grpc/GrpcMetricsIntegrationTest.java +++ b/grpc/src/test/java/com/linecorp/armeria/it/grpc/GrpcMetricsIntegrationTest.java @@ -23,6 +23,7 @@ import java.util.concurrent.TimeUnit; +import org.jspecify.annotations.Nullable; import org.junit.AfterClass; import org.junit.ClassRule; import org.junit.Rule; @@ -40,7 +41,6 @@ import com.linecorp.armeria.client.metric.MetricCollectingClient; import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.MediaType; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.grpc.GrpcMeterIdPrefixFunction; import com.linecorp.armeria.common.metric.MeterIdPrefix; import com.linecorp.armeria.common.metric.MoreMeters; diff --git a/grpc/src/test/java/com/linecorp/armeria/server/grpc/DeferredListenerTest.java b/grpc/src/test/java/com/linecorp/armeria/server/grpc/DeferredListenerTest.java index c7b0db4a2f6..0af7110fdad 100644 --- a/grpc/src/test/java/com/linecorp/armeria/server/grpc/DeferredListenerTest.java +++ b/grpc/src/test/java/com/linecorp/armeria/server/grpc/DeferredListenerTest.java @@ -26,6 +26,7 @@ import java.util.concurrent.CopyOnWriteArrayList; import java.util.concurrent.Executor; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.ValueSource; @@ -37,7 +38,6 @@ import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.grpc.GrpcExceptionHandlerFunction; import com.linecorp.armeria.common.grpc.GrpcSerializationFormats; import com.linecorp.armeria.internal.common.grpc.InternalGrpcExceptionHandler; diff --git a/grpc/src/test/java/com/linecorp/armeria/server/grpc/GrpcExceptionHandlerAnnotationOnlyTest.java b/grpc/src/test/java/com/linecorp/armeria/server/grpc/GrpcExceptionHandlerAnnotationOnlyTest.java index fe6394647ec..b7ceb9e77d1 100644 --- a/grpc/src/test/java/com/linecorp/armeria/server/grpc/GrpcExceptionHandlerAnnotationOnlyTest.java +++ b/grpc/src/test/java/com/linecorp/armeria/server/grpc/GrpcExceptionHandlerAnnotationOnlyTest.java @@ -23,13 +23,13 @@ import java.util.concurrent.BlockingDeque; import java.util.concurrent.LinkedBlockingDeque; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; import com.linecorp.armeria.client.grpc.GrpcClients; import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.grpc.GrpcExceptionHandlerFunction; import com.linecorp.armeria.server.ServerBuilder; import com.linecorp.armeria.server.logging.LoggingService; diff --git a/grpc/src/test/java/com/linecorp/armeria/server/grpc/GrpcExceptionHandlerTest.java b/grpc/src/test/java/com/linecorp/armeria/server/grpc/GrpcExceptionHandlerTest.java index 18f85dbf5ed..22b80d66fc6 100644 --- a/grpc/src/test/java/com/linecorp/armeria/server/grpc/GrpcExceptionHandlerTest.java +++ b/grpc/src/test/java/com/linecorp/armeria/server/grpc/GrpcExceptionHandlerTest.java @@ -24,6 +24,7 @@ import java.util.concurrent.BlockingDeque; import java.util.concurrent.LinkedBlockingDeque; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; @@ -31,7 +32,6 @@ import com.linecorp.armeria.client.grpc.GrpcClients; import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.grpc.GrpcExceptionHandlerFunction; import com.linecorp.armeria.server.ServerBuilder; import com.linecorp.armeria.server.logging.LoggingService; diff --git a/grpc/src/test/java/com/linecorp/armeria/server/grpc/GrpcServiceBuilderTest.java b/grpc/src/test/java/com/linecorp/armeria/server/grpc/GrpcServiceBuilderTest.java index b7fcb56e455..e975c1cbf83 100644 --- a/grpc/src/test/java/com/linecorp/armeria/server/grpc/GrpcServiceBuilderTest.java +++ b/grpc/src/test/java/com/linecorp/armeria/server/grpc/GrpcServiceBuilderTest.java @@ -26,6 +26,7 @@ import java.util.List; import java.util.Map; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; @@ -39,7 +40,6 @@ import com.linecorp.armeria.common.CommonPools; import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpResponse; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.grpc.GrpcSerializationFormats; import com.linecorp.armeria.common.logging.LogLevel; import com.linecorp.armeria.internal.common.grpc.TestServiceImpl; diff --git a/grpc/src/test/java/com/linecorp/armeria/server/grpc/GrpcServiceServerTest.java b/grpc/src/test/java/com/linecorp/armeria/server/grpc/GrpcServiceServerTest.java index 7535c1581ab..0aec46da224 100644 --- a/grpc/src/test/java/com/linecorp/armeria/server/grpc/GrpcServiceServerTest.java +++ b/grpc/src/test/java/com/linecorp/armeria/server/grpc/GrpcServiceServerTest.java @@ -34,6 +34,7 @@ import java.util.function.Function; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeAll; @@ -74,7 +75,6 @@ import com.linecorp.armeria.common.RpcRequest; import com.linecorp.armeria.common.RpcResponse; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.grpc.GrpcJsonMarshaller; import com.linecorp.armeria.common.grpc.GrpcSerializationFormats; import com.linecorp.armeria.common.grpc.protocol.GrpcHeaderNames; diff --git a/grpc/src/test/java/com/linecorp/armeria/server/grpc/GrpcStatusMappingTest.java b/grpc/src/test/java/com/linecorp/armeria/server/grpc/GrpcStatusMappingTest.java index 486183a4f6a..2a7a6c5f5e2 100644 --- a/grpc/src/test/java/com/linecorp/armeria/server/grpc/GrpcStatusMappingTest.java +++ b/grpc/src/test/java/com/linecorp/armeria/server/grpc/GrpcStatusMappingTest.java @@ -24,6 +24,7 @@ import java.util.concurrent.atomic.AtomicReference; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtensionContext; import org.junit.jupiter.api.extension.RegisterExtension; @@ -35,7 +36,6 @@ import com.google.common.collect.ImmutableMap; import com.linecorp.armeria.client.grpc.GrpcClients; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.ServerBuilder; import com.linecorp.armeria.server.ServiceRequestContext; import com.linecorp.armeria.testing.junit5.server.ServerExtension; diff --git a/grpc/src/test/java/com/linecorp/armeria/server/grpc/ServerCallListenerCompatibilityTest.java b/grpc/src/test/java/com/linecorp/armeria/server/grpc/ServerCallListenerCompatibilityTest.java index 97369c6bcd7..bc89d17a14d 100644 --- a/grpc/src/test/java/com/linecorp/armeria/server/grpc/ServerCallListenerCompatibilityTest.java +++ b/grpc/src/test/java/com/linecorp/armeria/server/grpc/ServerCallListenerCompatibilityTest.java @@ -28,6 +28,7 @@ import java.util.function.Supplier; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.extension.ExtensionContext; import org.junit.jupiter.params.ParameterizedTest; @@ -40,7 +41,6 @@ import com.google.protobuf.ByteString; import com.linecorp.armeria.client.grpc.GrpcClients; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.common.util.ReleasableHolder; import com.linecorp.armeria.server.Server; diff --git a/it/context-propagation/src/test/java/com/linecorp/armeria/internal/common/MyThreadLocalAccessorProvider.java b/it/context-propagation/src/test/java/com/linecorp/armeria/internal/common/MyThreadLocalAccessorProvider.java index 807412f8baa..5c958a1758f 100644 --- a/it/context-propagation/src/test/java/com/linecorp/armeria/internal/common/MyThreadLocalAccessorProvider.java +++ b/it/context-propagation/src/test/java/com/linecorp/armeria/internal/common/MyThreadLocalAccessorProvider.java @@ -16,7 +16,8 @@ package com.linecorp.armeria.internal.common; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.internal.common.context.ThreadLocalAccessorProvider; import io.micrometer.context.ThreadLocalAccessor; diff --git a/it/context-storage/src/test/java/com/linecorp/armeria/common/CustomRequestContextStorageProvider.java b/it/context-storage/src/test/java/com/linecorp/armeria/common/CustomRequestContextStorageProvider.java index 0355b08369b..ad8b78ecbe5 100644 --- a/it/context-storage/src/test/java/com/linecorp/armeria/common/CustomRequestContextStorageProvider.java +++ b/it/context-storage/src/test/java/com/linecorp/armeria/common/CustomRequestContextStorageProvider.java @@ -20,7 +20,7 @@ import java.util.concurrent.atomic.AtomicInteger; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; import io.netty.util.concurrent.FastThreadLocal; import io.netty.util.internal.InternalThreadLocalMap; diff --git a/it/context-storage/src/test/java/com/linecorp/armeria/common/RequestContextStorageCustomizingTest.java b/it/context-storage/src/test/java/com/linecorp/armeria/common/RequestContextStorageCustomizingTest.java index 1bcf94c302b..1d26fd10842 100644 --- a/it/context-storage/src/test/java/com/linecorp/armeria/common/RequestContextStorageCustomizingTest.java +++ b/it/context-storage/src/test/java/com/linecorp/armeria/common/RequestContextStorageCustomizingTest.java @@ -21,11 +21,11 @@ import java.util.concurrent.CountDownLatch; import java.util.concurrent.atomic.AtomicBoolean; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; import com.linecorp.armeria.common.CustomRequestContextStorageProvider.CustomRequestContextStorage; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.SafeCloseable; import com.linecorp.armeria.common.util.ThreadFactories; import com.linecorp.armeria.server.ServiceRequestContext; diff --git a/it/server-allow-semicolon/src/test/java/com/linecorp/armeria/common/AllowSemicolonInPathComponentTest.java b/it/server-allow-semicolon/src/test/java/com/linecorp/armeria/common/AllowSemicolonInPathComponentTest.java index 03b04f7a31c..fe7cc01de41 100644 --- a/it/server-allow-semicolon/src/test/java/com/linecorp/armeria/common/AllowSemicolonInPathComponentTest.java +++ b/it/server-allow-semicolon/src/test/java/com/linecorp/armeria/common/AllowSemicolonInPathComponentTest.java @@ -18,11 +18,11 @@ import static org.assertj.core.api.Assertions.assertThat; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; import org.junitpioneer.jupiter.SetSystemProperty; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.ServerBuilder; import com.linecorp.armeria.testing.junit5.server.ServerExtension; diff --git a/it/spring/boot3-jetty12/src/main/java/com/linecorp/armeria/spring/jetty/package-info.java b/it/spring/boot3-jetty12/src/main/java/com/linecorp/armeria/spring/jetty/package-info.java index 8ccb0168cd6..87c215c5bf2 100644 --- a/it/spring/boot3-jetty12/src/main/java/com/linecorp/armeria/spring/jetty/package-info.java +++ b/it/spring/boot3-jetty12/src/main/java/com/linecorp/armeria/spring/jetty/package-info.java @@ -14,7 +14,7 @@ * under the License. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.spring.jetty; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/it/spring/boot4-mixed-tomcat10/src/main/java/com/linecorp/armeria/spring/mixed/tomcat/package-info.java b/it/spring/boot4-mixed-tomcat10/src/main/java/com/linecorp/armeria/spring/mixed/tomcat/package-info.java index a765993aab2..8aea3a7ac50 100644 --- a/it/spring/boot4-mixed-tomcat10/src/main/java/com/linecorp/armeria/spring/mixed/tomcat/package-info.java +++ b/it/spring/boot4-mixed-tomcat10/src/main/java/com/linecorp/armeria/spring/mixed/tomcat/package-info.java @@ -14,7 +14,7 @@ * under the License. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.spring.mixed.tomcat; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/it/spring/boot4-mixed/src/main/java/com/linecorp/armeria/spring/mixed/package-info.java b/it/spring/boot4-mixed/src/main/java/com/linecorp/armeria/spring/mixed/package-info.java index 64770670008..040ec27c1b7 100644 --- a/it/spring/boot4-mixed/src/main/java/com/linecorp/armeria/spring/mixed/package-info.java +++ b/it/spring/boot4-mixed/src/main/java/com/linecorp/armeria/spring/mixed/package-info.java @@ -14,7 +14,7 @@ * under the License. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.spring.mixed; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/it/spring/boot4-tomcat10/src/main/java/com/linecorp/armeria/spring/tomcat/package-info.java b/it/spring/boot4-tomcat10/src/main/java/com/linecorp/armeria/spring/tomcat/package-info.java index 31a69fb7a84..c45abb2db72 100644 --- a/it/spring/boot4-tomcat10/src/main/java/com/linecorp/armeria/spring/tomcat/package-info.java +++ b/it/spring/boot4-tomcat10/src/main/java/com/linecorp/armeria/spring/tomcat/package-info.java @@ -14,7 +14,7 @@ * under the License. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.spring.tomcat; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/it/websocket/src/test/java/com/linecorp/armeria/it/websocket/WebSocketClientItTest.java b/it/websocket/src/test/java/com/linecorp/armeria/it/websocket/WebSocketClientItTest.java index 7cb329be1fe..aa3a9d20c05 100644 --- a/it/websocket/src/test/java/com/linecorp/armeria/it/websocket/WebSocketClientItTest.java +++ b/it/websocket/src/test/java/com/linecorp/armeria/it/websocket/WebSocketClientItTest.java @@ -32,6 +32,7 @@ import org.eclipse.jetty.server.ServerConnector; import org.eclipse.jetty.servlet.ServletContextHandler; import org.eclipse.jetty.websocket.jakarta.server.config.JakartaWebSocketServletContainerInitializer; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.CsvSource; @@ -44,7 +45,6 @@ import com.linecorp.armeria.client.websocket.WebSocketSession; import com.linecorp.armeria.common.ClosedSessionException; import com.linecorp.armeria.common.HttpHeaderNames; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.websocket.CloseWebSocketFrame; import com.linecorp.armeria.common.websocket.WebSocket; import com.linecorp.armeria.common.websocket.WebSocketCloseStatus; diff --git a/it/xds-client/src/test/java/com/linecorp/armeria/xds/it/VirtualHostRoutingTest.java b/it/xds-client/src/test/java/com/linecorp/armeria/xds/it/VirtualHostRoutingTest.java index a3d9ce2cd41..f02675ec6bc 100644 --- a/it/xds-client/src/test/java/com/linecorp/armeria/xds/it/VirtualHostRoutingTest.java +++ b/it/xds-client/src/test/java/com/linecorp/armeria/xds/it/VirtualHostRoutingTest.java @@ -21,6 +21,7 @@ import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.Arguments; @@ -34,7 +35,6 @@ import com.linecorp.armeria.common.HttpMethod; import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.xds.XdsBootstrap; import com.linecorp.armeria.xds.client.endpoint.XdsHttpPreprocessor; diff --git a/jetty/jetty10/src/main/java/com/linecorp/armeria/server/jetty/package-info.java b/jetty/jetty10/src/main/java/com/linecorp/armeria/server/jetty/package-info.java index 809365bb52f..516d96cb424 100644 --- a/jetty/jetty10/src/main/java/com/linecorp/armeria/server/jetty/package-info.java +++ b/jetty/jetty10/src/main/java/com/linecorp/armeria/server/jetty/package-info.java @@ -17,7 +17,7 @@ /** * Embedded Jetty service. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.jetty; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/jetty/jetty11/src/main/java/com/linecorp/armeria/server/jetty/AbstractArmeriaEndPoint.java b/jetty/jetty11/src/main/java/com/linecorp/armeria/server/jetty/AbstractArmeriaEndPoint.java index 349bb595f71..0458c7f3e9b 100644 --- a/jetty/jetty11/src/main/java/com/linecorp/armeria/server/jetty/AbstractArmeriaEndPoint.java +++ b/jetty/jetty11/src/main/java/com/linecorp/armeria/server/jetty/AbstractArmeriaEndPoint.java @@ -26,10 +26,10 @@ import org.eclipse.jetty.io.FillInterest; import org.eclipse.jetty.io.WriteFlusher; import org.eclipse.jetty.util.Callback; +import org.jspecify.annotations.Nullable; import com.google.common.base.MoreObjects; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.ServiceRequestContext; abstract class AbstractArmeriaEndPoint implements EndPoint { diff --git a/jetty/jetty11/src/main/java/com/linecorp/armeria/server/jetty/AbstractJettyServiceBuilder.java b/jetty/jetty11/src/main/java/com/linecorp/armeria/server/jetty/AbstractJettyServiceBuilder.java index 26a0f3b50da..eea6b174690 100644 --- a/jetty/jetty11/src/main/java/com/linecorp/armeria/server/jetty/AbstractJettyServiceBuilder.java +++ b/jetty/jetty11/src/main/java/com/linecorp/armeria/server/jetty/AbstractJettyServiceBuilder.java @@ -24,12 +24,11 @@ import org.eclipse.jetty.server.HttpConfiguration; import org.eclipse.jetty.server.RequestLog; import org.eclipse.jetty.server.Server; +import org.jspecify.annotations.Nullable; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; -import com.linecorp.armeria.common.annotation.Nullable; - /** * A skeletal builder implementation for {@link JettyServiceBuilder} in Jetty 9 and Jetty 10+ modules. */ diff --git a/jetty/jetty11/src/main/java/com/linecorp/armeria/server/jetty/ArmeriaEndPoint.java b/jetty/jetty11/src/main/java/com/linecorp/armeria/server/jetty/ArmeriaEndPoint.java index 3ab60c6b57f..91c6dc08fec 100644 --- a/jetty/jetty11/src/main/java/com/linecorp/armeria/server/jetty/ArmeriaEndPoint.java +++ b/jetty/jetty11/src/main/java/com/linecorp/armeria/server/jetty/ArmeriaEndPoint.java @@ -15,7 +15,8 @@ */ package com.linecorp.armeria.server.jetty; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.server.ServiceRequestContext; final class ArmeriaEndPoint extends AbstractArmeriaEndPoint { diff --git a/jetty/jetty11/src/main/java/com/linecorp/armeria/server/jetty/JettyService.java b/jetty/jetty11/src/main/java/com/linecorp/armeria/server/jetty/JettyService.java index 8413b5b3aa3..29660f6ca68 100644 --- a/jetty/jetty11/src/main/java/com/linecorp/armeria/server/jetty/JettyService.java +++ b/jetty/jetty11/src/main/java/com/linecorp/armeria/server/jetty/JettyService.java @@ -44,6 +44,7 @@ import org.eclipse.jetty.server.Request; import org.eclipse.jetty.server.Server; import org.eclipse.jetty.util.Callback; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -64,7 +65,6 @@ import com.linecorp.armeria.common.RequestTarget; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.ResponseHeadersBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.BlockingTaskExecutor; import com.linecorp.armeria.common.util.CompletionActions; import com.linecorp.armeria.common.util.Exceptions; diff --git a/jetty/jetty11/src/main/java/com/linecorp/armeria/server/jetty/JettyServiceBuilder.java b/jetty/jetty11/src/main/java/com/linecorp/armeria/server/jetty/JettyServiceBuilder.java index a9210e91fa5..d58e9df66e1 100644 --- a/jetty/jetty11/src/main/java/com/linecorp/armeria/server/jetty/JettyServiceBuilder.java +++ b/jetty/jetty11/src/main/java/com/linecorp/armeria/server/jetty/JettyServiceBuilder.java @@ -30,10 +30,10 @@ import org.eclipse.jetty.server.Server; import org.eclipse.jetty.server.SessionIdManager; import org.eclipse.jetty.server.handler.HandlerWrapper; +import org.jspecify.annotations.Nullable; import com.google.common.collect.ImmutableList; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.BlockingTaskExecutor; import com.linecorp.armeria.internal.common.util.ReentrantShortLock; diff --git a/jetty/jetty11/src/main/java/com/linecorp/armeria/server/jetty/package-info.java b/jetty/jetty11/src/main/java/com/linecorp/armeria/server/jetty/package-info.java index 809365bb52f..516d96cb424 100644 --- a/jetty/jetty11/src/main/java/com/linecorp/armeria/server/jetty/package-info.java +++ b/jetty/jetty11/src/main/java/com/linecorp/armeria/server/jetty/package-info.java @@ -17,7 +17,7 @@ /** * Embedded Jetty service. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.jetty; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/jetty/jetty12/src/main/java/com/linecorp/armeria/server/jetty/JettyService.java b/jetty/jetty12/src/main/java/com/linecorp/armeria/server/jetty/JettyService.java index 999090c42be..0fb7fe606bd 100644 --- a/jetty/jetty12/src/main/java/com/linecorp/armeria/server/jetty/JettyService.java +++ b/jetty/jetty12/src/main/java/com/linecorp/armeria/server/jetty/JettyService.java @@ -43,6 +43,7 @@ import org.eclipse.jetty.server.Server; import org.eclipse.jetty.server.internal.HttpConnection; import org.eclipse.jetty.util.Callback; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -63,7 +64,6 @@ import com.linecorp.armeria.common.RequestTarget; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.ResponseHeadersBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.BlockingTaskExecutor; import com.linecorp.armeria.common.util.CompletionActions; import com.linecorp.armeria.common.util.Exceptions; diff --git a/jetty/jetty12/src/main/java/com/linecorp/armeria/server/jetty/JettyServiceBuilder.java b/jetty/jetty12/src/main/java/com/linecorp/armeria/server/jetty/JettyServiceBuilder.java index e1f12a65f58..029783a0df7 100644 --- a/jetty/jetty12/src/main/java/com/linecorp/armeria/server/jetty/JettyServiceBuilder.java +++ b/jetty/jetty12/src/main/java/com/linecorp/armeria/server/jetty/JettyServiceBuilder.java @@ -29,10 +29,10 @@ import org.eclipse.jetty.server.HttpConfiguration; import org.eclipse.jetty.server.RequestLog; import org.eclipse.jetty.server.Server; +import org.jspecify.annotations.Nullable; import com.google.common.collect.ImmutableList; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.BlockingTaskExecutor; import com.linecorp.armeria.internal.common.util.ReentrantShortLock; diff --git a/jetty/jetty12/src/main/java/com/linecorp/armeria/server/jetty/package-info.java b/jetty/jetty12/src/main/java/com/linecorp/armeria/server/jetty/package-info.java index b2651a83c97..76cb29326e5 100644 --- a/jetty/jetty12/src/main/java/com/linecorp/armeria/server/jetty/package-info.java +++ b/jetty/jetty12/src/main/java/com/linecorp/armeria/server/jetty/package-info.java @@ -17,7 +17,7 @@ /** * Embedded Jetty service. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.jetty; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/jetty/jetty9/src/main/java/com/linecorp/armeria/server/jetty/ArmeriaEndPoint.java b/jetty/jetty9/src/main/java/com/linecorp/armeria/server/jetty/ArmeriaEndPoint.java index b492fc8e498..d472a23391e 100644 --- a/jetty/jetty9/src/main/java/com/linecorp/armeria/server/jetty/ArmeriaEndPoint.java +++ b/jetty/jetty9/src/main/java/com/linecorp/armeria/server/jetty/ArmeriaEndPoint.java @@ -15,7 +15,8 @@ */ package com.linecorp.armeria.server.jetty; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.server.ServiceRequestContext; final class ArmeriaEndPoint extends AbstractArmeriaEndPoint { diff --git a/jetty/jetty9/src/main/java/com/linecorp/armeria/server/jetty/JettyService.java b/jetty/jetty9/src/main/java/com/linecorp/armeria/server/jetty/JettyService.java index ec38c96e23c..6bc694e1720 100644 --- a/jetty/jetty9/src/main/java/com/linecorp/armeria/server/jetty/JettyService.java +++ b/jetty/jetty9/src/main/java/com/linecorp/armeria/server/jetty/JettyService.java @@ -41,6 +41,7 @@ import org.eclipse.jetty.server.Request; import org.eclipse.jetty.server.Server; import org.eclipse.jetty.util.Callback; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -59,7 +60,6 @@ import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.ResponseHeadersBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.BlockingTaskExecutor; import com.linecorp.armeria.common.util.CompletionActions; import com.linecorp.armeria.common.util.Exceptions; diff --git a/jetty/jetty9/src/main/java/com/linecorp/armeria/server/jetty/JettyServiceBuilder.java b/jetty/jetty9/src/main/java/com/linecorp/armeria/server/jetty/JettyServiceBuilder.java index 6a9e8776c8d..3e1bd18e3e0 100644 --- a/jetty/jetty9/src/main/java/com/linecorp/armeria/server/jetty/JettyServiceBuilder.java +++ b/jetty/jetty9/src/main/java/com/linecorp/armeria/server/jetty/JettyServiceBuilder.java @@ -31,10 +31,10 @@ import org.eclipse.jetty.server.handler.HandlerWrapper; import org.eclipse.jetty.util.component.Container; import org.eclipse.jetty.util.component.LifeCycle; +import org.jspecify.annotations.Nullable; import com.google.common.collect.ImmutableList; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.BlockingTaskExecutor; /** diff --git a/jetty/jetty9/src/main/java/com/linecorp/armeria/server/jetty/package-info.java b/jetty/jetty9/src/main/java/com/linecorp/armeria/server/jetty/package-info.java index 809365bb52f..516d96cb424 100644 --- a/jetty/jetty9/src/main/java/com/linecorp/armeria/server/jetty/package-info.java +++ b/jetty/jetty9/src/main/java/com/linecorp/armeria/server/jetty/package-info.java @@ -17,7 +17,7 @@ /** * Embedded Jetty service. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.jetty; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/jetty/jetty9/src/test/java/com/linecorp/armeria/server/jetty/JettyServiceTest.java b/jetty/jetty9/src/test/java/com/linecorp/armeria/server/jetty/JettyServiceTest.java index ee4328c6efc..5d917386533 100644 --- a/jetty/jetty9/src/test/java/com/linecorp/armeria/server/jetty/JettyServiceTest.java +++ b/jetty/jetty9/src/test/java/com/linecorp/armeria/server/jetty/JettyServiceTest.java @@ -59,6 +59,7 @@ import org.eclipse.jetty.util.resource.Resource; import org.eclipse.jetty.util.thread.ThreadPool; import org.eclipse.jetty.webapp.WebAppContext; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; import org.junit.jupiter.params.ParameterizedTest; @@ -76,7 +77,6 @@ import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.testing.webapp.WebAppContainerTest; import com.linecorp.armeria.server.ServerBuilder; import com.linecorp.armeria.server.ServiceRequestContext; diff --git a/jsonrpc/src/main/java/com/linecorp/armeria/common/jsonrpc/DefaultJsonRpcRequest.java b/jsonrpc/src/main/java/com/linecorp/armeria/common/jsonrpc/DefaultJsonRpcRequest.java index e73560f3e6a..d9967fea02f 100644 --- a/jsonrpc/src/main/java/com/linecorp/armeria/common/jsonrpc/DefaultJsonRpcRequest.java +++ b/jsonrpc/src/main/java/com/linecorp/armeria/common/jsonrpc/DefaultJsonRpcRequest.java @@ -21,12 +21,12 @@ import java.util.Objects; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonProperty; import com.google.common.base.MoreObjects; -import com.linecorp.armeria.common.annotation.Nullable; - /** * Default {@link JsonRpcRequest} implementation. */ diff --git a/jsonrpc/src/main/java/com/linecorp/armeria/common/jsonrpc/DefaultJsonRpcResponse.java b/jsonrpc/src/main/java/com/linecorp/armeria/common/jsonrpc/DefaultJsonRpcResponse.java index d0773b057e8..69c280f55c9 100644 --- a/jsonrpc/src/main/java/com/linecorp/armeria/common/jsonrpc/DefaultJsonRpcResponse.java +++ b/jsonrpc/src/main/java/com/linecorp/armeria/common/jsonrpc/DefaultJsonRpcResponse.java @@ -21,13 +21,13 @@ import java.util.Objects; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; import com.google.common.base.MoreObjects; -import com.linecorp.armeria.common.annotation.Nullable; - @JsonInclude(JsonInclude.Include.NON_NULL) final class DefaultJsonRpcResponse implements JsonRpcResponse { @Nullable diff --git a/jsonrpc/src/main/java/com/linecorp/armeria/common/jsonrpc/DefaultJsonRpcStreamableResponse.java b/jsonrpc/src/main/java/com/linecorp/armeria/common/jsonrpc/DefaultJsonRpcStreamableResponse.java index 324e7b7a480..70e256f0b94 100644 --- a/jsonrpc/src/main/java/com/linecorp/armeria/common/jsonrpc/DefaultJsonRpcStreamableResponse.java +++ b/jsonrpc/src/main/java/com/linecorp/armeria/common/jsonrpc/DefaultJsonRpcStreamableResponse.java @@ -18,7 +18,8 @@ import static java.util.Objects.requireNonNull; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.stream.ClosedStreamException; import com.linecorp.armeria.common.stream.DefaultStreamMessage; import com.linecorp.armeria.internal.common.jsonrpc.JsonRpcSseMessage; diff --git a/jsonrpc/src/main/java/com/linecorp/armeria/common/jsonrpc/JsonRpcError.java b/jsonrpc/src/main/java/com/linecorp/armeria/common/jsonrpc/JsonRpcError.java index eb95d218244..78ab8b96885 100644 --- a/jsonrpc/src/main/java/com/linecorp/armeria/common/jsonrpc/JsonRpcError.java +++ b/jsonrpc/src/main/java/com/linecorp/armeria/common/jsonrpc/JsonRpcError.java @@ -19,12 +19,13 @@ import java.util.Objects; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; import com.google.common.base.MoreObjects; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/jsonrpc/src/main/java/com/linecorp/armeria/common/jsonrpc/JsonRpcMessageUtil.java b/jsonrpc/src/main/java/com/linecorp/armeria/common/jsonrpc/JsonRpcMessageUtil.java index 96a865e1221..31af41bcdad 100644 --- a/jsonrpc/src/main/java/com/linecorp/armeria/common/jsonrpc/JsonRpcMessageUtil.java +++ b/jsonrpc/src/main/java/com/linecorp/armeria/common/jsonrpc/JsonRpcMessageUtil.java @@ -21,9 +21,10 @@ import java.util.List; import java.util.Map; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.databind.ObjectMapper; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.JacksonUtil; final class JsonRpcMessageUtil { diff --git a/jsonrpc/src/main/java/com/linecorp/armeria/common/jsonrpc/JsonRpcParameters.java b/jsonrpc/src/main/java/com/linecorp/armeria/common/jsonrpc/JsonRpcParameters.java index dc7d46c085a..b687a0578c7 100644 --- a/jsonrpc/src/main/java/com/linecorp/armeria/common/jsonrpc/JsonRpcParameters.java +++ b/jsonrpc/src/main/java/com/linecorp/armeria/common/jsonrpc/JsonRpcParameters.java @@ -25,11 +25,12 @@ import java.util.Map; import java.util.Objects; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.annotation.JsonValue; import com.google.common.base.MoreObjects; import com.google.common.collect.ImmutableList; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/jsonrpc/src/main/java/com/linecorp/armeria/common/jsonrpc/JsonRpcResponse.java b/jsonrpc/src/main/java/com/linecorp/armeria/common/jsonrpc/JsonRpcResponse.java index 956fca256fa..f3aefebec9a 100644 --- a/jsonrpc/src/main/java/com/linecorp/armeria/common/jsonrpc/JsonRpcResponse.java +++ b/jsonrpc/src/main/java/com/linecorp/armeria/common/jsonrpc/JsonRpcResponse.java @@ -19,6 +19,8 @@ import static com.linecorp.armeria.common.jsonrpc.JsonRpcMessageUtil.objectMapper; import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonInclude; @@ -26,7 +28,6 @@ import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.JsonNode; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.server.jsonrpc.JsonRpcParseException; import com.linecorp.armeria.server.jsonrpc.JsonRpcService; diff --git a/jsonrpc/src/main/java/com/linecorp/armeria/common/jsonrpc/JsonRpcStreamableResponse.java b/jsonrpc/src/main/java/com/linecorp/armeria/common/jsonrpc/JsonRpcStreamableResponse.java index c70838eaaae..e34273cdb22 100644 --- a/jsonrpc/src/main/java/com/linecorp/armeria/common/jsonrpc/JsonRpcStreamableResponse.java +++ b/jsonrpc/src/main/java/com/linecorp/armeria/common/jsonrpc/JsonRpcStreamableResponse.java @@ -16,7 +16,8 @@ package com.linecorp.armeria.common.jsonrpc; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.sse.ServerSentEvent; import com.linecorp.armeria.common.stream.ClosedStreamException; diff --git a/jsonrpc/src/main/java/com/linecorp/armeria/common/jsonrpc/package-info.java b/jsonrpc/src/main/java/com/linecorp/armeria/common/jsonrpc/package-info.java index 461e00ec1a7..8ef2a3f67a0 100644 --- a/jsonrpc/src/main/java/com/linecorp/armeria/common/jsonrpc/package-info.java +++ b/jsonrpc/src/main/java/com/linecorp/armeria/common/jsonrpc/package-info.java @@ -18,8 +18,9 @@ * Common classes for the JSON-RPC. */ @UnstableApi -@NonNullByDefault +@NullMarked package com.linecorp.armeria.common.jsonrpc; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/jsonrpc/src/main/java/com/linecorp/armeria/internal/common/jsonrpc/JsonRpcSseMessage.java b/jsonrpc/src/main/java/com/linecorp/armeria/internal/common/jsonrpc/JsonRpcSseMessage.java index 9fc1a3767c8..b28906a96ba 100644 --- a/jsonrpc/src/main/java/com/linecorp/armeria/internal/common/jsonrpc/JsonRpcSseMessage.java +++ b/jsonrpc/src/main/java/com/linecorp/armeria/internal/common/jsonrpc/JsonRpcSseMessage.java @@ -18,9 +18,10 @@ import java.util.Objects; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.jsonrpc.JsonRpcMessage; import com.linecorp.armeria.common.sse.ServerSentEventBuilder; diff --git a/jsonrpc/src/main/java/com/linecorp/armeria/internal/common/jsonrpc/package-info.java b/jsonrpc/src/main/java/com/linecorp/armeria/internal/common/jsonrpc/package-info.java index ebb0bf2e642..8a1638055bf 100644 --- a/jsonrpc/src/main/java/com/linecorp/armeria/internal/common/jsonrpc/package-info.java +++ b/jsonrpc/src/main/java/com/linecorp/armeria/internal/common/jsonrpc/package-info.java @@ -17,7 +17,7 @@ /** * Internal classes for JSON-RPC implementation. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.common.jsonrpc; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/jsonrpc/src/main/java/com/linecorp/armeria/server/jsonrpc/DefaultJsonRpcExceptionHandler.java b/jsonrpc/src/main/java/com/linecorp/armeria/server/jsonrpc/DefaultJsonRpcExceptionHandler.java index 3b7ebdca95c..d16769dbf10 100644 --- a/jsonrpc/src/main/java/com/linecorp/armeria/server/jsonrpc/DefaultJsonRpcExceptionHandler.java +++ b/jsonrpc/src/main/java/com/linecorp/armeria/server/jsonrpc/DefaultJsonRpcExceptionHandler.java @@ -16,7 +16,8 @@ package com.linecorp.armeria.server.jsonrpc; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.jsonrpc.JsonRpcError; import com.linecorp.armeria.common.jsonrpc.JsonRpcMessage; import com.linecorp.armeria.common.jsonrpc.JsonRpcResponse; diff --git a/jsonrpc/src/main/java/com/linecorp/armeria/server/jsonrpc/JsonRpcExceptionHandler.java b/jsonrpc/src/main/java/com/linecorp/armeria/server/jsonrpc/JsonRpcExceptionHandler.java index 713b3eb3aa2..c1b3d8d25eb 100644 --- a/jsonrpc/src/main/java/com/linecorp/armeria/server/jsonrpc/JsonRpcExceptionHandler.java +++ b/jsonrpc/src/main/java/com/linecorp/armeria/server/jsonrpc/JsonRpcExceptionHandler.java @@ -18,7 +18,8 @@ import static java.util.Objects.requireNonNull; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.jsonrpc.JsonRpcMessage; import com.linecorp.armeria.common.jsonrpc.JsonRpcResponse; diff --git a/jsonrpc/src/main/java/com/linecorp/armeria/server/jsonrpc/JsonRpcHandler.java b/jsonrpc/src/main/java/com/linecorp/armeria/server/jsonrpc/JsonRpcHandler.java index 2b4b07c751a..2cf360f5479 100644 --- a/jsonrpc/src/main/java/com/linecorp/armeria/server/jsonrpc/JsonRpcHandler.java +++ b/jsonrpc/src/main/java/com/linecorp/armeria/server/jsonrpc/JsonRpcHandler.java @@ -18,7 +18,8 @@ import java.util.concurrent.CompletableFuture; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.jsonrpc.JsonRpcError; import com.linecorp.armeria.common.jsonrpc.JsonRpcMessage; diff --git a/jsonrpc/src/main/java/com/linecorp/armeria/server/jsonrpc/JsonRpcService.java b/jsonrpc/src/main/java/com/linecorp/armeria/server/jsonrpc/JsonRpcService.java index 4fe1e0893c8..c7c50d24a85 100644 --- a/jsonrpc/src/main/java/com/linecorp/armeria/server/jsonrpc/JsonRpcService.java +++ b/jsonrpc/src/main/java/com/linecorp/armeria/server/jsonrpc/JsonRpcService.java @@ -23,6 +23,7 @@ import java.util.Map; import java.util.concurrent.CompletableFuture; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -38,7 +39,6 @@ import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.jsonrpc.JsonRpcError; import com.linecorp.armeria.common.jsonrpc.JsonRpcMessage; diff --git a/jsonrpc/src/main/java/com/linecorp/armeria/server/jsonrpc/JsonRpcServiceBuilder.java b/jsonrpc/src/main/java/com/linecorp/armeria/server/jsonrpc/JsonRpcServiceBuilder.java index 82d46778676..af6b2aa2381 100644 --- a/jsonrpc/src/main/java/com/linecorp/armeria/server/jsonrpc/JsonRpcServiceBuilder.java +++ b/jsonrpc/src/main/java/com/linecorp/armeria/server/jsonrpc/JsonRpcServiceBuilder.java @@ -18,10 +18,11 @@ import static com.google.common.base.Preconditions.checkArgument; import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableMap; import com.linecorp.armeria.common.HttpHeaderNames; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.server.HttpService; diff --git a/jsonrpc/src/main/java/com/linecorp/armeria/server/jsonrpc/JsonRpcStatusFunction.java b/jsonrpc/src/main/java/com/linecorp/armeria/server/jsonrpc/JsonRpcStatusFunction.java index c13ff64da43..7a116b70f18 100644 --- a/jsonrpc/src/main/java/com/linecorp/armeria/server/jsonrpc/JsonRpcStatusFunction.java +++ b/jsonrpc/src/main/java/com/linecorp/armeria/server/jsonrpc/JsonRpcStatusFunction.java @@ -18,8 +18,9 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpStatus; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.jsonrpc.JsonRpcError; import com.linecorp.armeria.common.jsonrpc.JsonRpcRequest; diff --git a/jsonrpc/src/main/java/com/linecorp/armeria/server/jsonrpc/package-info.java b/jsonrpc/src/main/java/com/linecorp/armeria/server/jsonrpc/package-info.java index 92ccb5dd8ae..e5d803eea68 100644 --- a/jsonrpc/src/main/java/com/linecorp/armeria/server/jsonrpc/package-info.java +++ b/jsonrpc/src/main/java/com/linecorp/armeria/server/jsonrpc/package-info.java @@ -18,8 +18,9 @@ * Server-side classes for the JSON-RPC. */ @UnstableApi -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.jsonrpc; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/jsonrpc/src/test/java/com/linecorp/armeria/server/jsonrpc/JsonRpcExceptionHandlerTest.java b/jsonrpc/src/test/java/com/linecorp/armeria/server/jsonrpc/JsonRpcExceptionHandlerTest.java index 9f5ecddab7a..2a54f2841d2 100644 --- a/jsonrpc/src/test/java/com/linecorp/armeria/server/jsonrpc/JsonRpcExceptionHandlerTest.java +++ b/jsonrpc/src/test/java/com/linecorp/armeria/server/jsonrpc/JsonRpcExceptionHandlerTest.java @@ -20,13 +20,13 @@ import java.util.concurrent.CompletableFuture; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; import com.linecorp.armeria.client.BlockingWebClient; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.ResponseEntity; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.jsonrpc.JsonRpcError; import com.linecorp.armeria.common.jsonrpc.JsonRpcMessage; import com.linecorp.armeria.common.jsonrpc.JsonRpcRequest; diff --git a/jsonrpc/src/test/java/com/linecorp/armeria/server/jsonrpc/JsonRpcStatusFunctionTest.java b/jsonrpc/src/test/java/com/linecorp/armeria/server/jsonrpc/JsonRpcStatusFunctionTest.java index 8b0cb7c5896..96f07ddbdf7 100644 --- a/jsonrpc/src/test/java/com/linecorp/armeria/server/jsonrpc/JsonRpcStatusFunctionTest.java +++ b/jsonrpc/src/test/java/com/linecorp/armeria/server/jsonrpc/JsonRpcStatusFunctionTest.java @@ -20,13 +20,13 @@ import java.util.concurrent.CompletableFuture; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; import com.linecorp.armeria.client.BlockingWebClient; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.ResponseEntity; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.jsonrpc.JsonRpcError; import com.linecorp.armeria.common.jsonrpc.JsonRpcMessage; import com.linecorp.armeria.common.jsonrpc.JsonRpcRequest; diff --git a/junit4/src/main/java/com/linecorp/armeria/testing/junit4/common/package-info.java b/junit4/src/main/java/com/linecorp/armeria/testing/junit4/common/package-info.java index 217b4a9f572..74187cdde97 100644 --- a/junit4/src/main/java/com/linecorp/armeria/testing/junit4/common/package-info.java +++ b/junit4/src/main/java/com/linecorp/armeria/testing/junit4/common/package-info.java @@ -17,7 +17,7 @@ /** * Common testing utilities. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.testing.junit4.common; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/junit4/src/main/java/com/linecorp/armeria/testing/junit4/server/SelfSignedCertificateRuleDelegate.java b/junit4/src/main/java/com/linecorp/armeria/testing/junit4/server/SelfSignedCertificateRuleDelegate.java index c6ade250d8b..9f44f1631f0 100644 --- a/junit4/src/main/java/com/linecorp/armeria/testing/junit4/server/SelfSignedCertificateRuleDelegate.java +++ b/junit4/src/main/java/com/linecorp/armeria/testing/junit4/server/SelfSignedCertificateRuleDelegate.java @@ -28,8 +28,9 @@ import java.time.temporal.TemporalAccessor; import java.util.Date; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.TlsKeyPair; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.util.SelfSignedCertificate; /** diff --git a/junit4/src/main/java/com/linecorp/armeria/testing/junit4/server/package-info.java b/junit4/src/main/java/com/linecorp/armeria/testing/junit4/server/package-info.java index 9cb7c08c0ae..5c84d0e47e4 100644 --- a/junit4/src/main/java/com/linecorp/armeria/testing/junit4/server/package-info.java +++ b/junit4/src/main/java/com/linecorp/armeria/testing/junit4/server/package-info.java @@ -17,7 +17,7 @@ /** * Server-side testing utilities. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.testing.junit4.server; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/junit5/src/main/java/com/linecorp/armeria/internal/testing/EventLoopGroupRuleDelegate.java b/junit5/src/main/java/com/linecorp/armeria/internal/testing/EventLoopGroupRuleDelegate.java index 6e981465fec..a09cea054d7 100644 --- a/junit5/src/main/java/com/linecorp/armeria/internal/testing/EventLoopGroupRuleDelegate.java +++ b/junit5/src/main/java/com/linecorp/armeria/internal/testing/EventLoopGroupRuleDelegate.java @@ -18,7 +18,8 @@ import java.util.concurrent.ThreadFactory; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.util.EventLoopGroups; import io.netty.channel.EventLoopGroup; diff --git a/junit5/src/main/java/com/linecorp/armeria/internal/testing/ServerRuleDelegate.java b/junit5/src/main/java/com/linecorp/armeria/internal/testing/ServerRuleDelegate.java index f865b68c033..c220777c32a 100644 --- a/junit5/src/main/java/com/linecorp/armeria/internal/testing/ServerRuleDelegate.java +++ b/junit5/src/main/java/com/linecorp/armeria/internal/testing/ServerRuleDelegate.java @@ -26,6 +26,8 @@ import java.util.concurrent.atomic.AtomicReference; import java.util.function.Consumer; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.BlockingWebClient; import com.linecorp.armeria.client.ClientFactory; import com.linecorp.armeria.client.Endpoint; @@ -36,7 +38,6 @@ import com.linecorp.armeria.client.websocket.WebSocketClientBuilder; import com.linecorp.armeria.common.SerializationFormat; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.util.UnmodifiableFuture; import com.linecorp.armeria.server.Server; diff --git a/junit5/src/main/java/com/linecorp/armeria/internal/testing/package-info.java b/junit5/src/main/java/com/linecorp/armeria/internal/testing/package-info.java index 748c69d9ee6..8cd16f86717 100644 --- a/junit5/src/main/java/com/linecorp/armeria/internal/testing/package-info.java +++ b/junit5/src/main/java/com/linecorp/armeria/internal/testing/package-info.java @@ -17,7 +17,7 @@ /** * Internal testing utilities. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.testing; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/junit5/src/main/java/com/linecorp/armeria/testing/junit5/common/package-info.java b/junit5/src/main/java/com/linecorp/armeria/testing/junit5/common/package-info.java index be144769a6e..f1d50cc6011 100644 --- a/junit5/src/main/java/com/linecorp/armeria/testing/junit5/common/package-info.java +++ b/junit5/src/main/java/com/linecorp/armeria/testing/junit5/common/package-info.java @@ -17,7 +17,7 @@ /** * Common testing utilities. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.testing.junit5.common; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/junit5/src/main/java/com/linecorp/armeria/testing/junit5/server/SignedCertificateExtension.java b/junit5/src/main/java/com/linecorp/armeria/testing/junit5/server/SignedCertificateExtension.java index f8a0fb949fc..955ed9f5def 100644 --- a/junit5/src/main/java/com/linecorp/armeria/testing/junit5/server/SignedCertificateExtension.java +++ b/junit5/src/main/java/com/linecorp/armeria/testing/junit5/server/SignedCertificateExtension.java @@ -24,12 +24,12 @@ import java.security.cert.CertificateException; import java.security.cert.X509Certificate; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Order; import org.junit.jupiter.api.extension.Extension; import org.junit.jupiter.api.extension.ExtensionContext; import com.linecorp.armeria.common.TlsKeyPair; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.internal.common.util.SignedCertificate; import com.linecorp.armeria.testing.junit5.common.AbstractAllOrEachExtension; diff --git a/junit5/src/main/java/com/linecorp/armeria/testing/junit5/server/mock/MockWebServerExtension.java b/junit5/src/main/java/com/linecorp/armeria/testing/junit5/server/mock/MockWebServerExtension.java index 155f2843c89..27d540d332c 100644 --- a/junit5/src/main/java/com/linecorp/armeria/testing/junit5/server/mock/MockWebServerExtension.java +++ b/junit5/src/main/java/com/linecorp/armeria/testing/junit5/server/mock/MockWebServerExtension.java @@ -23,6 +23,7 @@ import java.util.concurrent.LinkedBlockingQueue; import java.util.concurrent.TimeUnit; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.extension.BeforeTestExecutionCallback; import org.junit.jupiter.api.extension.Extension; import org.junit.jupiter.api.extension.ExtensionContext; @@ -30,7 +31,6 @@ import com.linecorp.armeria.common.AggregatedHttpResponse; import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpResponse; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.HttpService; import com.linecorp.armeria.server.Server; import com.linecorp.armeria.server.ServerBuilder; diff --git a/junit5/src/main/java/com/linecorp/armeria/testing/junit5/server/mock/RecordedRequest.java b/junit5/src/main/java/com/linecorp/armeria/testing/junit5/server/mock/RecordedRequest.java index 681791b0d44..2b4a1fceef2 100644 --- a/junit5/src/main/java/com/linecorp/armeria/testing/junit5/server/mock/RecordedRequest.java +++ b/junit5/src/main/java/com/linecorp/armeria/testing/junit5/server/mock/RecordedRequest.java @@ -20,10 +20,11 @@ import java.util.Objects; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.linecorp.armeria.common.AggregatedHttpRequest; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.ServiceRequestContext; /** diff --git a/junit5/src/main/java/com/linecorp/armeria/testing/junit5/server/mock/package-info.java b/junit5/src/main/java/com/linecorp/armeria/testing/junit5/server/mock/package-info.java index 4a05bccd579..c4fcb0a98f8 100644 --- a/junit5/src/main/java/com/linecorp/armeria/testing/junit5/server/mock/package-info.java +++ b/junit5/src/main/java/com/linecorp/armeria/testing/junit5/server/mock/package-info.java @@ -17,7 +17,7 @@ /** * A mock server for use when testing clients. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.testing.junit5.server.mock; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/junit5/src/main/java/com/linecorp/armeria/testing/junit5/server/package-info.java b/junit5/src/main/java/com/linecorp/armeria/testing/junit5/server/package-info.java index 8d25309723e..d94d894d9e5 100644 --- a/junit5/src/main/java/com/linecorp/armeria/testing/junit5/server/package-info.java +++ b/junit5/src/main/java/com/linecorp/armeria/testing/junit5/server/package-info.java @@ -17,7 +17,7 @@ /** * Server-side testing utilities. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.testing.junit5.server; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/junit5/src/main/java/com/linecorp/armeria/testing/server/ServiceRequestContextCaptor.java b/junit5/src/main/java/com/linecorp/armeria/testing/server/ServiceRequestContextCaptor.java index e31f449b19e..b688563bb7f 100644 --- a/junit5/src/main/java/com/linecorp/armeria/testing/server/ServiceRequestContextCaptor.java +++ b/junit5/src/main/java/com/linecorp/armeria/testing/server/ServiceRequestContextCaptor.java @@ -25,11 +25,12 @@ import java.util.function.Function; import java.util.function.Predicate; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpResponse; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.server.HttpService; import com.linecorp.armeria.server.ServiceRequestContext; diff --git a/junit5/src/main/java/com/linecorp/armeria/testing/server/package-info.java b/junit5/src/main/java/com/linecorp/armeria/testing/server/package-info.java index 67ece413e84..1f6d53e03eb 100644 --- a/junit5/src/main/java/com/linecorp/armeria/testing/server/package-info.java +++ b/junit5/src/main/java/com/linecorp/armeria/testing/server/package-info.java @@ -17,7 +17,7 @@ /** * Testing utilities. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.testing.server; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/kafka/src/main/java/com/linecorp/armeria/server/logging/kafka/KafkaAccessLogWriter.java b/kafka/src/main/java/com/linecorp/armeria/server/logging/kafka/KafkaAccessLogWriter.java index 41df35db113..9d74f3acca7 100644 --- a/kafka/src/main/java/com/linecorp/armeria/server/logging/kafka/KafkaAccessLogWriter.java +++ b/kafka/src/main/java/com/linecorp/armeria/server/logging/kafka/KafkaAccessLogWriter.java @@ -24,10 +24,10 @@ import org.apache.kafka.clients.producer.Callback; import org.apache.kafka.clients.producer.Producer; import org.apache.kafka.clients.producer.ProducerRecord; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.server.logging.AccessLogWriter; diff --git a/kafka/src/main/java/com/linecorp/armeria/server/logging/kafka/package-info.java b/kafka/src/main/java/com/linecorp/armeria/server/logging/kafka/package-info.java index 80f6b411890..65a7a092882 100644 --- a/kafka/src/main/java/com/linecorp/armeria/server/logging/kafka/package-info.java +++ b/kafka/src/main/java/com/linecorp/armeria/server/logging/kafka/package-info.java @@ -17,7 +17,7 @@ /** * Kafka backend integration support for request/response logging. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.logging.kafka; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/kotlin/src/main/java/com/linecorp/armeria/common/kotlin/CoroutineContexts.java b/kotlin/src/main/java/com/linecorp/armeria/common/kotlin/CoroutineContexts.java index 357f1f52f8a..7002377fcd5 100644 --- a/kotlin/src/main/java/com/linecorp/armeria/common/kotlin/CoroutineContexts.java +++ b/kotlin/src/main/java/com/linecorp/armeria/common/kotlin/CoroutineContexts.java @@ -18,8 +18,9 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.annotation.AnnotatedService; import com.linecorp.armeria.server.kotlin.CoroutineContextService; diff --git a/kotlin/src/main/java/com/linecorp/armeria/common/kotlin/package-info.java b/kotlin/src/main/java/com/linecorp/armeria/common/kotlin/package-info.java index 95302b5a0e8..2aeee557723 100644 --- a/kotlin/src/main/java/com/linecorp/armeria/common/kotlin/package-info.java +++ b/kotlin/src/main/java/com/linecorp/armeria/common/kotlin/package-info.java @@ -17,7 +17,7 @@ /** * Kotlin-related common classes. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.common.kotlin; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/kotlin/src/main/java/com/linecorp/armeria/server/kotlin/package-info.java b/kotlin/src/main/java/com/linecorp/armeria/server/kotlin/package-info.java index 7625b59126d..66ccb3bcf8f 100644 --- a/kotlin/src/main/java/com/linecorp/armeria/server/kotlin/package-info.java +++ b/kotlin/src/main/java/com/linecorp/armeria/server/kotlin/package-info.java @@ -17,7 +17,7 @@ /** * Decorators for Kotlin coroutines. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.kotlin; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/kotlin/src/main/kotlin/com/linecorp/armeria/internal/common/kotlin/FlowCollectingPublisher.kt b/kotlin/src/main/kotlin/com/linecorp/armeria/internal/common/kotlin/FlowCollectingPublisher.kt index d648b06807b..6f59e61de4b 100644 --- a/kotlin/src/main/kotlin/com/linecorp/armeria/internal/common/kotlin/FlowCollectingPublisher.kt +++ b/kotlin/src/main/kotlin/com/linecorp/armeria/internal/common/kotlin/FlowCollectingPublisher.kt @@ -32,7 +32,7 @@ import kotlin.coroutines.EmptyCoroutineContext * [Publisher] implementation which emits values collected from [Flow]. * Reactive streams back-pressure works on its backing [flow] too. */ -internal class FlowCollectingPublisher( +internal class FlowCollectingPublisher( private val flow: Flow, private val executor: EventExecutor, private val context: CoroutineContext = EmptyCoroutineContext, @@ -44,7 +44,7 @@ internal class FlowCollectingPublisher( GlobalScope.launch(context) { try { flow.collect { - delegate.write(it!!) + delegate.write(it) delegate.whenConsumed().await() } } catch (e: Throwable) { diff --git a/kotlin/src/test/kotlin/com/linecorp/armeria/server/kotlin/FlowCollectingPublisherTest.kt b/kotlin/src/test/kotlin/com/linecorp/armeria/server/kotlin/FlowCollectingPublisherTest.kt index 086f4d54ca7..6697bdac852 100644 --- a/kotlin/src/test/kotlin/com/linecorp/armeria/server/kotlin/FlowCollectingPublisherTest.kt +++ b/kotlin/src/test/kotlin/com/linecorp/armeria/server/kotlin/FlowCollectingPublisherTest.kt @@ -62,7 +62,7 @@ internal class FlowCollectingPublisherTest : PublisherVerification(TestEnv val queue: BlockingQueue = LinkedTransferQueue() lateinit var subscription: Subscription - FlowCollectingPublisher( + FlowCollectingPublisher( flow { (0 until 3).forEach { emit(it) @@ -147,7 +147,7 @@ internal class FlowCollectingPublisherTest : PublisherVerification(TestEnv val context = CoroutineName("custom-context") val coroutineNameCaptor = AtomicReference() - FlowCollectingPublisher( + FlowCollectingPublisher( flow { coroutineNameCaptor.set(currentCoroutineContext()[CoroutineName]) emit(1) diff --git a/kubernetes/src/main/java/com/linecorp/armeria/client/kubernetes/ArmeriaHttpClientBuilder.java b/kubernetes/src/main/java/com/linecorp/armeria/client/kubernetes/ArmeriaHttpClientBuilder.java index 3f3fb6f4521..e73b27b0d58 100644 --- a/kubernetes/src/main/java/com/linecorp/armeria/client/kubernetes/ArmeriaHttpClientBuilder.java +++ b/kubernetes/src/main/java/com/linecorp/armeria/client/kubernetes/ArmeriaHttpClientBuilder.java @@ -23,6 +23,7 @@ import javax.net.ssl.KeyManager; import javax.net.ssl.TrustManager; +import org.jspecify.annotations.Nullable; import org.slf4j.LoggerFactory; import com.linecorp.armeria.client.ClientFactory; @@ -34,7 +35,6 @@ import com.linecorp.armeria.client.proxy.ProxyConfig; import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.HttpHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.LogLevel; import com.linecorp.armeria.common.logging.LogWriter; diff --git a/kubernetes/src/main/java/com/linecorp/armeria/client/kubernetes/ArmeriaHttpResponse.java b/kubernetes/src/main/java/com/linecorp/armeria/client/kubernetes/ArmeriaHttpResponse.java index 49f1fe38a6a..b7b3daf42f0 100644 --- a/kubernetes/src/main/java/com/linecorp/armeria/client/kubernetes/ArmeriaHttpResponse.java +++ b/kubernetes/src/main/java/com/linecorp/armeria/client/kubernetes/ArmeriaHttpResponse.java @@ -20,11 +20,12 @@ import java.util.Map; import java.util.Optional; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.google.common.collect.ImmutableMap; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import io.fabric8.kubernetes.client.http.AsyncBody; import io.fabric8.kubernetes.client.http.HttpRequest; diff --git a/kubernetes/src/main/java/com/linecorp/armeria/client/kubernetes/ArmeriaWebSocket.java b/kubernetes/src/main/java/com/linecorp/armeria/client/kubernetes/ArmeriaWebSocket.java index 49b5df31431..87ec079922d 100644 --- a/kubernetes/src/main/java/com/linecorp/armeria/client/kubernetes/ArmeriaWebSocket.java +++ b/kubernetes/src/main/java/com/linecorp/armeria/client/kubernetes/ArmeriaWebSocket.java @@ -19,12 +19,12 @@ import java.nio.ByteBuffer; import java.util.concurrent.atomic.AtomicLong; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.websocket.CloseWebSocketFrame; import com.linecorp.armeria.common.websocket.WebSocketCloseStatus; import com.linecorp.armeria.common.websocket.WebSocketFrame; diff --git a/kubernetes/src/main/java/com/linecorp/armeria/client/kubernetes/ArmeriaWebSocketClient.java b/kubernetes/src/main/java/com/linecorp/armeria/client/kubernetes/ArmeriaWebSocketClient.java index 11a60e4bd10..ead3964f27f 100644 --- a/kubernetes/src/main/java/com/linecorp/armeria/client/kubernetes/ArmeriaWebSocketClient.java +++ b/kubernetes/src/main/java/com/linecorp/armeria/client/kubernetes/ArmeriaWebSocketClient.java @@ -25,6 +25,8 @@ import java.util.Map; import java.util.concurrent.CompletableFuture; +import org.jspecify.annotations.Nullable; + import com.google.common.base.Strings; import com.linecorp.armeria.client.RequestOptions; @@ -36,7 +38,6 @@ import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.HttpHeadersBuilder; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.common.util.SafeCloseable; import com.linecorp.armeria.internal.common.util.ReentrantShortLock; diff --git a/kubernetes/src/main/java/com/linecorp/armeria/client/kubernetes/endpoints/KubernetesEndpointGroup.java b/kubernetes/src/main/java/com/linecorp/armeria/client/kubernetes/endpoints/KubernetesEndpointGroup.java index 75f91b116d9..3b14eb6d60f 100644 --- a/kubernetes/src/main/java/com/linecorp/armeria/client/kubernetes/endpoints/KubernetesEndpointGroup.java +++ b/kubernetes/src/main/java/com/linecorp/armeria/client/kubernetes/endpoints/KubernetesEndpointGroup.java @@ -30,6 +30,7 @@ import java.util.function.Predicate; import org.jctools.maps.NonBlockingHashMap; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -40,7 +41,6 @@ import com.linecorp.armeria.client.endpoint.EndpointSelectionStrategy; import com.linecorp.armeria.client.retry.Backoff; import com.linecorp.armeria.common.CommonPools; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.util.ShutdownHooks; import com.linecorp.armeria.internal.common.util.ReentrantShortLock; diff --git a/kubernetes/src/main/java/com/linecorp/armeria/client/kubernetes/endpoints/KubernetesEndpointGroupBuilder.java b/kubernetes/src/main/java/com/linecorp/armeria/client/kubernetes/endpoints/KubernetesEndpointGroupBuilder.java index 63817546afa..f10aaf826e0 100644 --- a/kubernetes/src/main/java/com/linecorp/armeria/client/kubernetes/endpoints/KubernetesEndpointGroupBuilder.java +++ b/kubernetes/src/main/java/com/linecorp/armeria/client/kubernetes/endpoints/KubernetesEndpointGroupBuilder.java @@ -23,13 +23,14 @@ import java.time.Duration; import java.util.function.Predicate; +import org.jspecify.annotations.Nullable; + import com.google.common.base.Strings; import com.linecorp.armeria.client.Endpoint; import com.linecorp.armeria.client.endpoint.AbstractDynamicEndpointGroupBuilder; import com.linecorp.armeria.client.endpoint.EndpointSelectionStrategy; import com.linecorp.armeria.common.Flags; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import io.fabric8.kubernetes.api.model.NodeAddress; diff --git a/kubernetes/src/main/java/com/linecorp/armeria/client/kubernetes/endpoints/package-info.java b/kubernetes/src/main/java/com/linecorp/armeria/client/kubernetes/endpoints/package-info.java index f7efd8a03bb..27f55d56612 100644 --- a/kubernetes/src/main/java/com/linecorp/armeria/client/kubernetes/endpoints/package-info.java +++ b/kubernetes/src/main/java/com/linecorp/armeria/client/kubernetes/endpoints/package-info.java @@ -17,7 +17,7 @@ /** * {@link com.linecorp.armeria.client.endpoint.EndpointGroup} for Kubernetes services. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.client.kubernetes.endpoints; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/kubernetes/src/main/java/com/linecorp/armeria/client/kubernetes/package-info.java b/kubernetes/src/main/java/com/linecorp/armeria/client/kubernetes/package-info.java index 9472fe65e4a..1a4ffb01734 100644 --- a/kubernetes/src/main/java/com/linecorp/armeria/client/kubernetes/package-info.java +++ b/kubernetes/src/main/java/com/linecorp/armeria/client/kubernetes/package-info.java @@ -17,7 +17,7 @@ /** * Fabric8 Kubernetes client based on Armeria. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.client.kubernetes; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/kubernetes/src/test/java/com/linecorp/armeria/client/kubernetes/endpoints/KubernetesEndpointGroupMockServerTest.java b/kubernetes/src/test/java/com/linecorp/armeria/client/kubernetes/endpoints/KubernetesEndpointGroupMockServerTest.java index 212b95db629..dba116b173e 100644 --- a/kubernetes/src/test/java/com/linecorp/armeria/client/kubernetes/endpoints/KubernetesEndpointGroupMockServerTest.java +++ b/kubernetes/src/test/java/com/linecorp/armeria/client/kubernetes/endpoints/KubernetesEndpointGroupMockServerTest.java @@ -22,6 +22,7 @@ import java.util.List; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.CsvSource; @@ -30,7 +31,6 @@ import com.google.common.collect.ImmutableMap; import com.linecorp.armeria.client.Endpoint; -import com.linecorp.armeria.common.annotation.Nullable; import io.fabric8.kubernetes.api.model.Container; import io.fabric8.kubernetes.api.model.ContainerBuilder; diff --git a/logback/logback12/src/main/java/com/linecorp/armeria/common/logback/LoggingEventWrapper.java b/logback/logback12/src/main/java/com/linecorp/armeria/common/logback/LoggingEventWrapper.java index d3d8a2d23fa..d5b362116f3 100644 --- a/logback/logback12/src/main/java/com/linecorp/armeria/common/logback/LoggingEventWrapper.java +++ b/logback/logback12/src/main/java/com/linecorp/armeria/common/logback/LoggingEventWrapper.java @@ -18,10 +18,9 @@ import java.time.Instant; import java.util.Map; +import org.jspecify.annotations.Nullable; import org.slf4j.Marker; -import com.linecorp.armeria.common.annotation.Nullable; - import ch.qos.logback.classic.Level; import ch.qos.logback.classic.spi.ILoggingEvent; import ch.qos.logback.classic.spi.IThrowableProxy; diff --git a/logback/logback12/src/main/java/com/linecorp/armeria/common/logback/RequestContextExportingAppender.java b/logback/logback12/src/main/java/com/linecorp/armeria/common/logback/RequestContextExportingAppender.java index 04f20669e67..16408b663c1 100644 --- a/logback/logback12/src/main/java/com/linecorp/armeria/common/logback/RequestContextExportingAppender.java +++ b/logback/logback12/src/main/java/com/linecorp/armeria/common/logback/RequestContextExportingAppender.java @@ -25,13 +25,13 @@ import java.util.function.Consumer; import java.util.function.Function; +import org.jspecify.annotations.Nullable; import org.slf4j.MDC; import com.google.common.annotations.VisibleForTesting; import com.google.common.base.Splitter; import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.BuiltInProperty; import com.linecorp.armeria.common.logging.RequestContextExporter; import com.linecorp.armeria.common.logging.RequestContextExporterBuilder; diff --git a/logback/logback12/src/main/java/com/linecorp/armeria/common/logback/UnionMap.java b/logback/logback12/src/main/java/com/linecorp/armeria/common/logback/UnionMap.java index 345e11e4bb5..3cdbb55d143 100644 --- a/logback/logback12/src/main/java/com/linecorp/armeria/common/logback/UnionMap.java +++ b/logback/logback12/src/main/java/com/linecorp/armeria/common/logback/UnionMap.java @@ -25,7 +25,7 @@ import java.util.Set; import java.util.function.Predicate; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; final class UnionMap extends AbstractMap { diff --git a/logback/logback12/src/main/java/com/linecorp/armeria/common/logback/package-info.java b/logback/logback12/src/main/java/com/linecorp/armeria/common/logback/package-info.java index 3b597ca0812..750d9012cf0 100644 --- a/logback/logback12/src/main/java/com/linecorp/armeria/common/logback/package-info.java +++ b/logback/logback12/src/main/java/com/linecorp/armeria/common/logback/package-info.java @@ -20,7 +20,7 @@ *

    Read 'Logging contextual information' * for more information. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.common.logback; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/logback/logback12/src/test/java/com/linecorp/armeria/common/logback/RequestContextExportingAppenderTest.java b/logback/logback12/src/test/java/com/linecorp/armeria/common/logback/RequestContextExportingAppenderTest.java index 7935d1ff4fc..c49a492bc16 100644 --- a/logback/logback12/src/test/java/com/linecorp/armeria/common/logback/RequestContextExportingAppenderTest.java +++ b/logback/logback12/src/test/java/com/linecorp/armeria/common/logback/RequestContextExportingAppenderTest.java @@ -38,6 +38,7 @@ import org.apache.thrift.protocol.TMessage; import org.apache.thrift.protocol.TMessageType; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Nested; @@ -58,7 +59,6 @@ import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.RpcRequest; import com.linecorp.armeria.common.RpcResponse; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.BuiltInProperty; import com.linecorp.armeria.common.logging.RequestLogBuilder; import com.linecorp.armeria.common.thrift.ThriftCall; diff --git a/logback/logback13/src/main/java/com/linecorp/armeria/common/logback/LoggingEventWrapper.java b/logback/logback13/src/main/java/com/linecorp/armeria/common/logback/LoggingEventWrapper.java index 6a04d20f928..0f0173ffddc 100644 --- a/logback/logback13/src/main/java/com/linecorp/armeria/common/logback/LoggingEventWrapper.java +++ b/logback/logback13/src/main/java/com/linecorp/armeria/common/logback/LoggingEventWrapper.java @@ -19,11 +19,10 @@ import java.util.List; import java.util.Map; +import org.jspecify.annotations.Nullable; import org.slf4j.Marker; import org.slf4j.event.KeyValuePair; -import com.linecorp.armeria.common.annotation.Nullable; - import ch.qos.logback.classic.Level; import ch.qos.logback.classic.spi.ILoggingEvent; import ch.qos.logback.classic.spi.IThrowableProxy; diff --git a/logback/logback13/src/main/java/com/linecorp/armeria/common/logback/package-info.java b/logback/logback13/src/main/java/com/linecorp/armeria/common/logback/package-info.java index 3b597ca0812..750d9012cf0 100644 --- a/logback/logback13/src/main/java/com/linecorp/armeria/common/logback/package-info.java +++ b/logback/logback13/src/main/java/com/linecorp/armeria/common/logback/package-info.java @@ -20,7 +20,7 @@ *

    Read 'Logging contextual information' * for more information. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.common.logback; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/micrometer-context/src/main/java/com/linecorp/armeria/common/micrometer/context/RequestContextThreadLocalAccessor.java b/micrometer-context/src/main/java/com/linecorp/armeria/common/micrometer/context/RequestContextThreadLocalAccessor.java index 0844a677f10..e77a67c040f 100644 --- a/micrometer-context/src/main/java/com/linecorp/armeria/common/micrometer/context/RequestContextThreadLocalAccessor.java +++ b/micrometer-context/src/main/java/com/linecorp/armeria/common/micrometer/context/RequestContextThreadLocalAccessor.java @@ -15,11 +15,11 @@ */ package com.linecorp.armeria.common.micrometer.context; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscription; import com.linecorp.armeria.common.RequestContext; import com.linecorp.armeria.common.RequestContextStorage; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.internal.common.RequestContextUtil; diff --git a/micrometer-context/src/main/java/com/linecorp/armeria/common/micrometer/context/package-info.java b/micrometer-context/src/main/java/com/linecorp/armeria/common/micrometer/context/package-info.java index 24f7d364c1f..0a021710913 100644 --- a/micrometer-context/src/main/java/com/linecorp/armeria/common/micrometer/context/package-info.java +++ b/micrometer-context/src/main/java/com/linecorp/armeria/common/micrometer/context/package-info.java @@ -19,8 +19,9 @@ * during Reactor operations. */ @UnstableApi -@NonNullByDefault +@NullMarked package com.linecorp.armeria.common.micrometer.context; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/nacos/src/main/java/com/linecorp/armeria/client/nacos/NacosEndpointGroup.java b/nacos/src/main/java/com/linecorp/armeria/client/nacos/NacosEndpointGroup.java index 3901503a2d3..b0b6de3c638 100644 --- a/nacos/src/main/java/com/linecorp/armeria/client/nacos/NacosEndpointGroup.java +++ b/nacos/src/main/java/com/linecorp/armeria/client/nacos/NacosEndpointGroup.java @@ -22,6 +22,7 @@ import java.util.concurrent.ScheduledFuture; import java.util.concurrent.TimeUnit; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -32,7 +33,6 @@ import com.linecorp.armeria.client.endpoint.EndpointGroup; import com.linecorp.armeria.client.endpoint.EndpointSelectionStrategy; import com.linecorp.armeria.common.CommonPools; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.internal.nacos.NacosClient; diff --git a/nacos/src/main/java/com/linecorp/armeria/client/nacos/package-info.java b/nacos/src/main/java/com/linecorp/armeria/client/nacos/package-info.java index da9a43a38f7..d57f76006eb 100644 --- a/nacos/src/main/java/com/linecorp/armeria/client/nacos/package-info.java +++ b/nacos/src/main/java/com/linecorp/armeria/client/nacos/package-info.java @@ -17,9 +17,10 @@ /** * Nacos-based {@link com.linecorp.armeria.client.endpoint.EndpointGroup} implementation. */ -@NonNullByDefault +@NullMarked @UnstableApi package com.linecorp.armeria.client.nacos; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/nacos/src/main/java/com/linecorp/armeria/common/nacos/package-info.java b/nacos/src/main/java/com/linecorp/armeria/common/nacos/package-info.java index 28027bc31fd..e15e234eba2 100644 --- a/nacos/src/main/java/com/linecorp/armeria/common/nacos/package-info.java +++ b/nacos/src/main/java/com/linecorp/armeria/common/nacos/package-info.java @@ -17,9 +17,10 @@ /** * Various classes used internally. Anything in this package can be changed or removed at any time. */ -@NonNullByDefault +@NullMarked @UnstableApi package com.linecorp.armeria.common.nacos; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/nacos/src/main/java/com/linecorp/armeria/internal/nacos/LoginClient.java b/nacos/src/main/java/com/linecorp/armeria/internal/nacos/LoginClient.java index 7e67208855a..aafa2c93e1c 100644 --- a/nacos/src/main/java/com/linecorp/armeria/internal/nacos/LoginClient.java +++ b/nacos/src/main/java/com/linecorp/armeria/internal/nacos/LoginClient.java @@ -21,6 +21,8 @@ import java.util.concurrent.TimeUnit; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; @@ -36,7 +38,6 @@ import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.QueryParams; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.auth.AuthToken; import com.linecorp.armeria.common.util.AsyncLoader; import com.linecorp.armeria.common.util.Exceptions; diff --git a/nacos/src/main/java/com/linecorp/armeria/internal/nacos/NacosClient.java b/nacos/src/main/java/com/linecorp/armeria/internal/nacos/NacosClient.java index 4f004b34977..e3ef10865b0 100644 --- a/nacos/src/main/java/com/linecorp/armeria/internal/nacos/NacosClient.java +++ b/nacos/src/main/java/com/linecorp/armeria/internal/nacos/NacosClient.java @@ -22,6 +22,8 @@ import java.util.concurrent.CompletableFuture; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.Endpoint; import com.linecorp.armeria.client.HttpClient; import com.linecorp.armeria.client.WebClient; @@ -30,7 +32,6 @@ import com.linecorp.armeria.client.retry.RetryRule; import com.linecorp.armeria.client.retry.RetryingClient; import com.linecorp.armeria.common.HttpResponse; -import com.linecorp.armeria.common.annotation.Nullable; public final class NacosClient { diff --git a/nacos/src/main/java/com/linecorp/armeria/internal/nacos/NacosClientBuilder.java b/nacos/src/main/java/com/linecorp/armeria/internal/nacos/NacosClientBuilder.java index fba015b632d..266006aaf0b 100644 --- a/nacos/src/main/java/com/linecorp/armeria/internal/nacos/NacosClientBuilder.java +++ b/nacos/src/main/java/com/linecorp/armeria/internal/nacos/NacosClientBuilder.java @@ -21,7 +21,8 @@ import java.net.URI; import java.util.regex.Pattern; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.nacos.NacosConfigSetters; public final class NacosClientBuilder implements NacosConfigSetters { diff --git a/nacos/src/main/java/com/linecorp/armeria/internal/nacos/NacosClientUtil.java b/nacos/src/main/java/com/linecorp/armeria/internal/nacos/NacosClientUtil.java index 0039f399aaf..ce553c92e5d 100644 --- a/nacos/src/main/java/com/linecorp/armeria/internal/nacos/NacosClientUtil.java +++ b/nacos/src/main/java/com/linecorp/armeria/internal/nacos/NacosClientUtil.java @@ -15,9 +15,10 @@ */ package com.linecorp.armeria.internal.nacos; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.QueryParams; import com.linecorp.armeria.common.QueryParamsBuilder; -import com.linecorp.armeria.common.annotation.Nullable; /** * Utility methods related to Nacos clients. diff --git a/nacos/src/main/java/com/linecorp/armeria/internal/nacos/QueryInstancesClient.java b/nacos/src/main/java/com/linecorp/armeria/internal/nacos/QueryInstancesClient.java index 0176925a101..2e7f7bd9e03 100644 --- a/nacos/src/main/java/com/linecorp/armeria/internal/nacos/QueryInstancesClient.java +++ b/nacos/src/main/java/com/linecorp/armeria/internal/nacos/QueryInstancesClient.java @@ -23,6 +23,8 @@ import java.util.Objects; import java.util.concurrent.CompletableFuture; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; @@ -32,7 +34,6 @@ import com.linecorp.armeria.client.WebClient; import com.linecorp.armeria.common.HttpEntity; import com.linecorp.armeria.common.QueryParams; -import com.linecorp.armeria.common.annotation.Nullable; /** * A Nacos client that is responsible for diff --git a/nacos/src/main/java/com/linecorp/armeria/internal/nacos/RegisterInstanceClient.java b/nacos/src/main/java/com/linecorp/armeria/internal/nacos/RegisterInstanceClient.java index 49d76449fd5..83c8c1bf62f 100644 --- a/nacos/src/main/java/com/linecorp/armeria/internal/nacos/RegisterInstanceClient.java +++ b/nacos/src/main/java/com/linecorp/armeria/internal/nacos/RegisterInstanceClient.java @@ -17,11 +17,12 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.WebClient; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.QueryParams; -import com.linecorp.armeria.common.annotation.Nullable; /** * A Nacos client that is responsible for diff --git a/nacos/src/main/java/com/linecorp/armeria/internal/nacos/package-info.java b/nacos/src/main/java/com/linecorp/armeria/internal/nacos/package-info.java index 600661d3d7e..348d2bd5bbe 100644 --- a/nacos/src/main/java/com/linecorp/armeria/internal/nacos/package-info.java +++ b/nacos/src/main/java/com/linecorp/armeria/internal/nacos/package-info.java @@ -17,7 +17,7 @@ /** * Various classes used internally. Anything in this package can be changed or removed at any time. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.nacos; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/nacos/src/main/java/com/linecorp/armeria/server/nacos/NacosUpdatingListener.java b/nacos/src/main/java/com/linecorp/armeria/server/nacos/NacosUpdatingListener.java index fef61696c9f..cce07be5ba5 100644 --- a/nacos/src/main/java/com/linecorp/armeria/server/nacos/NacosUpdatingListener.java +++ b/nacos/src/main/java/com/linecorp/armeria/server/nacos/NacosUpdatingListener.java @@ -20,12 +20,12 @@ import java.net.Inet4Address; import java.net.URI; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.linecorp.armeria.client.Endpoint; import com.linecorp.armeria.common.HttpStatus; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.util.SystemInfo; import com.linecorp.armeria.internal.nacos.NacosClient; diff --git a/nacos/src/main/java/com/linecorp/armeria/server/nacos/NacosUpdatingListenerBuilder.java b/nacos/src/main/java/com/linecorp/armeria/server/nacos/NacosUpdatingListenerBuilder.java index c378ec36736..c9b47cfbb54 100644 --- a/nacos/src/main/java/com/linecorp/armeria/server/nacos/NacosUpdatingListenerBuilder.java +++ b/nacos/src/main/java/com/linecorp/armeria/server/nacos/NacosUpdatingListenerBuilder.java @@ -20,8 +20,9 @@ import java.net.URI; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.Endpoint; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.nacos.NacosConfigSetters; import com.linecorp.armeria.internal.nacos.NacosClient; diff --git a/nacos/src/main/java/com/linecorp/armeria/server/nacos/package-info.java b/nacos/src/main/java/com/linecorp/armeria/server/nacos/package-info.java index 0651abf2f9c..9fed426df97 100644 --- a/nacos/src/main/java/com/linecorp/armeria/server/nacos/package-info.java +++ b/nacos/src/main/java/com/linecorp/armeria/server/nacos/package-info.java @@ -17,9 +17,10 @@ /** * Automatic service registration and discovery with Nacos. **/ -@NonNullByDefault +@NullMarked @UnstableApi package com.linecorp.armeria.server.nacos; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/nacos/src/test/java/com/linecorp/armeria/internal/nacos/NacosTestBase.java b/nacos/src/test/java/com/linecorp/armeria/internal/nacos/NacosTestBase.java index edf4816b028..bce85f0d8db 100644 --- a/nacos/src/test/java/com/linecorp/armeria/internal/nacos/NacosTestBase.java +++ b/nacos/src/test/java/com/linecorp/armeria/internal/nacos/NacosTestBase.java @@ -25,6 +25,7 @@ import java.util.Random; import java.util.concurrent.ThreadLocalRandom; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.BeforeAll; import org.testcontainers.containers.GenericContainer; import org.testcontainers.junit.jupiter.Container; @@ -39,7 +40,6 @@ import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.CompletionActions; import com.linecorp.armeria.internal.testing.FlakyTest; import com.linecorp.armeria.server.AbstractHttpService; diff --git a/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/AbstractAccessTokenRequest.java b/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/AbstractAccessTokenRequest.java index 95db7df7ce3..a8ae3ff8249 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/AbstractAccessTokenRequest.java +++ b/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/AbstractAccessTokenRequest.java @@ -23,12 +23,13 @@ import java.util.List; import java.util.Objects; +import org.jspecify.annotations.Nullable; + import com.google.common.base.Joiner; import com.google.common.base.MoreObjects; import com.google.common.base.MoreObjects.ToStringHelper; import com.linecorp.armeria.common.QueryParamsBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.auth.oauth2.ClientAuthentication; import com.linecorp.armeria.internal.common.auth.oauth2.AbstractOAuth2Request; diff --git a/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/AbstractOAuth2AuthorizationGrantBuilder.java b/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/AbstractOAuth2AuthorizationGrantBuilder.java index 59435b85d2f..75ee858498b 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/AbstractOAuth2AuthorizationGrantBuilder.java +++ b/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/AbstractOAuth2AuthorizationGrantBuilder.java @@ -24,8 +24,9 @@ import java.util.function.Consumer; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.WebClient; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.auth.oauth2.ClientAuthentication; import com.linecorp.armeria.common.auth.oauth2.ClientAuthorization; import com.linecorp.armeria.common.auth.oauth2.GrantedOAuth2AccessToken; diff --git a/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/AccessTokenRequest.java b/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/AccessTokenRequest.java index 563ed5dddc0..749e12d2f12 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/AccessTokenRequest.java +++ b/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/AccessTokenRequest.java @@ -20,7 +20,8 @@ import java.util.List; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.auth.oauth2.ClientAuthentication; import com.linecorp.armeria.common.auth.oauth2.OAuth2Request; diff --git a/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/ClientCredentialsAccessTokenRequest.java b/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/ClientCredentialsAccessTokenRequest.java index bb2839e56a9..617029f9e62 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/ClientCredentialsAccessTokenRequest.java +++ b/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/ClientCredentialsAccessTokenRequest.java @@ -20,8 +20,9 @@ import java.util.List; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.QueryParamsBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.auth.oauth2.ClientAuthentication; final class ClientCredentialsAccessTokenRequest extends AbstractAccessTokenRequest { diff --git a/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/DefaultOAuth2AuthorizationGrant.java b/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/DefaultOAuth2AuthorizationGrant.java index f1f7fecd721..4f3a4a1007a 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/DefaultOAuth2AuthorizationGrant.java +++ b/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/DefaultOAuth2AuthorizationGrant.java @@ -26,11 +26,11 @@ import java.util.function.Predicate; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.linecorp.armeria.client.WebClient; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.auth.oauth2.ClientAuthentication; import com.linecorp.armeria.common.auth.oauth2.GrantedOAuth2AccessToken; import com.linecorp.armeria.common.auth.oauth2.OAuth2Request; diff --git a/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/JsonWebTokenAccessTokenRequest.java b/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/JsonWebTokenAccessTokenRequest.java index 705a8735de4..bb342342192 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/JsonWebTokenAccessTokenRequest.java +++ b/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/JsonWebTokenAccessTokenRequest.java @@ -21,8 +21,9 @@ import java.util.List; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.QueryParamsBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.auth.oauth2.ClientAuthentication; /** diff --git a/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/OAuth2AuthorizationGrantBuilder.java b/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/OAuth2AuthorizationGrantBuilder.java index 503d5a23cff..3d97e254346 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/OAuth2AuthorizationGrantBuilder.java +++ b/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/OAuth2AuthorizationGrantBuilder.java @@ -26,8 +26,9 @@ import java.util.function.Predicate; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.WebClient; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.auth.oauth2.GrantedOAuth2AccessToken; import com.linecorp.armeria.common.auth.oauth2.OAuth2ResponseHandler; diff --git a/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/OAuth2ResourceOwnerPasswordCredentialsGrantBuilder.java b/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/OAuth2ResourceOwnerPasswordCredentialsGrantBuilder.java index 8c349671145..cc05eb2942f 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/OAuth2ResourceOwnerPasswordCredentialsGrantBuilder.java +++ b/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/OAuth2ResourceOwnerPasswordCredentialsGrantBuilder.java @@ -23,8 +23,9 @@ import java.util.Map.Entry; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.WebClient; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.auth.oauth2.ClientAuthentication; /** diff --git a/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/RefreshAccessTokenRequest.java b/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/RefreshAccessTokenRequest.java index a1a664afc71..c8e1a672110 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/RefreshAccessTokenRequest.java +++ b/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/RefreshAccessTokenRequest.java @@ -21,8 +21,9 @@ import java.util.List; import java.util.Objects; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.QueryParamsBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.auth.oauth2.ClientAuthentication; /** diff --git a/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/ResourceOwnerPasswordAccessTokenRequest.java b/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/ResourceOwnerPasswordAccessTokenRequest.java index 69ec3ec14c1..f3b236b40d8 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/ResourceOwnerPasswordAccessTokenRequest.java +++ b/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/ResourceOwnerPasswordAccessTokenRequest.java @@ -23,8 +23,9 @@ import java.util.List; import java.util.Objects; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.QueryParamsBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.auth.oauth2.ClientAuthentication; final class ResourceOwnerPasswordAccessTokenRequest extends AbstractAccessTokenRequest { diff --git a/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/package-info.java b/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/package-info.java index cb9f96b60d9..91c8c0c795b 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/package-info.java +++ b/oauth2/src/main/java/com/linecorp/armeria/client/auth/oauth2/package-info.java @@ -18,8 +18,9 @@ * Client-side OAuth 2.0 implementation artifacts. */ @UnstableApi -@NonNullByDefault +@NullMarked package com.linecorp.armeria.client.auth.oauth2; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/ClientAuthorization.java b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/ClientAuthorization.java index 83fccc7573e..cca368b3dcf 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/ClientAuthorization.java +++ b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/ClientAuthorization.java @@ -23,13 +23,14 @@ import java.util.Map; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.HttpHeadersBuilder; import com.linecorp.armeria.common.QueryParams; import com.linecorp.armeria.common.QueryParamsBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.auth.oauth2.CaseUtil; /** diff --git a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/ClientPasswordClientAuthentication.java b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/ClientPasswordClientAuthentication.java index 4c9cad3a9e2..325cddd8849 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/ClientPasswordClientAuthentication.java +++ b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/ClientPasswordClientAuthentication.java @@ -21,12 +21,13 @@ import java.util.Objects; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.HttpHeadersBuilder; import com.linecorp.armeria.common.QueryParamsBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.auth.AuthToken; final class ClientPasswordClientAuthentication implements ClientAuthentication { diff --git a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/DefaultTokenOperationRequest.java b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/DefaultTokenOperationRequest.java index 996bf1e1aae..02deb161e3d 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/DefaultTokenOperationRequest.java +++ b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/DefaultTokenOperationRequest.java @@ -21,10 +21,11 @@ import java.util.Objects; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.linecorp.armeria.common.QueryParamsBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.auth.oauth2.AbstractOAuth2Request; final class DefaultTokenOperationRequest extends AbstractOAuth2Request implements TokenOperationRequest { diff --git a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/GrantedOAuth2AccessToken.java b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/GrantedOAuth2AccessToken.java index b0202dcd7d7..ee4af7d8409 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/GrantedOAuth2AccessToken.java +++ b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/GrantedOAuth2AccessToken.java @@ -34,6 +34,8 @@ import java.util.Objects; import java.util.Set; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.node.ObjectNode; import com.google.common.annotations.VisibleForTesting; @@ -41,7 +43,6 @@ import com.google.common.collect.ImmutableSet; import com.linecorp.armeria.common.HttpHeaderNames; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.internal.common.auth.oauth2.CaseUtil; import com.linecorp.armeria.internal.common.auth.oauth2.OAuth2Constants; diff --git a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/GrantedOAuth2AccessTokenBuilder.java b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/GrantedOAuth2AccessTokenBuilder.java index 6e5520b4d86..e873b1a91eb 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/GrantedOAuth2AccessTokenBuilder.java +++ b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/GrantedOAuth2AccessTokenBuilder.java @@ -32,12 +32,13 @@ import java.util.LinkedHashMap; import java.util.Map; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.core.type.TypeReference; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.internal.common.auth.oauth2.OAuth2Constants; diff --git a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/InvalidClientException.java b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/InvalidClientException.java index e5af4f04c57..ce020bf3636 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/InvalidClientException.java +++ b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/InvalidClientException.java @@ -16,7 +16,8 @@ package com.linecorp.armeria.common.auth.oauth2; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/InvalidGrantException.java b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/InvalidGrantException.java index eb3bcfc8921..f29b0e94638 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/InvalidGrantException.java +++ b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/InvalidGrantException.java @@ -16,7 +16,8 @@ package com.linecorp.armeria.common.auth.oauth2; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/InvalidRequestException.java b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/InvalidRequestException.java index ae496906a5e..be3ccd38c44 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/InvalidRequestException.java +++ b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/InvalidRequestException.java @@ -16,7 +16,8 @@ package com.linecorp.armeria.common.auth.oauth2; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/InvalidResponseException.java b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/InvalidResponseException.java index 306efde331d..a6c6fd05b47 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/InvalidResponseException.java +++ b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/InvalidResponseException.java @@ -16,8 +16,9 @@ package com.linecorp.armeria.common.auth.oauth2; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpStatus; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/InvalidScopeException.java b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/InvalidScopeException.java index 66436bb3034..3afbad3f04a 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/InvalidScopeException.java +++ b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/InvalidScopeException.java @@ -16,7 +16,8 @@ package com.linecorp.armeria.common.auth.oauth2; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/OAuth2Request.java b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/OAuth2Request.java index e884a80b67b..3404e1f453a 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/OAuth2Request.java +++ b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/OAuth2Request.java @@ -16,10 +16,11 @@ package com.linecorp.armeria.common.auth.oauth2; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.QueryParams; import com.linecorp.armeria.common.QueryParamsBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/OAuth2TokenDescriptor.java b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/OAuth2TokenDescriptor.java index d60ac38ce6b..5f89b316223 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/OAuth2TokenDescriptor.java +++ b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/OAuth2TokenDescriptor.java @@ -40,12 +40,13 @@ import java.util.Objects; import java.util.Set; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.node.ObjectNode; import com.google.common.collect.ImmutableMap; import com.google.common.collect.ImmutableSet; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.internal.common.auth.oauth2.OAuth2Constants; diff --git a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/OAuth2TokenDescriptorBuilder.java b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/OAuth2TokenDescriptorBuilder.java index 8c5457a90e5..2833f8558e4 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/OAuth2TokenDescriptorBuilder.java +++ b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/OAuth2TokenDescriptorBuilder.java @@ -36,12 +36,13 @@ import java.util.LinkedHashMap; import java.util.Map; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.core.type.TypeReference; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/TokenOperationRequest.java b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/TokenOperationRequest.java index 01bc9b47219..4e8e87bf34f 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/TokenOperationRequest.java +++ b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/TokenOperationRequest.java @@ -18,7 +18,8 @@ import static java.util.Objects.requireNonNull; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/TokenRequestException.java b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/TokenRequestException.java index 053a171bea5..b995187c8a4 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/TokenRequestException.java +++ b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/TokenRequestException.java @@ -30,10 +30,11 @@ import java.util.LinkedHashMap; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.core.type.TypeReference; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/TokenRevocation.java b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/TokenRevocation.java index 05c6523dc1d..9c05c825836 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/TokenRevocation.java +++ b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/TokenRevocation.java @@ -22,8 +22,9 @@ import java.util.concurrent.CompletableFuture; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.WebClient; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.internal.common.auth.oauth2.OAuth2Endpoint; diff --git a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/TokenRevocationBuilder.java b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/TokenRevocationBuilder.java index 3ee6f8dad95..0bddbead404 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/TokenRevocationBuilder.java +++ b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/TokenRevocationBuilder.java @@ -21,8 +21,9 @@ import java.util.Map; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.WebClient; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.internal.common.auth.oauth2.OAuth2Endpoint; diff --git a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/UnauthorizedClientException.java b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/UnauthorizedClientException.java index 63498dbcc2c..b5b9640383f 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/UnauthorizedClientException.java +++ b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/UnauthorizedClientException.java @@ -16,7 +16,8 @@ package com.linecorp.armeria.common.auth.oauth2; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/UnsupportedGrantTypeException.java b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/UnsupportedGrantTypeException.java index 20357354e02..c12bfcbf71e 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/UnsupportedGrantTypeException.java +++ b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/UnsupportedGrantTypeException.java @@ -16,7 +16,8 @@ package com.linecorp.armeria.common.auth.oauth2; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/UnsupportedMediaTypeException.java b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/UnsupportedMediaTypeException.java index 5b8a4566b88..d019a4f580c 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/UnsupportedMediaTypeException.java +++ b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/UnsupportedMediaTypeException.java @@ -16,8 +16,9 @@ package com.linecorp.armeria.common.auth.oauth2; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpHeaderNames; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/UnsupportedResponseException.java b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/UnsupportedResponseException.java index 09aa64628ba..0aa2f7f0ece 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/UnsupportedResponseException.java +++ b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/UnsupportedResponseException.java @@ -16,8 +16,9 @@ package com.linecorp.armeria.common.auth.oauth2; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpStatus; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/UnsupportedTokenTypeException.java b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/UnsupportedTokenTypeException.java index 721430c20ea..2224f25b5bc 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/UnsupportedTokenTypeException.java +++ b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/UnsupportedTokenTypeException.java @@ -16,7 +16,8 @@ package com.linecorp.armeria.common.auth.oauth2; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/package-info.java b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/package-info.java index 427feaa25c9..e294056737c 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/package-info.java +++ b/oauth2/src/main/java/com/linecorp/armeria/common/auth/oauth2/package-info.java @@ -19,8 +19,9 @@ * implementation. */ @UnstableApi -@NonNullByDefault +@NullMarked package com.linecorp.armeria.common.auth.oauth2; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/oauth2/src/main/java/com/linecorp/armeria/internal/client/auth/oauth2/package-info.java b/oauth2/src/main/java/com/linecorp/armeria/internal/client/auth/oauth2/package-info.java index 2c39b2b0c6e..28f603f7ec1 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/internal/client/auth/oauth2/package-info.java +++ b/oauth2/src/main/java/com/linecorp/armeria/internal/client/auth/oauth2/package-info.java @@ -19,8 +19,9 @@ * OAuth 2.0 implementation artifacts. */ @UnstableApi -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.client.auth.oauth2; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/oauth2/src/main/java/com/linecorp/armeria/internal/common/auth/oauth2/AbstractOAuth2Request.java b/oauth2/src/main/java/com/linecorp/armeria/internal/common/auth/oauth2/AbstractOAuth2Request.java index 4eda7787a81..5776a44454b 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/internal/common/auth/oauth2/AbstractOAuth2Request.java +++ b/oauth2/src/main/java/com/linecorp/armeria/internal/common/auth/oauth2/AbstractOAuth2Request.java @@ -18,6 +18,8 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpData; import com.linecorp.armeria.common.HttpMethod; import com.linecorp.armeria.common.HttpRequest; @@ -26,7 +28,6 @@ import com.linecorp.armeria.common.QueryParamsBuilder; import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.RequestHeadersBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.auth.oauth2.ClientAuthentication; import com.linecorp.armeria.common.auth.oauth2.OAuth2Request; diff --git a/oauth2/src/main/java/com/linecorp/armeria/internal/common/auth/oauth2/CaseUtil.java b/oauth2/src/main/java/com/linecorp/armeria/internal/common/auth/oauth2/CaseUtil.java index a973e5933e7..2b8bda4e097 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/internal/common/auth/oauth2/CaseUtil.java +++ b/oauth2/src/main/java/com/linecorp/armeria/internal/common/auth/oauth2/CaseUtil.java @@ -16,9 +16,9 @@ package com.linecorp.armeria.internal.common.auth.oauth2; -import com.google.common.base.Ascii; +import org.jspecify.annotations.Nullable; -import com.linecorp.armeria.common.annotation.Nullable; +import com.google.common.base.Ascii; public final class CaseUtil { diff --git a/oauth2/src/main/java/com/linecorp/armeria/internal/common/auth/oauth2/package-info.java b/oauth2/src/main/java/com/linecorp/armeria/internal/common/auth/oauth2/package-info.java index 560a31c62e7..17c1e4cb7ef 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/internal/common/auth/oauth2/package-info.java +++ b/oauth2/src/main/java/com/linecorp/armeria/internal/common/auth/oauth2/package-info.java @@ -19,8 +19,9 @@ * OAuth 2.0 implementation artifacts. */ @UnstableApi -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.common.auth.oauth2; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/oauth2/src/main/java/com/linecorp/armeria/server/auth/oauth2/OAuth2AuthorizationErrorReporter.java b/oauth2/src/main/java/com/linecorp/armeria/server/auth/oauth2/OAuth2AuthorizationErrorReporter.java index 6974dc0a267..fd568de06ac 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/server/auth/oauth2/OAuth2AuthorizationErrorReporter.java +++ b/oauth2/src/main/java/com/linecorp/armeria/server/auth/oauth2/OAuth2AuthorizationErrorReporter.java @@ -25,12 +25,13 @@ import java.util.Map; import java.util.stream.Collectors; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; final class OAuth2AuthorizationErrorReporter { diff --git a/oauth2/src/main/java/com/linecorp/armeria/server/auth/oauth2/OAuth2AuthorizationFailureHandler.java b/oauth2/src/main/java/com/linecorp/armeria/server/auth/oauth2/OAuth2AuthorizationFailureHandler.java index 1887542c734..9e183edb032 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/server/auth/oauth2/OAuth2AuthorizationFailureHandler.java +++ b/oauth2/src/main/java/com/linecorp/armeria/server/auth/oauth2/OAuth2AuthorizationFailureHandler.java @@ -22,6 +22,7 @@ import static com.linecorp.armeria.server.auth.oauth2.OAuth2TokenIntrospectionAuthorizer.ERROR_CODE; import static com.linecorp.armeria.server.auth.oauth2.OAuth2TokenIntrospectionAuthorizer.ERROR_TYPE; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -29,7 +30,6 @@ import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.MediaType; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.HttpService; import com.linecorp.armeria.server.ServiceRequestContext; import com.linecorp.armeria.server.auth.AuthFailureHandler; diff --git a/oauth2/src/main/java/com/linecorp/armeria/server/auth/oauth2/OAuth2TokenIntrospectionAuthorizer.java b/oauth2/src/main/java/com/linecorp/armeria/server/auth/oauth2/OAuth2TokenIntrospectionAuthorizer.java index 3cf70219bd0..3cee9fd75d8 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/server/auth/oauth2/OAuth2TokenIntrospectionAuthorizer.java +++ b/oauth2/src/main/java/com/linecorp/armeria/server/auth/oauth2/OAuth2TokenIntrospectionAuthorizer.java @@ -23,11 +23,12 @@ import java.util.Set; import java.util.concurrent.CompletionStage; +import org.jspecify.annotations.Nullable; + import com.github.benmanes.caffeine.cache.Cache; import com.linecorp.armeria.client.WebClient; import com.linecorp.armeria.common.HttpStatus; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.auth.OAuth2Token; import com.linecorp.armeria.common.auth.oauth2.OAuth2TokenDescriptor; diff --git a/oauth2/src/main/java/com/linecorp/armeria/server/auth/oauth2/OAuth2TokenIntrospectionAuthorizerBuilder.java b/oauth2/src/main/java/com/linecorp/armeria/server/auth/oauth2/OAuth2TokenIntrospectionAuthorizerBuilder.java index 0fc763662cc..d5bd265cbf2 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/server/auth/oauth2/OAuth2TokenIntrospectionAuthorizerBuilder.java +++ b/oauth2/src/main/java/com/linecorp/armeria/server/auth/oauth2/OAuth2TokenIntrospectionAuthorizerBuilder.java @@ -21,13 +21,14 @@ import java.util.Map; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; + import com.github.benmanes.caffeine.cache.Cache; import com.github.benmanes.caffeine.cache.Caffeine; import com.github.benmanes.caffeine.cache.CaffeineSpec; import com.google.common.collect.ImmutableSet; import com.linecorp.armeria.client.WebClient; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.auth.oauth2.ClientAuthentication; import com.linecorp.armeria.common.auth.oauth2.ClientAuthorization; diff --git a/oauth2/src/main/java/com/linecorp/armeria/server/auth/oauth2/OAuth2TokenScopeValidator.java b/oauth2/src/main/java/com/linecorp/armeria/server/auth/oauth2/OAuth2TokenScopeValidator.java index e0efaceef0d..11027ec89ad 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/server/auth/oauth2/OAuth2TokenScopeValidator.java +++ b/oauth2/src/main/java/com/linecorp/armeria/server/auth/oauth2/OAuth2TokenScopeValidator.java @@ -21,9 +21,10 @@ import java.util.Set; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpStatus; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.auth.oauth2.OAuth2TokenDescriptor; import com.linecorp.armeria.server.ServiceRequestContext; diff --git a/oauth2/src/main/java/com/linecorp/armeria/server/auth/oauth2/TokenIntrospection.java b/oauth2/src/main/java/com/linecorp/armeria/server/auth/oauth2/TokenIntrospection.java index 0564c8e3f3b..bc1eb48136d 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/server/auth/oauth2/TokenIntrospection.java +++ b/oauth2/src/main/java/com/linecorp/armeria/server/auth/oauth2/TokenIntrospection.java @@ -22,7 +22,8 @@ import java.util.concurrent.CompletableFuture; import java.util.function.Supplier; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.auth.oauth2.ClientAuthentication; import com.linecorp.armeria.common.auth.oauth2.OAuth2TokenDescriptor; import com.linecorp.armeria.common.auth.oauth2.TokenOperationRequest; diff --git a/oauth2/src/main/java/com/linecorp/armeria/server/auth/oauth2/package-info.java b/oauth2/src/main/java/com/linecorp/armeria/server/auth/oauth2/package-info.java index 53da52802d4..a643885dbed 100644 --- a/oauth2/src/main/java/com/linecorp/armeria/server/auth/oauth2/package-info.java +++ b/oauth2/src/main/java/com/linecorp/armeria/server/auth/oauth2/package-info.java @@ -18,8 +18,9 @@ * Server-side OAuth 2.0 implementation artifacts. */ @UnstableApi -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.auth.oauth2; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/oauth2/src/test/java/com/linecorp/armeria/common/auth/oauth2/GrantedOAuth2AccessTokenTest.java b/oauth2/src/test/java/com/linecorp/armeria/common/auth/oauth2/GrantedOAuth2AccessTokenTest.java index 91627b48238..079e9440b4d 100644 --- a/oauth2/src/test/java/com/linecorp/armeria/common/auth/oauth2/GrantedOAuth2AccessTokenTest.java +++ b/oauth2/src/test/java/com/linecorp/armeria/common/auth/oauth2/GrantedOAuth2AccessTokenTest.java @@ -24,10 +24,9 @@ import java.util.Collections; import java.util.Map; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; -import com.linecorp.armeria.common.annotation.Nullable; - public class GrantedOAuth2AccessTokenTest { @Test diff --git a/oauth2/src/test/java/com/linecorp/armeria/common/auth/oauth2/MockOAuth2AccessToken.java b/oauth2/src/test/java/com/linecorp/armeria/common/auth/oauth2/MockOAuth2AccessToken.java index 7535d1f027a..3542a3f07a3 100644 --- a/oauth2/src/test/java/com/linecorp/armeria/common/auth/oauth2/MockOAuth2AccessToken.java +++ b/oauth2/src/test/java/com/linecorp/armeria/common/auth/oauth2/MockOAuth2AccessToken.java @@ -23,7 +23,7 @@ import java.util.Map; import java.util.UUID; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; public class MockOAuth2AccessToken { diff --git a/oauth2/src/test/java/com/linecorp/armeria/common/auth/oauth2/OAuth2TokenDescriptorTest.java b/oauth2/src/test/java/com/linecorp/armeria/common/auth/oauth2/OAuth2TokenDescriptorTest.java index 0d0f35bbed1..cfd192f98ee 100644 --- a/oauth2/src/test/java/com/linecorp/armeria/common/auth/oauth2/OAuth2TokenDescriptorTest.java +++ b/oauth2/src/test/java/com/linecorp/armeria/common/auth/oauth2/OAuth2TokenDescriptorTest.java @@ -25,10 +25,9 @@ import java.util.Collections; import java.util.Map; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; -import com.linecorp.armeria.common.annotation.Nullable; - public class OAuth2TokenDescriptorTest { @Test diff --git a/oauth2/src/test/java/com/linecorp/armeria/internal/common/auth/oauth2/MockOAuth2Service.java b/oauth2/src/test/java/com/linecorp/armeria/internal/common/auth/oauth2/MockOAuth2Service.java index 0f268fa4c4a..c0667fc6930 100644 --- a/oauth2/src/test/java/com/linecorp/armeria/internal/common/auth/oauth2/MockOAuth2Service.java +++ b/oauth2/src/test/java/com/linecorp/armeria/internal/common/auth/oauth2/MockOAuth2Service.java @@ -30,12 +30,13 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.auth.oauth2.MockOAuth2AccessToken; public abstract class MockOAuth2Service { @@ -53,8 +54,7 @@ public abstract class MockOAuth2Service { "\\s*(?i)basic\\s+(?\\S+)\\s*"); private static final String WWW_AUTHENTICATE_RESPONSE = "Basic realm=\"%s\""; - @Nullable - private static Map.Entry decodeClientCredentials(String clientCredential) { + private static Map.@Nullable Entry decodeClientCredentials(String clientCredential) { final String decodedCredential = new String(Base64.getDecoder().decode(clientCredential), StandardCharsets.UTF_8); final Matcher matcher = CREDENTIALS_PATTERN.matcher(decodedCredential); @@ -136,7 +136,7 @@ protected boolean isAuthorizedClient(String clientId, String clientSecret) { return clientSecret.equals(authorizedClients.get(clientId)); } - protected boolean isAuthorizedClient(@Nullable Map.Entry clientCredential) { + protected boolean isAuthorizedClient(Map.@Nullable Entry clientCredential) { return (clientCredential != null) && isAuthorizedClient(clientCredential.getKey(), clientCredential.getValue()); } diff --git a/prometheus1/src/main/java/com/linecorp/armeria/common/prometheus/package-info.java b/prometheus1/src/main/java/com/linecorp/armeria/common/prometheus/package-info.java index 71c0716891b..7b4460339e0 100644 --- a/prometheus1/src/main/java/com/linecorp/armeria/common/prometheus/package-info.java +++ b/prometheus1/src/main/java/com/linecorp/armeria/common/prometheus/package-info.java @@ -17,7 +17,7 @@ /** * Prometheus version 1 metrics. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.common.prometheus; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/prometheus1/src/main/java/com/linecorp/armeria/server/prometheus/package-info.java b/prometheus1/src/main/java/com/linecorp/armeria/server/prometheus/package-info.java index 631bae0d214..008db0243e4 100644 --- a/prometheus1/src/main/java/com/linecorp/armeria/server/prometheus/package-info.java +++ b/prometheus1/src/main/java/com/linecorp/armeria/server/prometheus/package-info.java @@ -17,7 +17,7 @@ /** * Prometheus version 1 metrics. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.prometheus; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/protobuf/src/main/java/com/linecorp/armeria/server/protobuf/ProtobufDescriptiveTypeInfoProvider.java b/protobuf/src/main/java/com/linecorp/armeria/server/protobuf/ProtobufDescriptiveTypeInfoProvider.java index 9d831be8782..24008fce690 100644 --- a/protobuf/src/main/java/com/linecorp/armeria/server/protobuf/ProtobufDescriptiveTypeInfoProvider.java +++ b/protobuf/src/main/java/com/linecorp/armeria/server/protobuf/ProtobufDescriptiveTypeInfoProvider.java @@ -23,13 +23,14 @@ import java.util.List; +import org.jspecify.annotations.Nullable; + import com.google.common.annotations.VisibleForTesting; import com.google.protobuf.Descriptors.Descriptor; import com.google.protobuf.Descriptors.EnumDescriptor; import com.google.protobuf.Descriptors.FieldDescriptor; import com.google.protobuf.Message; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.server.docs.DescriptiveTypeInfo; import com.linecorp.armeria.server.docs.DescriptiveTypeInfoProvider; diff --git a/protobuf/src/main/java/com/linecorp/armeria/server/protobuf/ProtobufRequestConverterFunction.java b/protobuf/src/main/java/com/linecorp/armeria/server/protobuf/ProtobufRequestConverterFunction.java index 2f74452586a..01c24e49813 100644 --- a/protobuf/src/main/java/com/linecorp/armeria/server/protobuf/ProtobufRequestConverterFunction.java +++ b/protobuf/src/main/java/com/linecorp/armeria/server/protobuf/ProtobufRequestConverterFunction.java @@ -34,6 +34,8 @@ import java.util.Iterator; import java.util.Map.Entry; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; import com.google.common.collect.ImmutableCollection; @@ -48,7 +50,6 @@ import com.linecorp.armeria.common.AggregatedHttpRequest; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.server.ServiceRequestContext; import com.linecorp.armeria.server.annotation.RequestConverterFunction; diff --git a/protobuf/src/main/java/com/linecorp/armeria/server/protobuf/ProtobufRequestConverterFunctionProvider.java b/protobuf/src/main/java/com/linecorp/armeria/server/protobuf/ProtobufRequestConverterFunctionProvider.java index 6ee397e7aca..8a42f8cc2c9 100644 --- a/protobuf/src/main/java/com/linecorp/armeria/server/protobuf/ProtobufRequestConverterFunctionProvider.java +++ b/protobuf/src/main/java/com/linecorp/armeria/server/protobuf/ProtobufRequestConverterFunctionProvider.java @@ -22,9 +22,10 @@ import java.util.Map; import java.util.Set; +import org.jspecify.annotations.Nullable; + import com.google.protobuf.Message; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.server.annotation.RequestConverterFunction; import com.linecorp.armeria.server.annotation.RequestConverterFunctionProvider; diff --git a/protobuf/src/main/java/com/linecorp/armeria/server/protobuf/ProtobufResponseConverterFunction.java b/protobuf/src/main/java/com/linecorp/armeria/server/protobuf/ProtobufResponseConverterFunction.java index 2f36d45dec9..7602a14700a 100644 --- a/protobuf/src/main/java/com/linecorp/armeria/server/protobuf/ProtobufResponseConverterFunction.java +++ b/protobuf/src/main/java/com/linecorp/armeria/server/protobuf/ProtobufResponseConverterFunction.java @@ -36,6 +36,7 @@ import java.util.stream.Collectors; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; import com.google.common.collect.Streams; @@ -49,7 +50,6 @@ import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.server.ServiceRequestContext; diff --git a/protobuf/src/main/java/com/linecorp/armeria/server/protobuf/ProtobufResponseConverterFunctionProvider.java b/protobuf/src/main/java/com/linecorp/armeria/server/protobuf/ProtobufResponseConverterFunctionProvider.java index fba79b3ac2e..f6ae4ab6e89 100644 --- a/protobuf/src/main/java/com/linecorp/armeria/server/protobuf/ProtobufResponseConverterFunctionProvider.java +++ b/protobuf/src/main/java/com/linecorp/armeria/server/protobuf/ProtobufResponseConverterFunctionProvider.java @@ -22,12 +22,12 @@ import java.util.Map; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; import com.google.protobuf.Message; import com.google.protobuf.MessageLite; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.server.annotation.ResponseConverterFunction; import com.linecorp.armeria.server.annotation.ResponseConverterFunctionProvider; diff --git a/protobuf/src/main/java/com/linecorp/armeria/server/protobuf/package-info.java b/protobuf/src/main/java/com/linecorp/armeria/server/protobuf/package-info.java index 2346e423b86..335c276ced6 100644 --- a/protobuf/src/main/java/com/linecorp/armeria/server/protobuf/package-info.java +++ b/protobuf/src/main/java/com/linecorp/armeria/server/protobuf/package-info.java @@ -22,7 +22,7 @@ * converts an {@link com.linecorp.armeria.common.AggregatedHttpRequest} into * a {@link com.google.protobuf.Message}. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.protobuf; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/protobuf/src/test/java/com/linecorp/armeria/server/protobuf/ProtobufDescriptiveTypeInfoProviderTest.java b/protobuf/src/test/java/com/linecorp/armeria/server/protobuf/ProtobufDescriptiveTypeInfoProviderTest.java index 070f8e9b6d1..c107a2badcb 100644 --- a/protobuf/src/test/java/com/linecorp/armeria/server/protobuf/ProtobufDescriptiveTypeInfoProviderTest.java +++ b/protobuf/src/test/java/com/linecorp/armeria/server/protobuf/ProtobufDescriptiveTypeInfoProviderTest.java @@ -37,6 +37,7 @@ import java.util.List; import java.util.concurrent.CompletableFuture; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; @@ -46,7 +47,6 @@ import com.google.common.collect.ImmutableList; import com.linecorp.armeria.client.BlockingWebClient; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.UnmodifiableFuture; import com.linecorp.armeria.server.ServerBuilder; import com.linecorp.armeria.server.annotation.ConsumesJson; diff --git a/protobuf/src/test/java/com/linecorp/armeria/server/protobuf/ProtobufResponseAnnotatedServiceTest.java b/protobuf/src/test/java/com/linecorp/armeria/server/protobuf/ProtobufResponseAnnotatedServiceTest.java index f3598a3117a..9fb5d0fa3e9 100644 --- a/protobuf/src/test/java/com/linecorp/armeria/server/protobuf/ProtobufResponseAnnotatedServiceTest.java +++ b/protobuf/src/test/java/com/linecorp/armeria/server/protobuf/ProtobufResponseAnnotatedServiceTest.java @@ -27,6 +27,7 @@ import java.util.concurrent.CompletableFuture; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; @@ -48,7 +49,6 @@ import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.MediaTypeNames; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.UnmodifiableFuture; import com.linecorp.armeria.internal.testing.GenerateNativeImageTrace; import com.linecorp.armeria.server.ServerBuilder; diff --git a/reactor3/src/main/java/com/linecorp/armeria/common/reactor3/package-info.java b/reactor3/src/main/java/com/linecorp/armeria/common/reactor3/package-info.java index fa4f50ca2a8..1d063a4a33b 100644 --- a/reactor3/src/main/java/com/linecorp/armeria/common/reactor3/package-info.java +++ b/reactor3/src/main/java/com/linecorp/armeria/common/reactor3/package-info.java @@ -17,7 +17,7 @@ /** * Reactor plugins to help keep {@link com.linecorp.armeria.common.RequestContext} during Reactor operations. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.common.reactor3; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/resilience4j2/src/main/java/com/linecorp/armeria/resilience4j/circuitbreaker/Resilience4jCircuitBreakerFactory.java b/resilience4j2/src/main/java/com/linecorp/armeria/resilience4j/circuitbreaker/Resilience4jCircuitBreakerFactory.java index 9d5c72e2c9f..287c7147080 100644 --- a/resilience4j2/src/main/java/com/linecorp/armeria/resilience4j/circuitbreaker/Resilience4jCircuitBreakerFactory.java +++ b/resilience4j2/src/main/java/com/linecorp/armeria/resilience4j/circuitbreaker/Resilience4jCircuitBreakerFactory.java @@ -16,8 +16,9 @@ package com.linecorp.armeria.resilience4j.circuitbreaker; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.circuitbreaker.CircuitBreakerClientHandler; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import io.github.resilience4j.circuitbreaker.CircuitBreaker; diff --git a/resilience4j2/src/main/java/com/linecorp/armeria/resilience4j/circuitbreaker/client/Resilience4JCircuitBreakerCallback.java b/resilience4j2/src/main/java/com/linecorp/armeria/resilience4j/circuitbreaker/client/Resilience4JCircuitBreakerCallback.java index 4e18f3d5520..4c41de7b755 100644 --- a/resilience4j2/src/main/java/com/linecorp/armeria/resilience4j/circuitbreaker/client/Resilience4JCircuitBreakerCallback.java +++ b/resilience4j2/src/main/java/com/linecorp/armeria/resilience4j/circuitbreaker/client/Resilience4JCircuitBreakerCallback.java @@ -18,8 +18,9 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.circuitbreaker.CircuitBreakerCallback; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.logging.RequestLogProperty; diff --git a/resilience4j2/src/main/java/com/linecorp/armeria/resilience4j/circuitbreaker/client/Resilience4JCircuitBreakerClientHandler.java b/resilience4j2/src/main/java/com/linecorp/armeria/resilience4j/circuitbreaker/client/Resilience4JCircuitBreakerClientHandler.java index a8c07a13410..8c9aedf881a 100644 --- a/resilience4j2/src/main/java/com/linecorp/armeria/resilience4j/circuitbreaker/client/Resilience4JCircuitBreakerClientHandler.java +++ b/resilience4j2/src/main/java/com/linecorp/armeria/resilience4j/circuitbreaker/client/Resilience4JCircuitBreakerClientHandler.java @@ -18,6 +18,7 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -27,7 +28,6 @@ import com.linecorp.armeria.client.circuitbreaker.CircuitBreakerMapping; import com.linecorp.armeria.client.circuitbreaker.ClientCircuitBreakerGenerator; import com.linecorp.armeria.common.Request; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.circuitbreaker.CircuitBreakerCallback; diff --git a/resilience4j2/src/main/java/com/linecorp/armeria/resilience4j/circuitbreaker/client/package-info.java b/resilience4j2/src/main/java/com/linecorp/armeria/resilience4j/circuitbreaker/client/package-info.java index efc3582bef9..2ed7e8a67e4 100644 --- a/resilience4j2/src/main/java/com/linecorp/armeria/resilience4j/circuitbreaker/client/package-info.java +++ b/resilience4j2/src/main/java/com/linecorp/armeria/resilience4j/circuitbreaker/client/package-info.java @@ -18,9 +18,10 @@ * {@code Resilience4j}'s {@link io.github.resilience4j.circuitbreaker.CircuitBreaker} * integration with Armeria clients. */ -@NonNullByDefault +@NullMarked @UnstableApi package com.linecorp.armeria.resilience4j.circuitbreaker.client; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/resilience4j2/src/main/java/com/linecorp/armeria/resilience4j/circuitbreaker/package-info.java b/resilience4j2/src/main/java/com/linecorp/armeria/resilience4j/circuitbreaker/package-info.java index 49663964980..32b1b1e5796 100644 --- a/resilience4j2/src/main/java/com/linecorp/armeria/resilience4j/circuitbreaker/package-info.java +++ b/resilience4j2/src/main/java/com/linecorp/armeria/resilience4j/circuitbreaker/package-info.java @@ -18,9 +18,10 @@ * {@code Resilience4j}'s {@link io.github.resilience4j.circuitbreaker.CircuitBreaker} * integration with Armeria. */ -@NonNullByDefault +@NullMarked @UnstableApi package com.linecorp.armeria.resilience4j.circuitbreaker; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/resteasy/src/main/java/com/linecorp/armeria/client/resteasy/ArmeriaJaxrsClientEngine.java b/resteasy/src/main/java/com/linecorp/armeria/client/resteasy/ArmeriaJaxrsClientEngine.java index 25c99e58bfb..71b0977fdf5 100644 --- a/resteasy/src/main/java/com/linecorp/armeria/client/resteasy/ArmeriaJaxrsClientEngine.java +++ b/resteasy/src/main/java/com/linecorp/armeria/client/resteasy/ArmeriaJaxrsClientEngine.java @@ -45,6 +45,7 @@ import org.jboss.resteasy.client.jaxrs.internal.ClientConfiguration; import org.jboss.resteasy.client.jaxrs.internal.ClientInvocation; import org.jboss.resteasy.client.jaxrs.internal.ClientResponse; +import org.jspecify.annotations.Nullable; import com.google.common.base.Strings; @@ -57,7 +58,6 @@ import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.RequestHeadersBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.common.util.UnmodifiableFuture; diff --git a/resteasy/src/main/java/com/linecorp/armeria/client/resteasy/SslContextConfigurator.java b/resteasy/src/main/java/com/linecorp/armeria/client/resteasy/SslContextConfigurator.java index eab853d1647..cbab950929f 100644 --- a/resteasy/src/main/java/com/linecorp/armeria/client/resteasy/SslContextConfigurator.java +++ b/resteasy/src/main/java/com/linecorp/armeria/client/resteasy/SslContextConfigurator.java @@ -29,7 +29,7 @@ import javax.net.ssl.TrustManagerFactory; import javax.net.ssl.X509TrustManager; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; import io.netty.handler.ssl.SslContextBuilder; import io.netty.handler.ssl.util.SimpleTrustManagerFactory; diff --git a/resteasy/src/main/java/com/linecorp/armeria/client/resteasy/package-info.java b/resteasy/src/main/java/com/linecorp/armeria/client/resteasy/package-info.java index 692a1b65440..07426fbe43d 100644 --- a/resteasy/src/main/java/com/linecorp/armeria/client/resteasy/package-info.java +++ b/resteasy/src/main/java/com/linecorp/armeria/client/resteasy/package-info.java @@ -18,8 +18,9 @@ * Integration with RESTEasy client. */ @UnstableApi -@NonNullByDefault +@NullMarked package com.linecorp.armeria.client.resteasy; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/resteasy/src/main/java/com/linecorp/armeria/internal/common/resteasy/HttpMessageSubscriberAdapter.java b/resteasy/src/main/java/com/linecorp/armeria/internal/common/resteasy/HttpMessageSubscriberAdapter.java index a5a523e3d13..1f63ef7bf73 100644 --- a/resteasy/src/main/java/com/linecorp/armeria/internal/common/resteasy/HttpMessageSubscriberAdapter.java +++ b/resteasy/src/main/java/com/linecorp/armeria/internal/common/resteasy/HttpMessageSubscriberAdapter.java @@ -16,13 +16,13 @@ package com.linecorp.armeria.internal.common.resteasy; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; import com.linecorp.armeria.common.HttpData; import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.HttpObject; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import io.netty.util.ReferenceCountUtil; diff --git a/resteasy/src/main/java/com/linecorp/armeria/internal/common/resteasy/package-info.java b/resteasy/src/main/java/com/linecorp/armeria/internal/common/resteasy/package-info.java index 14015f85ef8..1666624a80a 100644 --- a/resteasy/src/main/java/com/linecorp/armeria/internal/common/resteasy/package-info.java +++ b/resteasy/src/main/java/com/linecorp/armeria/internal/common/resteasy/package-info.java @@ -18,8 +18,9 @@ * Integration with RESTEasy server and client. */ @UnstableApi -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.common.resteasy; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/resteasy/src/main/java/com/linecorp/armeria/server/resteasy/AbstractResteasyHttpRequest.java b/resteasy/src/main/java/com/linecorp/armeria/server/resteasy/AbstractResteasyHttpRequest.java index b730b7fbf46..eaef9a5d978 100644 --- a/resteasy/src/main/java/com/linecorp/armeria/server/resteasy/AbstractResteasyHttpRequest.java +++ b/resteasy/src/main/java/com/linecorp/armeria/server/resteasy/AbstractResteasyHttpRequest.java @@ -35,10 +35,10 @@ import org.jboss.resteasy.specimpl.ResteasyUriInfo; import org.jboss.resteasy.spi.NotImplementedYetException; import org.jboss.resteasy.spi.ResteasyAsynchronousContext; +import org.jspecify.annotations.Nullable; import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.resteasy.CookieConverter; import com.linecorp.armeria.server.ServiceRequestContext; diff --git a/resteasy/src/main/java/com/linecorp/armeria/server/resteasy/ResteasyAsynchronousResponseImpl.java b/resteasy/src/main/java/com/linecorp/armeria/server/resteasy/ResteasyAsynchronousResponseImpl.java index 9a24fd5fc92..7e59852a161 100644 --- a/resteasy/src/main/java/com/linecorp/armeria/server/resteasy/ResteasyAsynchronousResponseImpl.java +++ b/resteasy/src/main/java/com/linecorp/armeria/server/resteasy/ResteasyAsynchronousResponseImpl.java @@ -27,9 +27,9 @@ import org.jboss.resteasy.core.AbstractAsynchronousResponse; import org.jboss.resteasy.core.SynchronousDispatcher; +import org.jspecify.annotations.Nullable; import com.linecorp.armeria.common.TimeoutException; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.ServiceRequestContext; /** diff --git a/resteasy/src/main/java/com/linecorp/armeria/server/resteasy/ResteasyHttpResponseImpl.java b/resteasy/src/main/java/com/linecorp/armeria/server/resteasy/ResteasyHttpResponseImpl.java index 781af21bd67..f10d86bc551 100644 --- a/resteasy/src/main/java/com/linecorp/armeria/server/resteasy/ResteasyHttpResponseImpl.java +++ b/resteasy/src/main/java/com/linecorp/armeria/server/resteasy/ResteasyHttpResponseImpl.java @@ -29,6 +29,7 @@ import javax.ws.rs.core.NewCookie; import org.jboss.resteasy.specimpl.MultivaluedMapImpl; +import org.jspecify.annotations.Nullable; import com.linecorp.armeria.common.HttpData; import com.linecorp.armeria.common.HttpResponse; @@ -36,7 +37,6 @@ import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.ResponseHeadersBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.resteasy.ByteBufferBackedOutputStream; import io.netty.buffer.ByteBuf; diff --git a/resteasy/src/main/java/com/linecorp/armeria/server/resteasy/ResteasyService.java b/resteasy/src/main/java/com/linecorp/armeria/server/resteasy/ResteasyService.java index 1befce21b8d..38745da14ea 100644 --- a/resteasy/src/main/java/com/linecorp/armeria/server/resteasy/ResteasyService.java +++ b/resteasy/src/main/java/com/linecorp/armeria/server/resteasy/ResteasyService.java @@ -38,6 +38,7 @@ import org.jboss.resteasy.spi.ResteasyDeployment; import org.jboss.resteasy.spi.ResteasyProviderFactory; import org.jboss.resteasy.util.EmbeddedServerHelper; +import org.jspecify.annotations.Nullable; import com.google.common.cache.Cache; import com.google.common.cache.CacheBuilder; @@ -49,7 +50,6 @@ import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.auth.BasicToken; import com.linecorp.armeria.server.HttpService; diff --git a/resteasy/src/main/java/com/linecorp/armeria/server/resteasy/ResteasyServiceBuilder.java b/resteasy/src/main/java/com/linecorp/armeria/server/resteasy/ResteasyServiceBuilder.java index 5b747584dc0..0caf71bed74 100644 --- a/resteasy/src/main/java/com/linecorp/armeria/server/resteasy/ResteasyServiceBuilder.java +++ b/resteasy/src/main/java/com/linecorp/armeria/server/resteasy/ResteasyServiceBuilder.java @@ -23,8 +23,8 @@ import org.jboss.resteasy.plugins.server.embedded.SecurityDomain; import org.jboss.resteasy.spi.ResteasyDeployment; +import org.jspecify.annotations.Nullable; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.server.ServiceRequestContext; diff --git a/resteasy/src/main/java/com/linecorp/armeria/server/resteasy/SecurityContextImpl.java b/resteasy/src/main/java/com/linecorp/armeria/server/resteasy/SecurityContextImpl.java index f79a87a37b3..7339abb41f3 100644 --- a/resteasy/src/main/java/com/linecorp/armeria/server/resteasy/SecurityContextImpl.java +++ b/resteasy/src/main/java/com/linecorp/armeria/server/resteasy/SecurityContextImpl.java @@ -23,10 +23,10 @@ import javax.ws.rs.core.SecurityContext; import org.jboss.resteasy.plugins.server.embedded.SecurityDomain; +import org.jspecify.annotations.Nullable; import com.google.common.base.MoreObjects; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/resteasy/src/main/java/com/linecorp/armeria/server/resteasy/package-info.java b/resteasy/src/main/java/com/linecorp/armeria/server/resteasy/package-info.java index cb34d17fd20..f9fd90a5334 100644 --- a/resteasy/src/main/java/com/linecorp/armeria/server/resteasy/package-info.java +++ b/resteasy/src/main/java/com/linecorp/armeria/server/resteasy/package-info.java @@ -18,8 +18,9 @@ * Integration with RESTEasy server. */ @UnstableApi -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.resteasy; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/resteasy/src/test/java/com/linecorp/armeria/server/resteasy/CalculatorServiceClientServerTest.java b/resteasy/src/test/java/com/linecorp/armeria/server/resteasy/CalculatorServiceClientServerTest.java index 30d7273e442..6b5392bccdf 100644 --- a/resteasy/src/test/java/com/linecorp/armeria/server/resteasy/CalculatorServiceClientServerTest.java +++ b/resteasy/src/test/java/com/linecorp/armeria/server/resteasy/CalculatorServiceClientServerTest.java @@ -29,6 +29,7 @@ import org.jboss.resteasy.core.ResteasyDeploymentImpl; import org.jboss.resteasy.spi.ResteasyDeployment; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; @@ -41,7 +42,6 @@ import com.linecorp.armeria.client.WebClientBuilder; import com.linecorp.armeria.client.logging.LoggingClient; import com.linecorp.armeria.client.resteasy.ArmeriaResteasyClientBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.LogLevel; import com.linecorp.armeria.common.logging.LogWriter; import com.linecorp.armeria.internal.testing.GenerateNativeImageTrace; diff --git a/resteasy/src/test/java/testing/resteasy/jaxrs/samples/books/Books.java b/resteasy/src/test/java/testing/resteasy/jaxrs/samples/books/Books.java index fee4ecb4dcd..6a7f81c5421 100644 --- a/resteasy/src/test/java/testing/resteasy/jaxrs/samples/books/Books.java +++ b/resteasy/src/test/java/testing/resteasy/jaxrs/samples/books/Books.java @@ -22,7 +22,7 @@ import java.util.concurrent.ConcurrentMap; import java.util.stream.Collectors; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; public class Books { diff --git a/retrofit2/src/main/java/com/linecorp/armeria/client/retrofit2/AbstractSubscriber.java b/retrofit2/src/main/java/com/linecorp/armeria/client/retrofit2/AbstractSubscriber.java index 866dd329a5c..226c8c8befc 100644 --- a/retrofit2/src/main/java/com/linecorp/armeria/client/retrofit2/AbstractSubscriber.java +++ b/retrofit2/src/main/java/com/linecorp/armeria/client/retrofit2/AbstractSubscriber.java @@ -19,6 +19,7 @@ import java.io.IOException; import java.util.concurrent.Executor; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; @@ -30,7 +31,6 @@ import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.HttpObject; import com.linecorp.armeria.common.HttpStatus; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.unsafe.PooledObjects; import okhttp3.Callback; diff --git a/retrofit2/src/main/java/com/linecorp/armeria/client/retrofit2/ArmeriaCallFactory.java b/retrofit2/src/main/java/com/linecorp/armeria/client/retrofit2/ArmeriaCallFactory.java index 1746e2cf6db..cc366e67ad5 100644 --- a/retrofit2/src/main/java/com/linecorp/armeria/client/retrofit2/ArmeriaCallFactory.java +++ b/retrofit2/src/main/java/com/linecorp/armeria/client/retrofit2/ArmeriaCallFactory.java @@ -23,6 +23,8 @@ import java.util.concurrent.atomic.AtomicReferenceFieldUpdater; import java.util.function.BiFunction; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.Endpoint; import com.linecorp.armeria.client.WebClient; import com.linecorp.armeria.common.HttpHeaderNames; @@ -31,7 +33,6 @@ import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.RequestHeadersBuilder; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.common.util.SafeCloseable; diff --git a/retrofit2/src/main/java/com/linecorp/armeria/client/retrofit2/ArmeriaRetrofitBuilder.java b/retrofit2/src/main/java/com/linecorp/armeria/client/retrofit2/ArmeriaRetrofitBuilder.java index 594a4fc553a..1eaafbe9082 100644 --- a/retrofit2/src/main/java/com/linecorp/armeria/client/retrofit2/ArmeriaRetrofitBuilder.java +++ b/retrofit2/src/main/java/com/linecorp/armeria/client/retrofit2/ArmeriaRetrofitBuilder.java @@ -28,6 +28,8 @@ import java.util.function.Function; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; + import com.github.benmanes.caffeine.cache.Cache; import com.github.benmanes.caffeine.cache.Caffeine; import com.google.common.base.MoreObjects; @@ -55,7 +57,6 @@ import com.linecorp.armeria.common.RequestId; import com.linecorp.armeria.common.SessionProtocol; import com.linecorp.armeria.common.SuccessFunction; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.auth.AuthToken; import com.linecorp.armeria.common.auth.BasicToken; import com.linecorp.armeria.common.auth.OAuth1aToken; diff --git a/retrofit2/src/main/java/com/linecorp/armeria/client/retrofit2/InvocationUtil.java b/retrofit2/src/main/java/com/linecorp/armeria/client/retrofit2/InvocationUtil.java index f97300f1c2d..64d1e6ddcc6 100644 --- a/retrofit2/src/main/java/com/linecorp/armeria/client/retrofit2/InvocationUtil.java +++ b/retrofit2/src/main/java/com/linecorp/armeria/client/retrofit2/InvocationUtil.java @@ -15,8 +15,9 @@ */ package com.linecorp.armeria.client.retrofit2; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.ClientRequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.logging.RequestLogAccess; import com.linecorp.armeria.common.logging.RequestLogProperty; diff --git a/retrofit2/src/main/java/com/linecorp/armeria/client/retrofit2/PipeBuffer.java b/retrofit2/src/main/java/com/linecorp/armeria/client/retrofit2/PipeBuffer.java index 939a2e439f0..c92177ce6b9 100644 --- a/retrofit2/src/main/java/com/linecorp/armeria/client/retrofit2/PipeBuffer.java +++ b/retrofit2/src/main/java/com/linecorp/armeria/client/retrofit2/PipeBuffer.java @@ -17,7 +17,7 @@ import java.io.IOException; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; import okio.Buffer; import okio.Source; diff --git a/retrofit2/src/main/java/com/linecorp/armeria/client/retrofit2/package-info.java b/retrofit2/src/main/java/com/linecorp/armeria/client/retrofit2/package-info.java index 3221c99e61f..c1e81f481e5 100644 --- a/retrofit2/src/main/java/com/linecorp/armeria/client/retrofit2/package-info.java +++ b/retrofit2/src/main/java/com/linecorp/armeria/client/retrofit2/package-info.java @@ -17,7 +17,7 @@ /** * Retrofit2 adapter for Armeria. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.client.retrofit2; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/retrofit2/src/test/java/com/linecorp/armeria/client/retrofit2/ArmeriaCallFactoryTest.java b/retrofit2/src/test/java/com/linecorp/armeria/client/retrofit2/ArmeriaCallFactoryTest.java index ec09c05f04c..542abe41893 100644 --- a/retrofit2/src/test/java/com/linecorp/armeria/client/retrofit2/ArmeriaCallFactoryTest.java +++ b/retrofit2/src/test/java/com/linecorp/armeria/client/retrofit2/ArmeriaCallFactoryTest.java @@ -29,6 +29,7 @@ import java.util.concurrent.atomic.AtomicInteger; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtensionContext; import org.junit.jupiter.api.extension.RegisterExtension; @@ -55,7 +56,6 @@ import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.QueryParams; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.internal.testing.GenerateNativeImageTrace; diff --git a/retrofit2/src/test/java/com/linecorp/armeria/client/retrofit2/BlockingCallSubscriberTest.java b/retrofit2/src/test/java/com/linecorp/armeria/client/retrofit2/BlockingCallSubscriberTest.java index 11c822c08db..994b0ebc403 100644 --- a/retrofit2/src/test/java/com/linecorp/armeria/client/retrofit2/BlockingCallSubscriberTest.java +++ b/retrofit2/src/test/java/com/linecorp/armeria/client/retrofit2/BlockingCallSubscriberTest.java @@ -21,6 +21,7 @@ import java.io.IOException; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.mockito.Mock; import org.reactivestreams.Subscription; @@ -30,7 +31,6 @@ import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import okhttp3.Call; import okhttp3.Callback; diff --git a/retrofit2/src/test/java/com/linecorp/armeria/client/retrofit2/StreamingCallSubscriberTest.java b/retrofit2/src/test/java/com/linecorp/armeria/client/retrofit2/StreamingCallSubscriberTest.java index 633fc0e9a0d..77097e49108 100644 --- a/retrofit2/src/test/java/com/linecorp/armeria/client/retrofit2/StreamingCallSubscriberTest.java +++ b/retrofit2/src/test/java/com/linecorp/armeria/client/retrofit2/StreamingCallSubscriberTest.java @@ -26,6 +26,7 @@ import java.io.IOException; import java.util.concurrent.TimeUnit; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.mockito.Mock; import org.reactivestreams.Subscription; @@ -38,7 +39,6 @@ import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import okhttp3.Call; import okhttp3.Callback; diff --git a/rxjava2/src/main/java/com/linecorp/armeria/common/rxjava2/RequestContextAssembly.java b/rxjava2/src/main/java/com/linecorp/armeria/common/rxjava2/RequestContextAssembly.java index 46224738fc1..b89392d4e0f 100644 --- a/rxjava2/src/main/java/com/linecorp/armeria/common/rxjava2/RequestContextAssembly.java +++ b/rxjava2/src/main/java/com/linecorp/armeria/common/rxjava2/RequestContextAssembly.java @@ -18,10 +18,11 @@ import java.util.concurrent.Callable; +import org.jspecify.annotations.Nullable; + import com.google.errorprone.annotations.concurrent.GuardedBy; import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import io.reactivex.Completable; import io.reactivex.Flowable; diff --git a/rxjava2/src/main/java/com/linecorp/armeria/common/rxjava2/RequestContextCompletableObserver.java b/rxjava2/src/main/java/com/linecorp/armeria/common/rxjava2/RequestContextCompletableObserver.java index b826c69611f..1ac69648106 100644 --- a/rxjava2/src/main/java/com/linecorp/armeria/common/rxjava2/RequestContextCompletableObserver.java +++ b/rxjava2/src/main/java/com/linecorp/armeria/common/rxjava2/RequestContextCompletableObserver.java @@ -16,8 +16,9 @@ package com.linecorp.armeria.common.rxjava2; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.SafeCloseable; import io.reactivex.CompletableObserver; diff --git a/rxjava2/src/main/java/com/linecorp/armeria/common/rxjava2/RequestContextMaybeObserver.java b/rxjava2/src/main/java/com/linecorp/armeria/common/rxjava2/RequestContextMaybeObserver.java index 3014e971df7..98096c4485a 100644 --- a/rxjava2/src/main/java/com/linecorp/armeria/common/rxjava2/RequestContextMaybeObserver.java +++ b/rxjava2/src/main/java/com/linecorp/armeria/common/rxjava2/RequestContextMaybeObserver.java @@ -16,8 +16,9 @@ package com.linecorp.armeria.common.rxjava2; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.SafeCloseable; import io.reactivex.MaybeObserver; diff --git a/rxjava2/src/main/java/com/linecorp/armeria/common/rxjava2/RequestContextSingleObserver.java b/rxjava2/src/main/java/com/linecorp/armeria/common/rxjava2/RequestContextSingleObserver.java index d98e3776feb..ef64dce1cd9 100644 --- a/rxjava2/src/main/java/com/linecorp/armeria/common/rxjava2/RequestContextSingleObserver.java +++ b/rxjava2/src/main/java/com/linecorp/armeria/common/rxjava2/RequestContextSingleObserver.java @@ -16,8 +16,9 @@ package com.linecorp.armeria.common.rxjava2; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.SafeCloseable; import io.reactivex.SingleObserver; diff --git a/rxjava2/src/main/java/com/linecorp/armeria/common/rxjava2/package-info.java b/rxjava2/src/main/java/com/linecorp/armeria/common/rxjava2/package-info.java index ee7206f9706..bbebc270066 100644 --- a/rxjava2/src/main/java/com/linecorp/armeria/common/rxjava2/package-info.java +++ b/rxjava2/src/main/java/com/linecorp/armeria/common/rxjava2/package-info.java @@ -17,7 +17,7 @@ /** * RxJava2 plugins to help keep {@link com.linecorp.armeria.common.RequestContext} during RxJava2 Operations. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.common.rxjava2; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/rxjava2/src/main/java/com/linecorp/armeria/internal/server/rxjava2/ObservableResponseConverterFunctionProvider.java b/rxjava2/src/main/java/com/linecorp/armeria/internal/server/rxjava2/ObservableResponseConverterFunctionProvider.java index 74490726bba..77f2d074235 100644 --- a/rxjava2/src/main/java/com/linecorp/armeria/internal/server/rxjava2/ObservableResponseConverterFunctionProvider.java +++ b/rxjava2/src/main/java/com/linecorp/armeria/internal/server/rxjava2/ObservableResponseConverterFunctionProvider.java @@ -20,7 +20,8 @@ import java.lang.reflect.ParameterizedType; import java.lang.reflect.Type; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.server.annotation.DelegatingResponseConverterFunctionProvider; import com.linecorp.armeria.server.annotation.ResponseConverterFunction; diff --git a/rxjava2/src/main/java/com/linecorp/armeria/internal/server/rxjava2/package-info.java b/rxjava2/src/main/java/com/linecorp/armeria/internal/server/rxjava2/package-info.java index 26941b9c383..0370d2e2ddf 100644 --- a/rxjava2/src/main/java/com/linecorp/armeria/internal/server/rxjava2/package-info.java +++ b/rxjava2/src/main/java/com/linecorp/armeria/internal/server/rxjava2/package-info.java @@ -14,7 +14,7 @@ * under the License. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.server.rxjava2; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/rxjava2/src/main/java/com/linecorp/armeria/server/rxjava2/ObservableResponseConverterFunction.java b/rxjava2/src/main/java/com/linecorp/armeria/server/rxjava2/ObservableResponseConverterFunction.java index 780a77eb8d6..9e7d82cf26b 100644 --- a/rxjava2/src/main/java/com/linecorp/armeria/server/rxjava2/ObservableResponseConverterFunction.java +++ b/rxjava2/src/main/java/com/linecorp/armeria/server/rxjava2/ObservableResponseConverterFunction.java @@ -22,11 +22,12 @@ import java.lang.reflect.Type; import java.util.concurrent.CompletableFuture; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.ServiceRequestContext; import com.linecorp.armeria.server.annotation.ExceptionHandlerFunction; import com.linecorp.armeria.server.annotation.ResponseConverterFunction; diff --git a/rxjava2/src/main/java/com/linecorp/armeria/server/rxjava2/package-info.java b/rxjava2/src/main/java/com/linecorp/armeria/server/rxjava2/package-info.java index 5da5769db52..d72346fde49 100644 --- a/rxjava2/src/main/java/com/linecorp/armeria/server/rxjava2/package-info.java +++ b/rxjava2/src/main/java/com/linecorp/armeria/server/rxjava2/package-info.java @@ -20,7 +20,7 @@ * {@link com.linecorp.armeria.common.HttpResponse} when the {@link io.reactivex.ObservableSource} * is returned by an annotated HTTP service. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.rxjava2; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/rxjava2/src/test/java/com/linecorp/armeria/server/rxjava2/ObservableResponseConverterFunctionProviderTest.java b/rxjava2/src/test/java/com/linecorp/armeria/server/rxjava2/ObservableResponseConverterFunctionProviderTest.java index b409299edf3..4583d1e3628 100644 --- a/rxjava2/src/test/java/com/linecorp/armeria/server/rxjava2/ObservableResponseConverterFunctionProviderTest.java +++ b/rxjava2/src/test/java/com/linecorp/armeria/server/rxjava2/ObservableResponseConverterFunctionProviderTest.java @@ -22,6 +22,7 @@ import java.util.Iterator; import java.util.ServiceLoader; +import org.jspecify.annotations.Nullable; import org.junit.Test; import com.linecorp.armeria.common.HttpHeaders; @@ -29,7 +30,6 @@ import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.server.rxjava2.ObservableResponseConverterFunctionProvider; import com.linecorp.armeria.server.ServiceRequestContext; import com.linecorp.armeria.server.annotation.DelegatingResponseConverterFunctionProvider; diff --git a/rxjava2/src/test/java/com/linecorp/armeria/server/rxjava2/ObservableResponseConverterFunctionTest.java b/rxjava2/src/test/java/com/linecorp/armeria/server/rxjava2/ObservableResponseConverterFunctionTest.java index 698511612cb..4b84a08605b 100644 --- a/rxjava2/src/test/java/com/linecorp/armeria/server/rxjava2/ObservableResponseConverterFunctionTest.java +++ b/rxjava2/src/test/java/com/linecorp/armeria/server/rxjava2/ObservableResponseConverterFunctionTest.java @@ -29,6 +29,7 @@ import java.util.Iterator; import java.util.concurrent.atomic.AtomicBoolean; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; import org.reactivestreams.Publisher; @@ -47,7 +48,6 @@ import com.linecorp.armeria.common.RequestContext; import com.linecorp.armeria.common.ResponseEntity; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.testing.AnticipatedException; import com.linecorp.armeria.internal.testing.GenerateNativeImageTrace; import com.linecorp.armeria.server.ServerBuilder; diff --git a/rxjava3/src/main/java/com/linecorp/armeria/common/rxjava3/RequestContextAssembly.java b/rxjava3/src/main/java/com/linecorp/armeria/common/rxjava3/RequestContextAssembly.java index 92799f8617e..d75bc3b0381 100644 --- a/rxjava3/src/main/java/com/linecorp/armeria/common/rxjava3/RequestContextAssembly.java +++ b/rxjava3/src/main/java/com/linecorp/armeria/common/rxjava3/RequestContextAssembly.java @@ -16,10 +16,11 @@ package com.linecorp.armeria.common.rxjava3; +import org.jspecify.annotations.Nullable; + import com.google.errorprone.annotations.concurrent.GuardedBy; import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import io.reactivex.rxjava3.core.Completable; import io.reactivex.rxjava3.core.Flowable; diff --git a/rxjava3/src/main/java/com/linecorp/armeria/common/rxjava3/RequestContextCompletableObserver.java b/rxjava3/src/main/java/com/linecorp/armeria/common/rxjava3/RequestContextCompletableObserver.java index 09c0219f1c5..da8030c2e38 100644 --- a/rxjava3/src/main/java/com/linecorp/armeria/common/rxjava3/RequestContextCompletableObserver.java +++ b/rxjava3/src/main/java/com/linecorp/armeria/common/rxjava3/RequestContextCompletableObserver.java @@ -16,8 +16,9 @@ package com.linecorp.armeria.common.rxjava3; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.SafeCloseable; import io.reactivex.rxjava3.core.CompletableObserver; diff --git a/rxjava3/src/main/java/com/linecorp/armeria/common/rxjava3/RequestContextMaybeObserver.java b/rxjava3/src/main/java/com/linecorp/armeria/common/rxjava3/RequestContextMaybeObserver.java index 2edfa55d1b7..5a35c42871b 100644 --- a/rxjava3/src/main/java/com/linecorp/armeria/common/rxjava3/RequestContextMaybeObserver.java +++ b/rxjava3/src/main/java/com/linecorp/armeria/common/rxjava3/RequestContextMaybeObserver.java @@ -16,8 +16,9 @@ package com.linecorp.armeria.common.rxjava3; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.SafeCloseable; import io.reactivex.rxjava3.core.MaybeObserver; diff --git a/rxjava3/src/main/java/com/linecorp/armeria/common/rxjava3/RequestContextSingleObserver.java b/rxjava3/src/main/java/com/linecorp/armeria/common/rxjava3/RequestContextSingleObserver.java index 6bf9b3bd0ef..13582007fe7 100644 --- a/rxjava3/src/main/java/com/linecorp/armeria/common/rxjava3/RequestContextSingleObserver.java +++ b/rxjava3/src/main/java/com/linecorp/armeria/common/rxjava3/RequestContextSingleObserver.java @@ -16,8 +16,9 @@ package com.linecorp.armeria.common.rxjava3; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.SafeCloseable; import io.reactivex.rxjava3.core.SingleObserver; diff --git a/rxjava3/src/main/java/com/linecorp/armeria/common/rxjava3/package-info.java b/rxjava3/src/main/java/com/linecorp/armeria/common/rxjava3/package-info.java index 7b6f0ef705d..c3ccb3b745e 100644 --- a/rxjava3/src/main/java/com/linecorp/armeria/common/rxjava3/package-info.java +++ b/rxjava3/src/main/java/com/linecorp/armeria/common/rxjava3/package-info.java @@ -17,7 +17,7 @@ /** * RxJava3 plugins to help keep {@link com.linecorp.armeria.common.RequestContext} during RxJava3 Operations. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.common.rxjava3; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/rxjava3/src/main/java/com/linecorp/armeria/internal/server/rxjava3/ObservableResponseConverterFunctionProvider.java b/rxjava3/src/main/java/com/linecorp/armeria/internal/server/rxjava3/ObservableResponseConverterFunctionProvider.java index e71c7d313bd..207a0947179 100644 --- a/rxjava3/src/main/java/com/linecorp/armeria/internal/server/rxjava3/ObservableResponseConverterFunctionProvider.java +++ b/rxjava3/src/main/java/com/linecorp/armeria/internal/server/rxjava3/ObservableResponseConverterFunctionProvider.java @@ -18,7 +18,8 @@ import java.lang.reflect.ParameterizedType; import java.lang.reflect.Type; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.server.annotation.DelegatingResponseConverterFunctionProvider; import com.linecorp.armeria.server.annotation.ResponseConverterFunction; diff --git a/rxjava3/src/main/java/com/linecorp/armeria/internal/server/rxjava3/package-info.java b/rxjava3/src/main/java/com/linecorp/armeria/internal/server/rxjava3/package-info.java index 9cb049bd774..42e982479de 100644 --- a/rxjava3/src/main/java/com/linecorp/armeria/internal/server/rxjava3/package-info.java +++ b/rxjava3/src/main/java/com/linecorp/armeria/internal/server/rxjava3/package-info.java @@ -14,7 +14,7 @@ * under the License. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.server.rxjava3; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/rxjava3/src/main/java/com/linecorp/armeria/server/rxjava3/ObservableResponseConverterFunction.java b/rxjava3/src/main/java/com/linecorp/armeria/server/rxjava3/ObservableResponseConverterFunction.java index c01f88c8692..17233dbee69 100644 --- a/rxjava3/src/main/java/com/linecorp/armeria/server/rxjava3/ObservableResponseConverterFunction.java +++ b/rxjava3/src/main/java/com/linecorp/armeria/server/rxjava3/ObservableResponseConverterFunction.java @@ -23,11 +23,12 @@ import java.util.concurrent.CompletionStage; import java.util.function.BiFunction; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.HttpHeaders; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.ServiceRequestContext; import com.linecorp.armeria.server.annotation.ExceptionHandlerFunction; import com.linecorp.armeria.server.annotation.ResponseConverterFunction; diff --git a/rxjava3/src/main/java/com/linecorp/armeria/server/rxjava3/package-info.java b/rxjava3/src/main/java/com/linecorp/armeria/server/rxjava3/package-info.java index 16865ee7c12..34a274fb978 100644 --- a/rxjava3/src/main/java/com/linecorp/armeria/server/rxjava3/package-info.java +++ b/rxjava3/src/main/java/com/linecorp/armeria/server/rxjava3/package-info.java @@ -20,7 +20,7 @@ * {@link com.linecorp.armeria.common.HttpResponse} when the {@link io.reactivex.rxjava3.core.ObservableSource} * is returned by an annotated HTTP service. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.rxjava3; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/rxjava3/src/test/java/com/linecorp/armeria/server/rxjava3/ObservableResponseConverterFunctionProviderTest.java b/rxjava3/src/test/java/com/linecorp/armeria/server/rxjava3/ObservableResponseConverterFunctionProviderTest.java index fa4b1d419af..83512ed5351 100644 --- a/rxjava3/src/test/java/com/linecorp/armeria/server/rxjava3/ObservableResponseConverterFunctionProviderTest.java +++ b/rxjava3/src/test/java/com/linecorp/armeria/server/rxjava3/ObservableResponseConverterFunctionProviderTest.java @@ -22,6 +22,7 @@ import java.util.Iterator; import java.util.ServiceLoader; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import com.linecorp.armeria.common.HttpHeaders; @@ -29,7 +30,6 @@ import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.server.rxjava3.ObservableResponseConverterFunctionProvider; import com.linecorp.armeria.server.ServiceRequestContext; import com.linecorp.armeria.server.annotation.DelegatingResponseConverterFunctionProvider; diff --git a/saml/src/main/java/com/linecorp/armeria/server/saml/HttpPostBindingUtil.java b/saml/src/main/java/com/linecorp/armeria/server/saml/HttpPostBindingUtil.java index 8647217deaa..8a04a2538bd 100644 --- a/saml/src/main/java/com/linecorp/armeria/server/saml/HttpPostBindingUtil.java +++ b/saml/src/main/java/com/linecorp/armeria/server/saml/HttpPostBindingUtil.java @@ -25,6 +25,7 @@ import java.nio.charset.StandardCharsets; import java.util.Base64; +import org.jspecify.annotations.Nullable; import org.opensaml.messaging.context.MessageContext; import org.opensaml.saml.common.SAMLObject; import org.opensaml.saml.common.SignableSAMLObject; @@ -37,7 +38,6 @@ import com.linecorp.armeria.common.AggregatedHttpRequest; import com.linecorp.armeria.common.HttpData; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.saml.SamlService.SamlParameters; /** diff --git a/saml/src/main/java/com/linecorp/armeria/server/saml/HttpRedirectBindingUtil.java b/saml/src/main/java/com/linecorp/armeria/server/saml/HttpRedirectBindingUtil.java index 4b8a610bd2e..609ac664305 100644 --- a/saml/src/main/java/com/linecorp/armeria/server/saml/HttpRedirectBindingUtil.java +++ b/saml/src/main/java/com/linecorp/armeria/server/saml/HttpRedirectBindingUtil.java @@ -31,6 +31,7 @@ import java.util.zip.Inflater; import java.util.zip.InflaterOutputStream; +import org.jspecify.annotations.Nullable; import org.opensaml.core.xml.XMLObject; import org.opensaml.core.xml.io.MarshallingException; import org.opensaml.core.xml.util.XMLObjectSupport; @@ -53,7 +54,6 @@ import com.linecorp.armeria.common.QueryParams; import com.linecorp.armeria.common.QueryParamsBuilder; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.saml.SamlService.SamlParameters; import io.netty.handler.codec.http.HttpHeaderValues; diff --git a/saml/src/main/java/com/linecorp/armeria/server/saml/InvalidSamlRequestException.java b/saml/src/main/java/com/linecorp/armeria/server/saml/InvalidSamlRequestException.java index 72ee62e89fa..16b5fcb8dd0 100644 --- a/saml/src/main/java/com/linecorp/armeria/server/saml/InvalidSamlRequestException.java +++ b/saml/src/main/java/com/linecorp/armeria/server/saml/InvalidSamlRequestException.java @@ -15,7 +15,7 @@ */ package com.linecorp.armeria.server.saml; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * Indicates that a SAML request is not valid. diff --git a/saml/src/main/java/com/linecorp/armeria/server/saml/KeyStoreCredentialResolverBuilder.java b/saml/src/main/java/com/linecorp/armeria/server/saml/KeyStoreCredentialResolverBuilder.java index 2a06aa0702d..c132c54a19a 100644 --- a/saml/src/main/java/com/linecorp/armeria/server/saml/KeyStoreCredentialResolverBuilder.java +++ b/saml/src/main/java/com/linecorp/armeria/server/saml/KeyStoreCredentialResolverBuilder.java @@ -29,11 +29,10 @@ import java.util.HashMap; import java.util.Map; +import org.jspecify.annotations.Nullable; import org.opensaml.security.credential.CredentialResolver; import org.opensaml.security.credential.impl.KeyStoreCredentialResolver; -import com.linecorp.armeria.common.annotation.Nullable; - /** * A builder class which creates a new {@link KeyStoreCredentialResolver} instance. */ diff --git a/saml/src/main/java/com/linecorp/armeria/server/saml/SamlAssertionConsumerConfigBuilder.java b/saml/src/main/java/com/linecorp/armeria/server/saml/SamlAssertionConsumerConfigBuilder.java index 141428ae726..8bf171e0322 100644 --- a/saml/src/main/java/com/linecorp/armeria/server/saml/SamlAssertionConsumerConfigBuilder.java +++ b/saml/src/main/java/com/linecorp/armeria/server/saml/SamlAssertionConsumerConfigBuilder.java @@ -18,7 +18,7 @@ import static com.google.common.base.Preconditions.checkState; import static java.util.Objects.requireNonNull; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * A builder which builds a {@link SamlAssertionConsumerConfig}. diff --git a/saml/src/main/java/com/linecorp/armeria/server/saml/SamlAssertionConsumerFunction.java b/saml/src/main/java/com/linecorp/armeria/server/saml/SamlAssertionConsumerFunction.java index b8c3da9b8b9..19a10e795dc 100644 --- a/saml/src/main/java/com/linecorp/armeria/server/saml/SamlAssertionConsumerFunction.java +++ b/saml/src/main/java/com/linecorp/armeria/server/saml/SamlAssertionConsumerFunction.java @@ -25,6 +25,7 @@ import java.util.concurrent.TimeUnit; import org.joda.time.DateTime; +import org.jspecify.annotations.Nullable; import org.opensaml.messaging.context.MessageContext; import org.opensaml.saml.common.messaging.context.SAMLBindingContext; import org.opensaml.saml.saml2.core.Assertion; @@ -51,7 +52,6 @@ import com.linecorp.armeria.common.AggregatedHttpRequest; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.RequestTarget; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.ServiceRequestContext; /** diff --git a/saml/src/main/java/com/linecorp/armeria/server/saml/SamlDecorator.java b/saml/src/main/java/com/linecorp/armeria/server/saml/SamlDecorator.java index e02baf91bb4..27de0ec92bf 100644 --- a/saml/src/main/java/com/linecorp/armeria/server/saml/SamlDecorator.java +++ b/saml/src/main/java/com/linecorp/armeria/server/saml/SamlDecorator.java @@ -27,6 +27,7 @@ import java.util.concurrent.CompletionStage; import org.joda.time.DateTime; +import org.jspecify.annotations.Nullable; import org.opensaml.messaging.context.MessageContext; import org.opensaml.saml.common.messaging.context.SAMLBindingContext; import org.opensaml.saml.saml2.core.AuthnContext; @@ -45,7 +46,6 @@ import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.MediaType; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.server.HttpService; import com.linecorp.armeria.server.Server; diff --git a/saml/src/main/java/com/linecorp/armeria/server/saml/SamlEndpoint.java b/saml/src/main/java/com/linecorp/armeria/server/saml/SamlEndpoint.java index 7e1af0b2835..7cf1d8e9bc6 100644 --- a/saml/src/main/java/com/linecorp/armeria/server/saml/SamlEndpoint.java +++ b/saml/src/main/java/com/linecorp/armeria/server/saml/SamlEndpoint.java @@ -23,10 +23,11 @@ import java.net.URI; import java.net.URISyntaxException; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.annotation.JsonProperty; import com.google.common.base.MoreObjects; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; /** diff --git a/saml/src/main/java/com/linecorp/armeria/server/saml/SamlException.java b/saml/src/main/java/com/linecorp/armeria/server/saml/SamlException.java index d0131f9f187..87960b57b9b 100644 --- a/saml/src/main/java/com/linecorp/armeria/server/saml/SamlException.java +++ b/saml/src/main/java/com/linecorp/armeria/server/saml/SamlException.java @@ -15,8 +15,9 @@ */ package com.linecorp.armeria.server.saml; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.Flags; -import com.linecorp.armeria.common.annotation.Nullable; /** * Indicates that an error occurred while processing a SAML request. diff --git a/saml/src/main/java/com/linecorp/armeria/server/saml/SamlIdentityProviderConfig.java b/saml/src/main/java/com/linecorp/armeria/server/saml/SamlIdentityProviderConfig.java index 00a3e8da7ab..34169ef8b3f 100644 --- a/saml/src/main/java/com/linecorp/armeria/server/saml/SamlIdentityProviderConfig.java +++ b/saml/src/main/java/com/linecorp/armeria/server/saml/SamlIdentityProviderConfig.java @@ -17,13 +17,12 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; import org.opensaml.saml.saml2.core.NameIDPolicy; import org.opensaml.security.credential.Credential; import com.google.common.base.MoreObjects; -import com.linecorp.armeria.common.annotation.Nullable; - /** * A configuration for an identity provider. */ diff --git a/saml/src/main/java/com/linecorp/armeria/server/saml/SamlIdentityProviderConfigBuilder.java b/saml/src/main/java/com/linecorp/armeria/server/saml/SamlIdentityProviderConfigBuilder.java index 43b36adfa90..f506a9b73d9 100644 --- a/saml/src/main/java/com/linecorp/armeria/server/saml/SamlIdentityProviderConfigBuilder.java +++ b/saml/src/main/java/com/linecorp/armeria/server/saml/SamlIdentityProviderConfigBuilder.java @@ -19,10 +19,10 @@ import static com.google.common.base.Preconditions.checkState; import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; import org.opensaml.saml.saml2.core.AuthnRequest; import org.opensaml.security.credential.Credential; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.saml.SamlServiceProviderBuilder.CredentialResolverAdapter; /** diff --git a/saml/src/main/java/com/linecorp/armeria/server/saml/SamlInitializer.java b/saml/src/main/java/com/linecorp/armeria/server/saml/SamlInitializer.java index 7809ddd8000..0aad5f67c0b 100644 --- a/saml/src/main/java/com/linecorp/armeria/server/saml/SamlInitializer.java +++ b/saml/src/main/java/com/linecorp/armeria/server/saml/SamlInitializer.java @@ -15,13 +15,12 @@ */ package com.linecorp.armeria.server.saml; +import org.jspecify.annotations.Nullable; import org.opensaml.core.config.InitializationService; import org.opensaml.xmlsec.config.impl.JavaCryptoValidationInitializer; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import com.linecorp.armeria.common.annotation.Nullable; - /** * A utility class which initializes the OpenSAML library. * See OpenSAML 3 for more information. diff --git a/saml/src/main/java/com/linecorp/armeria/server/saml/SamlMessageUtil.java b/saml/src/main/java/com/linecorp/armeria/server/saml/SamlMessageUtil.java index 5ac8d647883..3047ea02133 100644 --- a/saml/src/main/java/com/linecorp/armeria/server/saml/SamlMessageUtil.java +++ b/saml/src/main/java/com/linecorp/armeria/server/saml/SamlMessageUtil.java @@ -23,6 +23,7 @@ import javax.xml.namespace.QName; +import org.jspecify.annotations.Nullable; import org.opensaml.core.xml.XMLObject; import org.opensaml.core.xml.XMLObjectBuilderFactory; import org.opensaml.core.xml.config.XMLObjectProviderRegistrySupport; @@ -48,8 +49,6 @@ import net.shibboleth.utilities.java.support.xml.ParserPool; import net.shibboleth.utilities.java.support.xml.XMLParserException; -import com.linecorp.armeria.common.annotation.Nullable; - /** * A utility class for SAML messages. */ diff --git a/saml/src/main/java/com/linecorp/armeria/server/saml/SamlMetadataServiceFunction.java b/saml/src/main/java/com/linecorp/armeria/server/saml/SamlMetadataServiceFunction.java index 2c48254696a..d5635aeb1a4 100644 --- a/saml/src/main/java/com/linecorp/armeria/server/saml/SamlMetadataServiceFunction.java +++ b/saml/src/main/java/com/linecorp/armeria/server/saml/SamlMetadataServiceFunction.java @@ -26,6 +26,7 @@ import java.util.concurrent.ConcurrentMap; import java.util.stream.Collectors; +import org.jspecify.annotations.Nullable; import org.opensaml.saml.common.SAMLObjectBuilder; import org.opensaml.saml.common.xml.SAMLConstants; import org.opensaml.saml.saml2.metadata.AssertionConsumerService; @@ -54,7 +55,6 @@ import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.ServiceRequestContext; /** diff --git a/saml/src/main/java/com/linecorp/armeria/server/saml/SamlPortConfigAutoFiller.java b/saml/src/main/java/com/linecorp/armeria/server/saml/SamlPortConfigAutoFiller.java index 9381cc7b37c..57f4cc01072 100644 --- a/saml/src/main/java/com/linecorp/armeria/server/saml/SamlPortConfigAutoFiller.java +++ b/saml/src/main/java/com/linecorp/armeria/server/saml/SamlPortConfigAutoFiller.java @@ -18,7 +18,8 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.atomic.AtomicBoolean; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.server.Server; import com.linecorp.armeria.server.ServerListenerAdapter; import com.linecorp.armeria.server.ServerPort; diff --git a/saml/src/main/java/com/linecorp/armeria/server/saml/SamlPortConfigBuilder.java b/saml/src/main/java/com/linecorp/armeria/server/saml/SamlPortConfigBuilder.java index 68af63f9c9b..543c7ee33d8 100644 --- a/saml/src/main/java/com/linecorp/armeria/server/saml/SamlPortConfigBuilder.java +++ b/saml/src/main/java/com/linecorp/armeria/server/saml/SamlPortConfigBuilder.java @@ -19,10 +19,11 @@ import static com.linecorp.armeria.server.saml.SamlPortConfig.validatePort; import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.ServerPort; /** diff --git a/saml/src/main/java/com/linecorp/armeria/server/saml/SamlService.java b/saml/src/main/java/com/linecorp/armeria/server/saml/SamlService.java index f9ab8f3b44d..e0fd97cb038 100644 --- a/saml/src/main/java/com/linecorp/armeria/server/saml/SamlService.java +++ b/saml/src/main/java/com/linecorp/armeria/server/saml/SamlService.java @@ -24,6 +24,7 @@ import java.util.Set; import java.util.concurrent.CompletionStage; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -39,7 +40,6 @@ import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.QueryParams; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.server.HttpResponseException; import com.linecorp.armeria.server.HttpService; diff --git a/saml/src/main/java/com/linecorp/armeria/server/saml/SamlServiceProvider.java b/saml/src/main/java/com/linecorp/armeria/server/saml/SamlServiceProvider.java index b89ca9f2bb9..5fa9803c7dc 100644 --- a/saml/src/main/java/com/linecorp/armeria/server/saml/SamlServiceProvider.java +++ b/saml/src/main/java/com/linecorp/armeria/server/saml/SamlServiceProvider.java @@ -21,6 +21,7 @@ import java.util.Map; import java.util.function.Function; +import org.jspecify.annotations.Nullable; import org.opensaml.security.credential.Credential; import org.opensaml.xmlsec.signature.support.SignatureConstants; @@ -29,7 +30,6 @@ import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.HttpService; import com.linecorp.armeria.server.HttpServiceWithRoutes; import com.linecorp.armeria.server.Route; diff --git a/saml/src/main/java/com/linecorp/armeria/server/saml/SamlServiceProviderBuilder.java b/saml/src/main/java/com/linecorp/armeria/server/saml/SamlServiceProviderBuilder.java index ffb8570a164..02903bb2520 100644 --- a/saml/src/main/java/com/linecorp/armeria/server/saml/SamlServiceProviderBuilder.java +++ b/saml/src/main/java/com/linecorp/armeria/server/saml/SamlServiceProviderBuilder.java @@ -36,6 +36,7 @@ import java.util.concurrent.CompletionStage; import java.util.function.Function; +import org.jspecify.annotations.Nullable; import org.opensaml.core.criterion.EntityIdCriterion; import org.opensaml.messaging.context.MessageContext; import org.opensaml.saml.common.messaging.context.SAMLBindingContext; @@ -58,7 +59,6 @@ import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.common.util.UnmodifiableFuture; import com.linecorp.armeria.server.Server; diff --git a/saml/src/main/java/com/linecorp/armeria/server/saml/SamlSingleLogoutFunction.java b/saml/src/main/java/com/linecorp/armeria/server/saml/SamlSingleLogoutFunction.java index abdb516bc11..fe5e6226094 100644 --- a/saml/src/main/java/com/linecorp/armeria/server/saml/SamlSingleLogoutFunction.java +++ b/saml/src/main/java/com/linecorp/armeria/server/saml/SamlSingleLogoutFunction.java @@ -27,6 +27,7 @@ import java.util.Map; import org.joda.time.DateTime; +import org.jspecify.annotations.Nullable; import org.opensaml.messaging.context.MessageContext; import org.opensaml.saml.saml2.core.Issuer; import org.opensaml.saml.saml2.core.LogoutRequest; @@ -42,7 +43,6 @@ import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.MediaType; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.ServiceRequestContext; /** diff --git a/saml/src/main/java/com/linecorp/armeria/server/saml/SamlSingleSignOnHandler.java b/saml/src/main/java/com/linecorp/armeria/server/saml/SamlSingleSignOnHandler.java index f40425a85e1..743e46444f8 100644 --- a/saml/src/main/java/com/linecorp/armeria/server/saml/SamlSingleSignOnHandler.java +++ b/saml/src/main/java/com/linecorp/armeria/server/saml/SamlSingleSignOnHandler.java @@ -17,6 +17,7 @@ import java.util.concurrent.CompletionStage; +import org.jspecify.annotations.Nullable; import org.opensaml.messaging.context.MessageContext; import org.opensaml.saml.saml2.core.AuthnRequest; import org.opensaml.saml.saml2.core.Response; @@ -27,7 +28,6 @@ import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.Request; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.UnmodifiableFuture; import com.linecorp.armeria.server.ServiceRequestContext; diff --git a/saml/src/main/java/com/linecorp/armeria/server/saml/SamlUtil.java b/saml/src/main/java/com/linecorp/armeria/server/saml/SamlUtil.java index dd42c885010..f8a44fe7d68 100644 --- a/saml/src/main/java/com/linecorp/armeria/server/saml/SamlUtil.java +++ b/saml/src/main/java/com/linecorp/armeria/server/saml/SamlUtil.java @@ -17,11 +17,10 @@ import java.util.function.Predicate; +import org.jspecify.annotations.Nullable; import org.opensaml.saml.saml2.core.NameID; import org.opensaml.saml.saml2.core.Response; -import com.linecorp.armeria.common.annotation.Nullable; - /** * A utility class which helps a user to easily handle a SAML message. */ diff --git a/saml/src/main/java/com/linecorp/armeria/server/saml/package-info.java b/saml/src/main/java/com/linecorp/armeria/server/saml/package-info.java index 6a6b26833ac..4b9ebf61215 100644 --- a/saml/src/main/java/com/linecorp/armeria/server/saml/package-info.java +++ b/saml/src/main/java/com/linecorp/armeria/server/saml/package-info.java @@ -18,7 +18,7 @@ * SAML-based single sign-on * service. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.saml; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/saml/src/test/java/com/linecorp/armeria/server/saml/SamlServiceProviderTest.java b/saml/src/test/java/com/linecorp/armeria/server/saml/SamlServiceProviderTest.java index fb68ce4e809..13f5fe5a40f 100644 --- a/saml/src/test/java/com/linecorp/armeria/server/saml/SamlServiceProviderTest.java +++ b/saml/src/test/java/com/linecorp/armeria/server/saml/SamlServiceProviderTest.java @@ -52,6 +52,7 @@ import org.jsoup.Jsoup; import org.jsoup.nodes.Document; import org.jsoup.nodes.Element; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; @@ -105,7 +106,6 @@ import com.linecorp.armeria.common.QueryParams; import com.linecorp.armeria.common.QueryParamsBuilder; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.UnmodifiableFuture; import com.linecorp.armeria.internal.common.util.SelfSignedCertificate; import com.linecorp.armeria.internal.testing.GenerateNativeImageTrace; diff --git a/settings/checkstyle/checkstyle-suppressions.xml b/settings/checkstyle/checkstyle-suppressions.xml index 2b32f251f0d..a679724de14 100644 --- a/settings/checkstyle/checkstyle-suppressions.xml +++ b/settings/checkstyle/checkstyle-suppressions.xml @@ -9,8 +9,8 @@ - - + + diff --git a/settings/checkstyle/checkstyle.xml b/settings/checkstyle/checkstyle.xml index 473cb3182d5..a634f44c6be 100644 --- a/settings/checkstyle/checkstyle.xml +++ b/settings/checkstyle/checkstyle.xml @@ -42,13 +42,13 @@ - + - - + + - + diff --git a/site-new/src/content/docs/tutorials/grpc/05-implement-update.mdx b/site-new/src/content/docs/tutorials/grpc/05-implement-update.mdx index e2230949922..958fa1b7342 100644 --- a/site-new/src/content/docs/tutorials/grpc/05-implement-update.mdx +++ b/site-new/src/content/docs/tutorials/grpc/05-implement-update.mdx @@ -51,8 +51,9 @@ final class BlogNotFoundException extends IllegalStateException { ```java title="GrpcExceptionHandler.java" package example.armeria.server.blog.grpc; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.RequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.grpc.GrpcExceptionHandlerFunction; import io.grpc.Metadata; diff --git a/site-new/src/content/docs/tutorials/rest/04-implement-create.mdx b/site-new/src/content/docs/tutorials/rest/04-implement-create.mdx index 1e004a96530..e4db1b9ea5a 100644 --- a/site-new/src/content/docs/tutorials/rest/04-implement-create.mdx +++ b/site-new/src/content/docs/tutorials/rest/04-implement-create.mdx @@ -92,9 +92,10 @@ final class BlogPostRequestConverter implements RequestConverterFunction { 3. Customize the default `convertRequest()` method as follows. ```java title="BlogPostRequestConverter.java" {10-22} +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.server.ServiceRequestContext; import com.linecorp.armeria.common.AggregatedHttpRequest; -import com.linecorp.armeria.common.annotation.Nullable; import java.lang.reflect.ParameterizedType; final class BlogPostRequestConverter implements RequestConverterFunction { diff --git a/spring/boot2-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/AbstractServerHttpResponseVersionSpecific.java b/spring/boot2-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/AbstractServerHttpResponseVersionSpecific.java index 293401a9040..ce6d1465b38 100644 --- a/spring/boot2-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/AbstractServerHttpResponseVersionSpecific.java +++ b/spring/boot2-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/AbstractServerHttpResponseVersionSpecific.java @@ -15,11 +15,10 @@ */ package com.linecorp.armeria.spring.web.reactive; +import org.jspecify.annotations.Nullable; import org.springframework.core.io.buffer.DataBufferFactory; import org.springframework.http.HttpStatus; -import com.linecorp.armeria.common.annotation.Nullable; - /** * A version specific {@link AbstractServerHttpResponse} which implements the APIs that only exists in * Spring 5. diff --git a/spring/boot2-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/package-info.java b/spring/boot2-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/package-info.java index 57de462a9b5..74156655e88 100644 --- a/spring/boot2-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/package-info.java +++ b/spring/boot2-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/package-info.java @@ -17,7 +17,7 @@ /** * Spring Boot integration based on reactive server stack. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.spring.web.reactive; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/spring/boot3-actuator-autoconfigure/src/main/java/com/linecorp/armeria/spring/actuate/HealthConfiguration.java b/spring/boot3-actuator-autoconfigure/src/main/java/com/linecorp/armeria/spring/actuate/HealthConfiguration.java index 4dccbc3b103..17f991dad2a 100644 --- a/spring/boot3-actuator-autoconfigure/src/main/java/com/linecorp/armeria/spring/actuate/HealthConfiguration.java +++ b/spring/boot3-actuator-autoconfigure/src/main/java/com/linecorp/armeria/spring/actuate/HealthConfiguration.java @@ -30,6 +30,7 @@ import java.util.Set; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.springframework.beans.factory.BeanFactory; import org.springframework.beans.factory.ObjectProvider; import org.springframework.boot.actuate.autoconfigure.health.HealthEndpointProperties; @@ -64,7 +65,6 @@ import com.google.common.collect.ImmutableMap; import com.linecorp.armeria.common.HttpStatus; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.ServerBuilder; import com.linecorp.armeria.server.cors.CorsServiceBuilder; import com.linecorp.armeria.spring.ArmeriaServerConfigurator; diff --git a/spring/boot3-actuator-autoconfigure/src/main/java/com/linecorp/armeria/spring/actuate/package-info.java b/spring/boot3-actuator-autoconfigure/src/main/java/com/linecorp/armeria/spring/actuate/package-info.java index cd675af0879..7f85fe6a1af 100644 --- a/spring/boot3-actuator-autoconfigure/src/main/java/com/linecorp/armeria/spring/actuate/package-info.java +++ b/spring/boot3-actuator-autoconfigure/src/main/java/com/linecorp/armeria/spring/actuate/package-info.java @@ -17,7 +17,7 @@ /** * Spring Boot actuator integration. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.spring.actuate; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/spring/boot3-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/package-info.java b/spring/boot3-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/package-info.java index 3398656c390..ce285206bb1 100644 --- a/spring/boot3-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/package-info.java +++ b/spring/boot3-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/package-info.java @@ -17,7 +17,7 @@ /** * Spring Boot integration. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.spring.web; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/spring/boot3-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/package-info.java b/spring/boot3-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/package-info.java index 57de462a9b5..74156655e88 100644 --- a/spring/boot3-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/package-info.java +++ b/spring/boot3-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/package-info.java @@ -17,7 +17,7 @@ /** * Spring Boot integration based on reactive server stack. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.spring.web.reactive; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/spring/boot4-actuator-autoconfigure/src/main/java/com/linecorp/armeria/spring/actuate/ArmeriaSpringActuatorAutoConfiguration.java b/spring/boot4-actuator-autoconfigure/src/main/java/com/linecorp/armeria/spring/actuate/ArmeriaSpringActuatorAutoConfiguration.java index e971bb306e9..76d0a79e856 100644 --- a/spring/boot4-actuator-autoconfigure/src/main/java/com/linecorp/armeria/spring/actuate/ArmeriaSpringActuatorAutoConfiguration.java +++ b/spring/boot4-actuator-autoconfigure/src/main/java/com/linecorp/armeria/spring/actuate/ArmeriaSpringActuatorAutoConfiguration.java @@ -28,6 +28,7 @@ import java.util.Map; import java.util.Set; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.BeanFactory; @@ -67,7 +68,6 @@ import com.linecorp.armeria.common.HttpMethod; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.MediaType; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.HttpService; import com.linecorp.armeria.server.Route; import com.linecorp.armeria.server.ServerBuilder; diff --git a/spring/boot4-actuator-autoconfigure/src/main/java/com/linecorp/armeria/spring/actuate/CorsEndpointProperties.java b/spring/boot4-actuator-autoconfigure/src/main/java/com/linecorp/armeria/spring/actuate/CorsEndpointProperties.java index d23b4d3b0c1..f6fc0d113cc 100644 --- a/spring/boot4-actuator-autoconfigure/src/main/java/com/linecorp/armeria/spring/actuate/CorsEndpointProperties.java +++ b/spring/boot4-actuator-autoconfigure/src/main/java/com/linecorp/armeria/spring/actuate/CorsEndpointProperties.java @@ -36,11 +36,10 @@ import java.util.ArrayList; import java.util.List; +import org.jspecify.annotations.Nullable; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.boot.convert.DurationUnit; -import com.linecorp.armeria.common.annotation.Nullable; - /** * Fork of MappingWebEndpointPathMapper. * This class doesn't follow the Armeria code convention because maintenance is easier if you use the same code diff --git a/spring/boot4-actuator-autoconfigure/src/main/java/com/linecorp/armeria/spring/actuate/WebOperationService.java b/spring/boot4-actuator-autoconfigure/src/main/java/com/linecorp/armeria/spring/actuate/WebOperationService.java index ea910f4f04f..87cef5f9dbd 100644 --- a/spring/boot4-actuator-autoconfigure/src/main/java/com/linecorp/armeria/spring/actuate/WebOperationService.java +++ b/spring/boot4-actuator-autoconfigure/src/main/java/com/linecorp/armeria/spring/actuate/WebOperationService.java @@ -34,6 +34,7 @@ import java.util.function.Function; import java.util.regex.Pattern; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.boot.actuate.endpoint.InvocationContext; @@ -62,7 +63,6 @@ import com.linecorp.armeria.common.QueryParams; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.ResponseHeadersBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.server.HttpService; import com.linecorp.armeria.server.RoutingContext; diff --git a/spring/boot4-actuator-autoconfigure/src/main/java/com/linecorp/armeria/spring/actuate/package-info.java b/spring/boot4-actuator-autoconfigure/src/main/java/com/linecorp/armeria/spring/actuate/package-info.java index cd675af0879..7f85fe6a1af 100644 --- a/spring/boot4-actuator-autoconfigure/src/main/java/com/linecorp/armeria/spring/actuate/package-info.java +++ b/spring/boot4-actuator-autoconfigure/src/main/java/com/linecorp/armeria/spring/actuate/package-info.java @@ -17,7 +17,7 @@ /** * Spring Boot actuator integration. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.spring.actuate; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/internal/spring/ArmeriaConfigurationNetUtil.java b/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/internal/spring/ArmeriaConfigurationNetUtil.java index 958686f89b6..75a1ef24b69 100644 --- a/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/internal/spring/ArmeriaConfigurationNetUtil.java +++ b/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/internal/spring/ArmeriaConfigurationNetUtil.java @@ -26,10 +26,11 @@ import java.util.Enumeration; import java.util.List; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.util.PortUtil; import com.linecorp.armeria.server.ServerBuilder; import com.linecorp.armeria.server.ServerPort; diff --git a/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/internal/spring/ArmeriaConfigurationSettingsUtil.java b/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/internal/spring/ArmeriaConfigurationSettingsUtil.java index 039c8c484ac..ffdf9f8a992 100644 --- a/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/internal/spring/ArmeriaConfigurationSettingsUtil.java +++ b/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/internal/spring/ArmeriaConfigurationSettingsUtil.java @@ -21,9 +21,10 @@ import java.util.function.Consumer; +import org.jspecify.annotations.Nullable; + import com.google.common.primitives.Ints; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.Server; import com.linecorp.armeria.server.ServerBuilder; import com.linecorp.armeria.server.logging.AccessLogWriter; diff --git a/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/internal/spring/ArmeriaConfigurationUtil.java b/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/internal/spring/ArmeriaConfigurationUtil.java index 76855564bb4..0ba7114ba02 100644 --- a/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/internal/spring/ArmeriaConfigurationUtil.java +++ b/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/internal/spring/ArmeriaConfigurationUtil.java @@ -41,6 +41,7 @@ import javax.net.ssl.KeyManagerFactory; import javax.net.ssl.TrustManagerFactory; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.BeanFactory; @@ -60,7 +61,6 @@ import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.metric.MeterIdPrefixFunction; import com.linecorp.armeria.server.HttpService; import com.linecorp.armeria.server.ServerBuilder; @@ -434,7 +434,7 @@ private static KeyStore loadKeyStore( * Configures a decorator for encoding the content of the HTTP responses sent from the server. */ public static Function contentEncodingDecorator( - @Nullable String[] mimeTypes, @Nullable String[] excludedUserAgents, + String @Nullable [] mimeTypes, String @Nullable [] excludedUserAgents, int minBytesToForceChunkedAndEncoding) { final Predicate encodableContentTypePredicate; if (mimeTypes == null || mimeTypes.length == 0) { diff --git a/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/internal/spring/AthenzSupport.java b/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/internal/spring/AthenzSupport.java index 7b0e749743c..f7643a051b8 100644 --- a/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/internal/spring/AthenzSupport.java +++ b/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/internal/spring/AthenzSupport.java @@ -24,8 +24,9 @@ import java.time.Duration; import java.util.List; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.DependencyInjector; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.ServerBuilder; import com.linecorp.armeria.spring.AthenzConfig; diff --git a/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/internal/spring/ThriftServiceUtils.java b/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/internal/spring/ThriftServiceUtils.java index cdb043074fb..2f0f1a08772 100644 --- a/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/internal/spring/ThriftServiceUtils.java +++ b/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/internal/spring/ThriftServiceUtils.java @@ -25,9 +25,10 @@ import java.util.Map; import java.util.Set; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableSet; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.HttpService; import com.linecorp.armeria.server.Server; import com.linecorp.armeria.server.thrift.THttpService; diff --git a/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/internal/spring/package-info.java b/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/internal/spring/package-info.java index 10436cbcbc4..241bc073779 100644 --- a/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/internal/spring/package-info.java +++ b/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/internal/spring/package-info.java @@ -17,7 +17,7 @@ /** * Internal classes for Spring Boot integration. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.spring; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/AbstractArmeriaAutoConfiguration.java b/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/AbstractArmeriaAutoConfiguration.java index c576410fc5b..be49da1148d 100644 --- a/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/AbstractArmeriaAutoConfiguration.java +++ b/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/AbstractArmeriaAutoConfiguration.java @@ -25,6 +25,7 @@ import java.util.Optional; import java.util.function.Consumer; +import org.jspecify.annotations.Nullable; import org.springframework.beans.factory.BeanFactory; import org.springframework.beans.factory.ObjectProvider; import org.springframework.beans.factory.annotation.Value; @@ -36,7 +37,6 @@ import com.linecorp.armeria.common.DependencyInjector; import com.linecorp.armeria.common.Flags; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.metric.MeterIdPrefixFunction; import com.linecorp.armeria.server.Server; import com.linecorp.armeria.server.ServerBuilder; diff --git a/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/AbstractArmeriaBeanPostProcessor.java b/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/AbstractArmeriaBeanPostProcessor.java index 93be6c0b808..fa8ef7481d4 100644 --- a/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/AbstractArmeriaBeanPostProcessor.java +++ b/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/AbstractArmeriaBeanPostProcessor.java @@ -29,6 +29,7 @@ import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.CopyOnWriteArrayList; +import org.jspecify.annotations.Nullable; import org.springframework.beans.BeanUtils; import org.springframework.beans.PropertyValues; import org.springframework.beans.factory.BeanFactory; @@ -42,7 +43,6 @@ import com.google.common.collect.ImmutableList.Builder; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.Server; /** diff --git a/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/ArmeriaSettings.java b/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/ArmeriaSettings.java index 974166aee27..0cac2fe56ad 100644 --- a/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/ArmeriaSettings.java +++ b/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/ArmeriaSettings.java @@ -20,6 +20,7 @@ import java.util.ArrayList; import java.util.List; +import org.jspecify.annotations.Nullable; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.boot.context.properties.NestedConfigurationProperty; import org.springframework.validation.annotation.Validated; @@ -29,7 +30,6 @@ import com.google.common.collect.ImmutableList; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.HttpService; import com.linecorp.armeria.server.Server; import com.linecorp.armeria.server.ServerBuilder; @@ -243,8 +243,7 @@ public static class Compression { /** * The {@code "user-agent"} header values which are not applicable for the HTTP content encoding. */ - @Nullable - private String[] excludedUserAgents; + private String @Nullable [] excludedUserAgents; /** * The minimum bytes for encoding the content of an HTTP response. @@ -283,8 +282,7 @@ public void setMimeTypes(String[] mimeTypes) { * Returns the {@code "user-agent"} header values which are not applicable for the HTTP content * encoding. */ - @Nullable - public String[] getExcludedUserAgents() { + public String @Nullable [] getExcludedUserAgents() { return excludedUserAgents; } diff --git a/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/AthenzConfig.java b/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/AthenzConfig.java index b1ad8e7be02..6624032c21a 100644 --- a/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/AthenzConfig.java +++ b/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/AthenzConfig.java @@ -24,9 +24,10 @@ import java.util.ArrayList; import java.util.List; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/DropwizardSupport.java b/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/DropwizardSupport.java index 5b0f84452b0..01d42c1c7a1 100644 --- a/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/DropwizardSupport.java +++ b/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/DropwizardSupport.java @@ -17,13 +17,13 @@ import java.util.concurrent.TimeUnit; +import org.jspecify.annotations.Nullable; + import com.codahale.metrics.MetricRegistry; import com.codahale.metrics.json.MetricsModule; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.SerializationFeature; -import com.linecorp.armeria.common.annotation.Nullable; - import io.micrometer.core.instrument.MeterRegistry; import io.micrometer.core.instrument.dropwizard.DropwizardMeterRegistry; diff --git a/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/InternalServices.java b/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/InternalServices.java index 00b46fdecee..c6cb8db6955 100644 --- a/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/InternalServices.java +++ b/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/InternalServices.java @@ -21,6 +21,7 @@ import java.net.InetAddress; import java.util.List; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.boot.SpringApplication; @@ -29,7 +30,6 @@ import com.google.common.base.Strings; import com.linecorp.armeria.client.ClientFactory; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.internal.common.util.PortUtil; import com.linecorp.armeria.internal.spring.ArmeriaConfigurationUtil; diff --git a/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/PrometheusLegacySupport.java b/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/PrometheusLegacySupport.java index 0f7b7187dc4..bd121b074c7 100644 --- a/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/PrometheusLegacySupport.java +++ b/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/PrometheusLegacySupport.java @@ -20,7 +20,8 @@ import java.util.Optional; import java.util.Set; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.server.metric.PrometheusExpositionService; import io.micrometer.core.instrument.MeterRegistry; diff --git a/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/PrometheusSupport.java b/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/PrometheusSupport.java index 463627d5dcc..c42efade41f 100644 --- a/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/PrometheusSupport.java +++ b/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/PrometheusSupport.java @@ -18,7 +18,8 @@ import java.util.Optional; import java.util.Set; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.server.prometheus.PrometheusExpositionService; import io.micrometer.core.instrument.MeterRegistry; diff --git a/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/Ssl.java b/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/Ssl.java index ac8aded4e29..cff4035d7a4 100644 --- a/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/Ssl.java +++ b/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/Ssl.java @@ -33,7 +33,7 @@ import java.util.List; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; import io.netty.handler.ssl.ClientAuth; import io.netty.handler.ssl.SslProvider; diff --git a/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/package-info.java b/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/package-info.java index 004048b4d6a..5d059dd3dbb 100644 --- a/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/package-info.java +++ b/spring/boot4-autoconfigure/src/main/java/com/linecorp/armeria/spring/package-info.java @@ -17,7 +17,7 @@ /** * Spring Boot integration. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.spring; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/spring/boot4-autoconfigure/src/test/java/com/linecorp/armeria/spring/ArmeriaAutoConfigurationTest.java b/spring/boot4-autoconfigure/src/test/java/com/linecorp/armeria/spring/ArmeriaAutoConfigurationTest.java index 8c922a29b94..9c2913fc5aa 100644 --- a/spring/boot4-autoconfigure/src/test/java/com/linecorp/armeria/spring/ArmeriaAutoConfigurationTest.java +++ b/spring/boot4-autoconfigure/src/test/java/com/linecorp/armeria/spring/ArmeriaAutoConfigurationTest.java @@ -21,6 +21,7 @@ import java.util.Collection; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Timeout; import org.springframework.boot.autoconfigure.SpringBootApplication; @@ -47,7 +48,6 @@ import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.grpc.GrpcMeterIdPrefixFunction; import com.linecorp.armeria.common.grpc.GrpcSerializationFormats; import com.linecorp.armeria.common.metric.MeterIdPrefixFunction; diff --git a/spring/boot4-autoconfigure/src/test/java/com/linecorp/armeria/spring/ArmeriaCompressionConfigurationTest.java b/spring/boot4-autoconfigure/src/test/java/com/linecorp/armeria/spring/ArmeriaCompressionConfigurationTest.java index d3448c4ed52..073b48f2ecc 100644 --- a/spring/boot4-autoconfigure/src/test/java/com/linecorp/armeria/spring/ArmeriaCompressionConfigurationTest.java +++ b/spring/boot4-autoconfigure/src/test/java/com/linecorp/armeria/spring/ArmeriaCompressionConfigurationTest.java @@ -19,6 +19,7 @@ import java.util.Optional; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Timeout; import org.springframework.boot.autoconfigure.SpringBootApplication; @@ -36,7 +37,6 @@ import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.RequestHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.Server; import com.linecorp.armeria.server.annotation.Get; import com.linecorp.armeria.server.annotation.Param; diff --git a/spring/boot4-autoconfigure/src/test/java/com/linecorp/armeria/spring/ArmeriaGracefulShutdownConfigurationTest.java b/spring/boot4-autoconfigure/src/test/java/com/linecorp/armeria/spring/ArmeriaGracefulShutdownConfigurationTest.java index 1e49e55d235..80c11e1d57a 100644 --- a/spring/boot4-autoconfigure/src/test/java/com/linecorp/armeria/spring/ArmeriaGracefulShutdownConfigurationTest.java +++ b/spring/boot4-autoconfigure/src/test/java/com/linecorp/armeria/spring/ArmeriaGracefulShutdownConfigurationTest.java @@ -19,6 +19,7 @@ import java.time.Duration; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.autoconfigure.SpringBootApplication; @@ -26,7 +27,6 @@ import org.springframework.test.annotation.DirtiesContext; import org.springframework.test.context.ActiveProfiles; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.Server; import com.linecorp.armeria.spring.ArmeriaGracefulShutdownConfigurationTest.TestConfiguration; diff --git a/spring/boot4-autoconfigure/src/test/java/com/linecorp/armeria/spring/ArmeriaSettingsConfigurationPriorityTest.java b/spring/boot4-autoconfigure/src/test/java/com/linecorp/armeria/spring/ArmeriaSettingsConfigurationPriorityTest.java index 2a7122d2621..1f701706d19 100644 --- a/spring/boot4-autoconfigure/src/test/java/com/linecorp/armeria/spring/ArmeriaSettingsConfigurationPriorityTest.java +++ b/spring/boot4-autoconfigure/src/test/java/com/linecorp/armeria/spring/ArmeriaSettingsConfigurationPriorityTest.java @@ -18,6 +18,7 @@ import static org.assertj.core.api.Assertions.assertThat; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.test.context.SpringBootTest; @@ -25,7 +26,6 @@ import org.springframework.test.annotation.DirtiesContext; import org.springframework.test.context.ActiveProfiles; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.Server; import com.linecorp.armeria.server.ServerConfig; import com.linecorp.armeria.spring.ArmeriaSettingsConfigurationPriorityTest.TestConfiguration; diff --git a/spring/boot4-autoconfigure/src/test/java/com/linecorp/armeria/spring/ArmeriaSettingsConfigurationTest.java b/spring/boot4-autoconfigure/src/test/java/com/linecorp/armeria/spring/ArmeriaSettingsConfigurationTest.java index fc1dc57848c..45252379244 100644 --- a/spring/boot4-autoconfigure/src/test/java/com/linecorp/armeria/spring/ArmeriaSettingsConfigurationTest.java +++ b/spring/boot4-autoconfigure/src/test/java/com/linecorp/armeria/spring/ArmeriaSettingsConfigurationTest.java @@ -18,6 +18,7 @@ import static org.assertj.core.api.Assertions.assertThat; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.test.context.SpringBootTest; @@ -29,7 +30,6 @@ import com.linecorp.armeria.common.HttpMethod; import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpResponse; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.Server; import com.linecorp.armeria.server.ServerConfig; import com.linecorp.armeria.server.ServerErrorHandler; diff --git a/spring/boot4-autoconfigure/src/test/java/com/linecorp/armeria/spring/ArmeriaSslConfigurationTest.java b/spring/boot4-autoconfigure/src/test/java/com/linecorp/armeria/spring/ArmeriaSslConfigurationTest.java index 9e584b5db62..bbd2ff6d839 100644 --- a/spring/boot4-autoconfigure/src/test/java/com/linecorp/armeria/spring/ArmeriaSslConfigurationTest.java +++ b/spring/boot4-autoconfigure/src/test/java/com/linecorp/armeria/spring/ArmeriaSslConfigurationTest.java @@ -17,6 +17,7 @@ import static org.assertj.core.api.Assertions.assertThat; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Timeout; @@ -30,7 +31,6 @@ import com.linecorp.armeria.common.AggregatedHttpResponse; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.testing.MockAddressResolverGroup; import com.linecorp.armeria.server.Server; import com.linecorp.armeria.spring.ArmeriaSslConfigurationTest.TestConfiguration; diff --git a/spring/boot4-autoconfigure/src/test/java/com/linecorp/armeria/spring/CgLibServiceNameTest.java b/spring/boot4-autoconfigure/src/test/java/com/linecorp/armeria/spring/CgLibServiceNameTest.java index e3285891830..b93275775e3 100644 --- a/spring/boot4-autoconfigure/src/test/java/com/linecorp/armeria/spring/CgLibServiceNameTest.java +++ b/spring/boot4-autoconfigure/src/test/java/com/linecorp/armeria/spring/CgLibServiceNameTest.java @@ -23,6 +23,7 @@ import org.aopalliance.intercept.Joinpoint; import org.aopalliance.intercept.MethodInterceptor; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.springframework.aop.framework.ProxyFactoryBean; import org.springframework.aop.support.AopUtils; @@ -37,7 +38,6 @@ import com.linecorp.armeria.common.AggregatedHttpResponse; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpStatus; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.logging.RequestLogAccess; import com.linecorp.armeria.server.Server; diff --git a/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/package-info.java b/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/package-info.java index 3398656c390..ce285206bb1 100644 --- a/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/package-info.java +++ b/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/package-info.java @@ -17,7 +17,7 @@ /** * Spring Boot integration. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.spring.web; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/AbstractServerHttpRequestVersionSpecific.java b/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/AbstractServerHttpRequestVersionSpecific.java index 562366da167..e08df9c3f08 100644 --- a/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/AbstractServerHttpRequestVersionSpecific.java +++ b/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/AbstractServerHttpRequestVersionSpecific.java @@ -18,12 +18,11 @@ import java.net.URI; +import org.jspecify.annotations.Nullable; import org.springframework.http.HttpHeaders; import org.springframework.http.HttpMethod; import org.springframework.http.server.reactive.AbstractServerHttpRequest; -import com.linecorp.armeria.common.annotation.Nullable; - /** * A version specific {@link AbstractServerHttpRequest} which implements the APIs that only exists in Spring 6. */ diff --git a/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/ArmeriaHttpHandlerAdapter.java b/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/ArmeriaHttpHandlerAdapter.java index 0b5f4282277..9bcdaf7e330 100644 --- a/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/ArmeriaHttpHandlerAdapter.java +++ b/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/ArmeriaHttpHandlerAdapter.java @@ -20,6 +20,7 @@ import java.util.concurrent.CompletableFuture; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.http.server.reactive.HttpHandler; @@ -28,7 +29,6 @@ import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.MediaType; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.server.ServiceRequestContext; import com.linecorp.armeria.spring.internal.common.DataBufferFactoryWrapper; diff --git a/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/ArmeriaHttpResponseBodyStream.java b/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/ArmeriaHttpResponseBodyStream.java index 78cfad54a47..3899756398a 100644 --- a/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/ArmeriaHttpResponseBodyStream.java +++ b/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/ArmeriaHttpResponseBodyStream.java @@ -18,12 +18,12 @@ import java.util.concurrent.atomic.AtomicIntegerFieldUpdater; import java.util.concurrent.atomic.AtomicReferenceFieldUpdater; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; import org.reactivestreams.Subscriber; import com.linecorp.armeria.common.HttpData; import com.linecorp.armeria.common.HttpResponse; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.CancelledSubscriptionException; import com.linecorp.armeria.internal.common.DefaultSplitHttpResponse; diff --git a/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/ArmeriaReactiveWebServerFactory.java b/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/ArmeriaReactiveWebServerFactory.java index 1aa58b2ee00..0d94aee9d11 100644 --- a/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/ArmeriaReactiveWebServerFactory.java +++ b/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/ArmeriaReactiveWebServerFactory.java @@ -30,6 +30,7 @@ import java.util.concurrent.CompletableFuture; import java.util.function.Consumer; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.NoSuchBeanDefinitionException; @@ -52,7 +53,6 @@ import com.linecorp.armeria.common.HttpMethod; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.metric.MeterIdPrefixFunction; import com.linecorp.armeria.server.Route; import com.linecorp.armeria.server.Server; diff --git a/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/ArmeriaReactiveWebServerFactoryAutoConfiguration.java b/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/ArmeriaReactiveWebServerFactoryAutoConfiguration.java index 6c14dddc6d3..228c12b0616 100644 --- a/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/ArmeriaReactiveWebServerFactoryAutoConfiguration.java +++ b/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/ArmeriaReactiveWebServerFactoryAutoConfiguration.java @@ -20,6 +20,7 @@ import java.net.InetAddress; import java.util.Optional; +import org.jspecify.annotations.Nullable; import org.springframework.beans.factory.ObjectProvider; import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.config.ConfigurableListableBeanFactory; @@ -36,7 +37,6 @@ import org.springframework.core.env.Environment; import com.linecorp.armeria.common.Flags; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.Server; import com.linecorp.armeria.server.docs.DocService; import com.linecorp.armeria.server.healthcheck.HealthCheckService; diff --git a/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/ArmeriaServerHttpRequest.java b/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/ArmeriaServerHttpRequest.java index 6c2c8971459..f72cad91a52 100644 --- a/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/ArmeriaServerHttpRequest.java +++ b/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/ArmeriaServerHttpRequest.java @@ -25,6 +25,7 @@ import javax.net.ssl.SSLSession; +import org.jspecify.annotations.Nullable; import org.springframework.core.io.buffer.DataBuffer; import org.springframework.http.HttpCookie; import org.springframework.http.HttpHeaders; @@ -41,7 +42,6 @@ import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.RequestTarget; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.ServiceRequestContext; import com.linecorp.armeria.spring.internal.common.DataBufferFactoryWrapper; diff --git a/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/ArmeriaServerHttpResponse.java b/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/ArmeriaServerHttpResponse.java index f45246b87f4..e533fc5e529 100644 --- a/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/ArmeriaServerHttpResponse.java +++ b/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/ArmeriaServerHttpResponse.java @@ -22,6 +22,7 @@ import java.util.List; import java.util.concurrent.CompletableFuture; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -41,7 +42,6 @@ import com.linecorp.armeria.common.HttpResponseWriter; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.ResponseHeadersBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.stream.AbortedStreamException; import com.linecorp.armeria.common.stream.CancelledSubscriptionException; import com.linecorp.armeria.server.ServiceRequestContext; diff --git a/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/ArmeriaWebServer.java b/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/ArmeriaWebServer.java index 41c20858ef1..0a469d06208 100644 --- a/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/ArmeriaWebServer.java +++ b/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/ArmeriaWebServer.java @@ -22,13 +22,13 @@ import java.util.Arrays; import java.util.Optional; +import org.jspecify.annotations.Nullable; import org.springframework.beans.factory.config.ConfigurableListableBeanFactory; import org.springframework.boot.web.server.WebServer; import org.springframework.boot.web.server.WebServerException; import org.springframework.http.server.reactive.HttpHandler; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.server.Server; import com.linecorp.armeria.server.ServerPort; diff --git a/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/DefaultSslInfo.java b/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/DefaultSslInfo.java index 560406974ea..77be1044da1 100644 --- a/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/DefaultSslInfo.java +++ b/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/DefaultSslInfo.java @@ -37,11 +37,10 @@ import javax.net.ssl.SSLSession; +import org.jspecify.annotations.Nullable; import org.springframework.http.server.reactive.SslInfo; import org.springframework.util.Assert; -import com.linecorp.armeria.common.annotation.Nullable; - /** * Default implementation of {@link SslInfo}. * @@ -55,8 +54,7 @@ final class DefaultSslInfo implements SslInfo { @Nullable private final String sessionId; - @Nullable - private final X509Certificate[] peerCertificates; + private final X509Certificate @Nullable [] peerCertificates; DefaultSslInfo(SSLSession session) { Assert.notNull(session, "SSLSession is required"); @@ -71,8 +69,7 @@ public String getSessionId() { } @Override - @Nullable - public X509Certificate[] getPeerCertificates() { + public X509Certificate @Nullable [] getPeerCertificates() { return peerCertificates; } @@ -97,8 +94,7 @@ private static String initSessionId(SSLSession session) { return sb.toString(); } - @Nullable - private static X509Certificate[] initCertificates(SSLSession session) { + private static X509Certificate @Nullable [] initCertificates(SSLSession session) { final Certificate[] certificates; try { certificates = session.getPeerCertificates(); diff --git a/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/package-info.java b/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/package-info.java index 57de462a9b5..74156655e88 100644 --- a/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/package-info.java +++ b/spring/boot4-webflux-autoconfigure/src/main/java/com/linecorp/armeria/spring/web/reactive/package-info.java @@ -17,7 +17,7 @@ /** * Spring Boot integration based on reactive server stack. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.spring.web.reactive; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/spring/boot4-webflux-autoconfigure/src/test/java/com/linecorp/armeria/spring/web/reactive/ArmeriaServerSettingsTest.java b/spring/boot4-webflux-autoconfigure/src/test/java/com/linecorp/armeria/spring/web/reactive/ArmeriaServerSettingsTest.java index a3912f2b2c8..e7a5f8bcbc5 100644 --- a/spring/boot4-webflux-autoconfigure/src/test/java/com/linecorp/armeria/spring/web/reactive/ArmeriaServerSettingsTest.java +++ b/spring/boot4-webflux-autoconfigure/src/test/java/com/linecorp/armeria/spring/web/reactive/ArmeriaServerSettingsTest.java @@ -18,13 +18,13 @@ import static org.assertj.core.api.Assertions.assertThat; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest.WebEnvironment; import org.springframework.test.context.ActiveProfiles; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.Server; import com.linecorp.armeria.server.ServerConfig; import com.linecorp.armeria.server.VirtualHost; diff --git a/spring/boot4-webflux-autoconfigure/src/test/java/com/linecorp/armeria/spring/web/reactive/ArmeriaWebClientTest.java b/spring/boot4-webflux-autoconfigure/src/test/java/com/linecorp/armeria/spring/web/reactive/ArmeriaWebClientTest.java index 4a3738324de..9a3c27af992 100644 --- a/spring/boot4-webflux-autoconfigure/src/test/java/com/linecorp/armeria/spring/web/reactive/ArmeriaWebClientTest.java +++ b/spring/boot4-webflux-autoconfigure/src/test/java/com/linecorp/armeria/spring/web/reactive/ArmeriaWebClientTest.java @@ -19,6 +19,7 @@ import java.time.Duration; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; @@ -44,7 +45,6 @@ import com.fasterxml.jackson.annotation.JsonProperty; import com.linecorp.armeria.client.ClientFactory; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.testing.MockAddressResolverGroup; import com.linecorp.armeria.server.ServiceRequestContext; import com.linecorp.armeria.spring.ArmeriaServerConfigurator; diff --git a/spring/spring7/src/main/java/com/linecorp/armeria/spring/client/ArmeriaHttpExchangeAdapter.java b/spring/spring7/src/main/java/com/linecorp/armeria/spring/client/ArmeriaHttpExchangeAdapter.java index d38121f6200..e215c673427 100644 --- a/spring/spring7/src/main/java/com/linecorp/armeria/spring/client/ArmeriaHttpExchangeAdapter.java +++ b/spring/spring7/src/main/java/com/linecorp/armeria/spring/client/ArmeriaHttpExchangeAdapter.java @@ -22,6 +22,7 @@ import java.net.URI; import java.util.Map; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; import org.springframework.core.ParameterizedTypeReference; import org.springframework.http.HttpHeaders; @@ -49,7 +50,6 @@ import com.linecorp.armeria.common.HttpData; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.common.SplitHttpResponse; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.spring.internal.client.ArmeriaClientHttpRequest; import com.linecorp.armeria.spring.internal.client.ArmeriaClientHttpResponse; diff --git a/spring/spring7/src/main/java/com/linecorp/armeria/spring/client/ArmeriaHttpExchangeAdapterBuilder.java b/spring/spring7/src/main/java/com/linecorp/armeria/spring/client/ArmeriaHttpExchangeAdapterBuilder.java index caaeab32a99..66ff884af6d 100644 --- a/spring/spring7/src/main/java/com/linecorp/armeria/spring/client/ArmeriaHttpExchangeAdapterBuilder.java +++ b/spring/spring7/src/main/java/com/linecorp/armeria/spring/client/ArmeriaHttpExchangeAdapterBuilder.java @@ -19,11 +19,11 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; import org.springframework.web.reactive.function.client.ExchangeStrategies; import com.linecorp.armeria.client.WebClient; import com.linecorp.armeria.common.HttpStatus; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/spring/spring7/src/main/java/com/linecorp/armeria/spring/client/RequestAttributeAccess.java b/spring/spring7/src/main/java/com/linecorp/armeria/spring/client/RequestAttributeAccess.java index 4a571fa24e9..6e6488d2b18 100644 --- a/spring/spring7/src/main/java/com/linecorp/armeria/spring/client/RequestAttributeAccess.java +++ b/spring/spring7/src/main/java/com/linecorp/armeria/spring/client/RequestAttributeAccess.java @@ -20,11 +20,11 @@ import java.util.Map; +import org.jspecify.annotations.Nullable; import org.springframework.web.bind.annotation.RequestAttribute; import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.client.RequestOptionsBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import io.netty.util.AttributeKey; diff --git a/spring/spring7/src/main/java/com/linecorp/armeria/spring/client/StatusHandler.java b/spring/spring7/src/main/java/com/linecorp/armeria/spring/client/StatusHandler.java index 9f4a4686342..1bc423bafd7 100644 --- a/spring/spring7/src/main/java/com/linecorp/armeria/spring/client/StatusHandler.java +++ b/spring/spring7/src/main/java/com/linecorp/armeria/spring/client/StatusHandler.java @@ -21,9 +21,10 @@ import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.common.HttpStatus; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** diff --git a/spring/spring7/src/main/java/com/linecorp/armeria/spring/client/package-info.java b/spring/spring7/src/main/java/com/linecorp/armeria/spring/client/package-info.java index 6535d480e07..aaa700b081e 100644 --- a/spring/spring7/src/main/java/com/linecorp/armeria/spring/client/package-info.java +++ b/spring/spring7/src/main/java/com/linecorp/armeria/spring/client/package-info.java @@ -18,7 +18,7 @@ * * Spring 6 HTTP interface integration. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.spring.client; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/spring/spring7/src/main/java/com/linecorp/armeria/spring/internal/client/ArmeriaClientHttpRequest.java b/spring/spring7/src/main/java/com/linecorp/armeria/spring/internal/client/ArmeriaClientHttpRequest.java index fbb2eb89e79..0f665f3ffbb 100644 --- a/spring/spring7/src/main/java/com/linecorp/armeria/spring/internal/client/ArmeriaClientHttpRequest.java +++ b/spring/spring7/src/main/java/com/linecorp/armeria/spring/internal/client/ArmeriaClientHttpRequest.java @@ -24,6 +24,7 @@ import java.util.concurrent.CompletableFuture; import java.util.function.Supplier; +import org.jspecify.annotations.Nullable; import org.reactivestreams.Publisher; import org.springframework.core.io.buffer.DataBuffer; import org.springframework.core.io.buffer.DataBufferFactory; @@ -46,7 +47,6 @@ import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.RequestHeadersBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.spring.internal.common.DataBufferFactoryWrapper; import reactor.core.publisher.Flux; diff --git a/spring/spring7/src/main/java/com/linecorp/armeria/spring/internal/client/ArmeriaClientHttpResponse.java b/spring/spring7/src/main/java/com/linecorp/armeria/spring/internal/client/ArmeriaClientHttpResponse.java index 6bbaf0d306e..d41dc584fff 100644 --- a/spring/spring7/src/main/java/com/linecorp/armeria/spring/internal/client/ArmeriaClientHttpResponse.java +++ b/spring/spring7/src/main/java/com/linecorp/armeria/spring/internal/client/ArmeriaClientHttpResponse.java @@ -18,6 +18,7 @@ import static com.linecorp.armeria.internal.common.ArmeriaHttpUtil.toHttp1Headers; import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; import org.springframework.core.io.buffer.DataBuffer; import org.springframework.http.HttpHeaders; import org.springframework.http.HttpStatus; @@ -31,7 +32,6 @@ import com.linecorp.armeria.common.HttpHeaderNames; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.SplitHttpResponse; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.spring.internal.common.DataBufferFactoryWrapper; import io.netty.handler.codec.http.cookie.ClientCookieDecoder; diff --git a/spring/spring7/src/main/java/com/linecorp/armeria/spring/internal/client/package-info.java b/spring/spring7/src/main/java/com/linecorp/armeria/spring/internal/client/package-info.java index ba3539a8598..c66bdaca9e4 100644 --- a/spring/spring7/src/main/java/com/linecorp/armeria/spring/internal/client/package-info.java +++ b/spring/spring7/src/main/java/com/linecorp/armeria/spring/internal/client/package-info.java @@ -17,7 +17,7 @@ /** * Various classes used internally. Anything in this package can be changed or removed at any time. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.spring.internal.client; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/spring/spring7/src/main/java/com/linecorp/armeria/spring/internal/common/package-info.java b/spring/spring7/src/main/java/com/linecorp/armeria/spring/internal/common/package-info.java index f5f9f0a729f..b2509f67e42 100644 --- a/spring/spring7/src/main/java/com/linecorp/armeria/spring/internal/common/package-info.java +++ b/spring/spring7/src/main/java/com/linecorp/armeria/spring/internal/common/package-info.java @@ -17,7 +17,7 @@ /** * Various classes used internally. Anything in this package can be changed or removed at any time. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.spring.internal.common; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/AnticipatedException.java b/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/AnticipatedException.java index 48925ec6627..4d726776fd2 100644 --- a/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/AnticipatedException.java +++ b/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/AnticipatedException.java @@ -16,7 +16,7 @@ package com.linecorp.armeria.internal.testing; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * A {@link RuntimeException} which is expected to be raised during a test. diff --git a/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/CountDownEmptyEndpointStrategy.java b/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/CountDownEmptyEndpointStrategy.java index 53a69df92f6..d75ed331be7 100644 --- a/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/CountDownEmptyEndpointStrategy.java +++ b/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/CountDownEmptyEndpointStrategy.java @@ -21,13 +21,14 @@ import java.util.concurrent.atomic.AtomicInteger; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.client.Endpoint; import com.linecorp.armeria.client.endpoint.DynamicEndpointGroup; import com.linecorp.armeria.client.endpoint.EndpointGroup; import com.linecorp.armeria.client.endpoint.EndpointSelectionStrategy; import com.linecorp.armeria.client.endpoint.EndpointSelector; -import com.linecorp.armeria.common.annotation.Nullable; /** * Counts down a user provided counter each time an endpoint is selected asynchronously. diff --git a/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/DocServiceExtension.java b/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/DocServiceExtension.java index 8483d16638c..3464c00bc20 100644 --- a/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/DocServiceExtension.java +++ b/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/DocServiceExtension.java @@ -15,6 +15,7 @@ */ package com.linecorp.armeria.internal.testing; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Timeout; import org.junit.jupiter.api.extension.AfterTestExecutionCallback; import org.junit.jupiter.api.extension.BeforeTestExecutionCallback; @@ -22,7 +23,6 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.docs.DocService; /** diff --git a/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/NettyServerExtension.java b/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/NettyServerExtension.java index 183e74c4a94..93175be090d 100644 --- a/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/NettyServerExtension.java +++ b/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/NettyServerExtension.java @@ -21,10 +21,10 @@ import java.net.InetSocketAddress; import java.net.URI; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.extension.ExtensionContext; import com.linecorp.armeria.client.Endpoint; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.testing.junit5.common.AbstractAllOrEachExtension; import io.netty.bootstrap.ServerBootstrap; diff --git a/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/SimpleChannelHandler.java b/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/SimpleChannelHandler.java index 7a55694da4c..25a05c2165d 100644 --- a/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/SimpleChannelHandler.java +++ b/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/SimpleChannelHandler.java @@ -16,7 +16,7 @@ package com.linecorp.armeria.internal.testing; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; import io.netty.channel.ChannelDuplexHandler; import io.netty.channel.ChannelHandlerContext; diff --git a/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/SimpleChannelHandlerFactory.java b/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/SimpleChannelHandlerFactory.java index 91efd2703fe..d6a71f2cc2d 100644 --- a/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/SimpleChannelHandlerFactory.java +++ b/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/SimpleChannelHandlerFactory.java @@ -18,7 +18,8 @@ import static java.util.Objects.requireNonNull; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.internal.testing.SimpleChannelHandler.ThrowingBiConsumer; import com.linecorp.armeria.internal.testing.SimpleChannelHandler.ThrowingTriConsumer; diff --git a/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/TemporaryFolder.java b/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/TemporaryFolder.java index 1c1717c8eae..aa9b269ba4b 100644 --- a/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/TemporaryFolder.java +++ b/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/TemporaryFolder.java @@ -21,7 +21,7 @@ import java.nio.file.Files; import java.nio.file.Path; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * A helper class to handle temporary folders in JUnit {@code Extension}s. diff --git a/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/netty/Http2ClientFrameInitializer.java b/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/netty/Http2ClientFrameInitializer.java index 2b8ad3d8114..38c077873c7 100644 --- a/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/netty/Http2ClientFrameInitializer.java +++ b/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/netty/Http2ClientFrameInitializer.java @@ -15,7 +15,7 @@ */ package com.linecorp.armeria.internal.testing.netty; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; import io.netty.channel.Channel; import io.netty.channel.ChannelHandlerContext; diff --git a/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/netty/SimpleHttp2Connection.java b/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/netty/SimpleHttp2Connection.java index b87df789154..717cedd00fd 100644 --- a/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/netty/SimpleHttp2Connection.java +++ b/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/netty/SimpleHttp2Connection.java @@ -19,7 +19,8 @@ import javax.net.ssl.SSLException; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.util.SafeCloseable; import io.netty.bootstrap.Bootstrap; diff --git a/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/netty/package-info.java b/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/netty/package-info.java index 1d7ba91d3ed..5bdb7152cb2 100644 --- a/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/netty/package-info.java +++ b/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/netty/package-info.java @@ -17,7 +17,7 @@ /** * Common testing utilities. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.testing.netty; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/package-info.java b/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/package-info.java index 8b3894b7b4b..ae112a27af9 100644 --- a/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/package-info.java +++ b/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/package-info.java @@ -17,7 +17,7 @@ /** * Common testing utilities. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.testing; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/webapp/package-info.java b/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/webapp/package-info.java index c46f5412526..23a6010a800 100644 --- a/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/webapp/package-info.java +++ b/testing-internal/src/main/java/com/linecorp/armeria/internal/testing/webapp/package-info.java @@ -17,7 +17,7 @@ /** * Web application service testing utilities. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.testing.webapp; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/client/thrift/ThriftClientBuilder.java b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/client/thrift/ThriftClientBuilder.java index eb14487a4a6..709bef435b3 100644 --- a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/client/thrift/ThriftClientBuilder.java +++ b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/client/thrift/ThriftClientBuilder.java @@ -31,6 +31,7 @@ import org.apache.thrift.protocol.TBinaryProtocol; import org.apache.thrift.protocol.TCompactProtocol; +import org.jspecify.annotations.Nullable; import com.linecorp.armeria.client.AbstractClientOptionsBuilder; import com.linecorp.armeria.client.ClientBuilderParams; @@ -54,7 +55,6 @@ import com.linecorp.armeria.common.SerializationFormat; import com.linecorp.armeria.common.SessionProtocol; import com.linecorp.armeria.common.SuccessFunction; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.auth.AuthToken; import com.linecorp.armeria.common.auth.BasicToken; diff --git a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/client/thrift/package-info.java b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/client/thrift/package-info.java index 2ea61fe571b..0652b22984b 100644 --- a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/client/thrift/package-info.java +++ b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/client/thrift/package-info.java @@ -17,7 +17,7 @@ /** * Thrift client. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.client.thrift; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/ThriftCall.java b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/ThriftCall.java index 62d9a64053a..8e256cb2ac2 100644 --- a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/ThriftCall.java +++ b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/ThriftCall.java @@ -20,11 +20,11 @@ import org.apache.thrift.TBase; import org.apache.thrift.protocol.TMessage; import org.apache.thrift.protocol.TMessageType; +import org.jspecify.annotations.Nullable; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.google.common.base.MoreObjects; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; /** diff --git a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/ThriftFuture.java b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/ThriftFuture.java index f7bf80b6e1d..8fd21541e4b 100644 --- a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/ThriftFuture.java +++ b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/ThriftFuture.java @@ -21,8 +21,8 @@ import java.util.concurrent.CompletionException; import org.apache.thrift.async.AsyncMethodCallback; +import org.jspecify.annotations.Nullable; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.EventLoopCheckingFuture; /** diff --git a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/ThriftJacksonSerializers.java b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/ThriftJacksonSerializers.java index bb1aacb0950..8e37c48b42a 100644 --- a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/ThriftJacksonSerializers.java +++ b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/ThriftJacksonSerializers.java @@ -26,6 +26,7 @@ import org.apache.thrift.protocol.TProtocol; import org.apache.thrift.protocol.TProtocolFactory; import org.apache.thrift.transport.TMemoryBuffer; +import org.jspecify.annotations.Nullable; import com.fasterxml.jackson.core.JsonGenerator; import com.fasterxml.jackson.databind.BeanDescription; @@ -36,7 +37,6 @@ import com.fasterxml.jackson.databind.ser.Serializers; import com.fasterxml.jackson.databind.ser.std.StdSerializer; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; final class ThriftJacksonSerializers extends Serializers.Base implements Serializable { diff --git a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/ThriftListenableFuture.java b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/ThriftListenableFuture.java index 5e7a834c6b8..6edb9f94380 100644 --- a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/ThriftListenableFuture.java +++ b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/ThriftListenableFuture.java @@ -21,12 +21,11 @@ import java.util.concurrent.CompletionException; import org.apache.thrift.async.AsyncMethodCallback; +import org.jspecify.annotations.Nullable; import com.google.common.util.concurrent.AbstractFuture; import com.google.common.util.concurrent.ListenableFuture; -import com.linecorp.armeria.common.annotation.Nullable; - /** * A {@link ListenableFuture} that can be passed in as an {@link AsyncMethodCallback} * when making an asynchronous client-side Thrift RPC. diff --git a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/ThriftMessage.java b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/ThriftMessage.java index 29ca1ff0b7e..40334716dc3 100644 --- a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/ThriftMessage.java +++ b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/ThriftMessage.java @@ -20,8 +20,7 @@ import org.apache.thrift.protocol.TMessage; import org.apache.thrift.protocol.TMessageType; - -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * A container of a Thrift message produced by Apache Thrift. diff --git a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/ThriftProtocolFactoryProvider.java b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/ThriftProtocolFactoryProvider.java index 89267ab0d44..1bc62229854 100644 --- a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/ThriftProtocolFactoryProvider.java +++ b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/ThriftProtocolFactoryProvider.java @@ -20,11 +20,11 @@ import java.util.Set; import org.apache.thrift.protocol.TProtocolFactory; +import org.jspecify.annotations.Nullable; import com.google.common.base.MoreObjects; import com.linecorp.armeria.common.SerializationFormat; -import com.linecorp.armeria.common.annotation.Nullable; /** * SPI Provider for links from {@link SerializationFormat} to {@link TProtocolFactory}. diff --git a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/ThriftReply.java b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/ThriftReply.java index d6bb1eae583..5a1c13f896f 100644 --- a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/ThriftReply.java +++ b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/ThriftReply.java @@ -23,12 +23,12 @@ import org.apache.thrift.TBase; import org.apache.thrift.protocol.TMessage; import org.apache.thrift.protocol.TMessageType; +import org.jspecify.annotations.Nullable; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.google.common.base.MoreObjects; import com.google.common.base.MoreObjects.ToStringHelper; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; /** diff --git a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/logging/package-info.java b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/logging/package-info.java index 1999f224d14..2153418e0dd 100644 --- a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/logging/package-info.java +++ b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/logging/package-info.java @@ -17,7 +17,7 @@ /** * Thrift-related classes for logging. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.common.thrift.logging; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/package-info.java b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/package-info.java index 2ba5859e510..3e6acba8ed0 100644 --- a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/package-info.java +++ b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/package-info.java @@ -17,7 +17,7 @@ /** * Thrift-related common classes. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.common.thrift; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/AbstractThriftMessageClassFinder.java b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/AbstractThriftMessageClassFinder.java index 84db1c7f98d..143be901496 100644 --- a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/AbstractThriftMessageClassFinder.java +++ b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/AbstractThriftMessageClassFinder.java @@ -36,10 +36,10 @@ import org.apache.thrift.TApplicationException; import org.apache.thrift.TBase; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.thrift.TApplicationExceptions; abstract class AbstractThriftMessageClassFinder implements Supplier> { diff --git a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/BaseContext.java b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/BaseContext.java index 9ac9b1258ab..d53736c68a6 100644 --- a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/BaseContext.java +++ b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/BaseContext.java @@ -33,11 +33,10 @@ import org.apache.thrift.TException; import org.apache.thrift.protocol.TField; +import org.jspecify.annotations.Nullable; import com.fasterxml.jackson.databind.JsonNode; -import com.linecorp.armeria.common.annotation.Nullable; - /** * A base parsing context. Used as a root level parsing context for * parsing Json Objects diff --git a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/DefaultThriftMessageClassFinder.java b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/DefaultThriftMessageClassFinder.java index b4040fb631b..8b448061fde 100644 --- a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/DefaultThriftMessageClassFinder.java +++ b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/DefaultThriftMessageClassFinder.java @@ -30,7 +30,7 @@ // ================================================================================================= package com.linecorp.armeria.common.thrift.text; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; final class DefaultThriftMessageClassFinder extends AbstractThriftMessageClassFinder { diff --git a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/MapContext.java b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/MapContext.java index ef69792021f..2a6b9786871 100644 --- a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/MapContext.java +++ b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/MapContext.java @@ -30,9 +30,9 @@ // ================================================================================================= package com.linecorp.armeria.common.thrift.text; -import com.fasterxml.jackson.databind.JsonNode; +import org.jspecify.annotations.Nullable; -import com.linecorp.armeria.common.annotation.Nullable; +import com.fasterxml.jackson.databind.JsonNode; /** * A map parsing context. Just a PairContext that responds to isMapKey diff --git a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/PairContext.java b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/PairContext.java index c6542b389dd..7097f774a5d 100644 --- a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/PairContext.java +++ b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/PairContext.java @@ -33,11 +33,11 @@ import java.util.Iterator; import java.util.Map; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.node.TextNode; -import com.linecorp.armeria.common.annotation.Nullable; - /** * A map parsing context that tracks if we are parsing a key, which * is on the left hand side of the ":" operator, or a value. @@ -58,8 +58,7 @@ class PairContext extends BaseContext { @Nullable private final Iterator> children; private boolean lhs; - @Nullable - private Map.Entry currentChild; + private Map.@Nullable Entry currentChild; /** * Creates an iterator over this object's children. diff --git a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/SequenceContext.java b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/SequenceContext.java index ac35a1dece2..85051cea576 100644 --- a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/SequenceContext.java +++ b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/SequenceContext.java @@ -32,9 +32,9 @@ import java.util.Iterator; -import com.fasterxml.jackson.databind.JsonNode; +import org.jspecify.annotations.Nullable; -import com.linecorp.armeria.common.annotation.Nullable; +import com.fasterxml.jackson.databind.JsonNode; /** * A parsing context used for Sequences (lists & sets). Maintains its diff --git a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/StackWalkingThriftMessageClassFinder.java b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/StackWalkingThriftMessageClassFinder.java index ec39797f51c..2ff24d47c96 100644 --- a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/StackWalkingThriftMessageClassFinder.java +++ b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/StackWalkingThriftMessageClassFinder.java @@ -39,11 +39,10 @@ import java.util.function.Function; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import com.linecorp.armeria.common.annotation.Nullable; - final class StackWalkingThriftMessageClassFinder extends AbstractThriftMessageClassFinder { private static final Logger logger = diff --git a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/StructContext.java b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/StructContext.java index 55a93c90d76..f63b8ab6184 100644 --- a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/StructContext.java +++ b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/StructContext.java @@ -50,13 +50,13 @@ import org.apache.thrift.meta_data.StructMetaData; import org.apache.thrift.protocol.TField; import org.apache.thrift.protocol.TType; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.fasterxml.jackson.databind.JsonNode; import com.google.common.collect.MapMaker; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.SystemInfo; import com.linecorp.armeria.internal.common.thrift.ThriftMetadataAccess; diff --git a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/TTextProtocol.java b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/TTextProtocol.java index f20ca6ab13e..457330724b8 100644 --- a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/TTextProtocol.java +++ b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/TTextProtocol.java @@ -55,6 +55,7 @@ import org.apache.thrift.scheme.StandardScheme; import org.apache.thrift.transport.TTransport; import org.apache.thrift.transport.TTransportException; +import org.jspecify.annotations.Nullable; import com.fasterxml.jackson.core.JsonEncoding; import com.fasterxml.jackson.core.JsonGenerator; @@ -63,7 +64,6 @@ import com.fasterxml.jackson.databind.ObjectMapper; import com.google.common.primitives.Ints; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.util.TemporaryThreadLocals; /** diff --git a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/package-info.java b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/package-info.java index 9ac3a890ffa..4133860d341 100644 --- a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/package-info.java +++ b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/common/thrift/text/package-info.java @@ -44,7 +44,7 @@ *

  • Miscellaneous style cleanups
  • * */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.common.thrift.text; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/client/thrift/DefaultTHttpClient.java b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/client/thrift/DefaultTHttpClient.java index 762dd06c809..43e9bfae039 100644 --- a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/client/thrift/DefaultTHttpClient.java +++ b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/client/thrift/DefaultTHttpClient.java @@ -20,6 +20,7 @@ import static java.util.Objects.requireNonNull; import org.apache.thrift.transport.TTransportException; +import org.jspecify.annotations.Nullable; import com.linecorp.armeria.client.ClientBuilderParams; import com.linecorp.armeria.client.RequestOptions; @@ -32,7 +33,6 @@ import com.linecorp.armeria.common.RequestTarget; import com.linecorp.armeria.common.RpcRequest; import com.linecorp.armeria.common.RpcResponse; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.client.ClientUtil; import com.linecorp.armeria.internal.client.DefaultClientRequestContext; import com.linecorp.armeria.internal.client.TailPreClient; diff --git a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/client/thrift/THttpClientDelegate.java b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/client/thrift/THttpClientDelegate.java index 01c61540400..35b37d6c470 100644 --- a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/client/thrift/THttpClientDelegate.java +++ b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/client/thrift/THttpClientDelegate.java @@ -35,6 +35,7 @@ import org.apache.thrift.protocol.TProtocolFactory; import org.apache.thrift.transport.TTransport; import org.apache.thrift.transport.TTransportException; +import org.jspecify.annotations.Nullable; import com.google.common.base.Strings; import com.google.common.primitives.Ints; @@ -59,7 +60,6 @@ import com.linecorp.armeria.common.RpcRequest; import com.linecorp.armeria.common.RpcResponse; import com.linecorp.armeria.common.SerializationFormat; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLogProperty; import com.linecorp.armeria.common.thrift.ThriftCall; import com.linecorp.armeria.common.thrift.ThriftReply; @@ -320,7 +320,7 @@ private static void handlePreDecodeException(ClientRequestContext ctx, Completab handleException(ctx, reply, null, decodedCause); } - static Exception decodeException(Throwable cause, @Nullable Class[] declaredThrowableExceptions) { + static Exception decodeException(Throwable cause, Class @Nullable [] declaredThrowableExceptions) { if (cause instanceof TException || cause instanceof UnprocessedRequestException || cause instanceof FailFastException) { diff --git a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/client/thrift/THttpClientInvocationHandler.java b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/client/thrift/THttpClientInvocationHandler.java index 7a21776483b..9f23cc65534 100644 --- a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/client/thrift/THttpClientInvocationHandler.java +++ b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/client/thrift/THttpClientInvocationHandler.java @@ -25,6 +25,7 @@ import java.util.concurrent.ExecutionException; import org.apache.thrift.async.AsyncMethodCallback; +import org.jspecify.annotations.Nullable; import com.linecorp.armeria.client.ClientBuilderParams; import com.linecorp.armeria.client.ClientOptions; @@ -35,7 +36,6 @@ import com.linecorp.armeria.client.thrift.THttpClient; import com.linecorp.armeria.common.RpcResponse; import com.linecorp.armeria.common.Scheme; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.AbstractUnwrappable; import com.linecorp.armeria.common.util.CompletionActions; import com.linecorp.armeria.common.util.Exceptions; @@ -113,7 +113,7 @@ private Object invokeObjectMethod(Object proxy, Method method, Object[] args) { } @Nullable - private Object invokeClientMethod(Method method, @Nullable Object[] args) throws Throwable { + private Object invokeClientMethod(Method method, Object @Nullable [] args) throws Throwable { final AsyncMethodCallback callback; if (args == null) { args = NO_ARGS; diff --git a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/client/thrift/package-info.java b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/client/thrift/package-info.java index bb28bf314a8..318f5d97d21 100644 --- a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/client/thrift/package-info.java +++ b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/client/thrift/package-info.java @@ -17,7 +17,7 @@ /** * Various classes used internally. Anything in this package can be changed or removed at any time. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.client.thrift; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/common/thrift/AbstractTByteBufTransport.java b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/common/thrift/AbstractTByteBufTransport.java index f89379cd2f3..8c7c2baa7a4 100644 --- a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/common/thrift/AbstractTByteBufTransport.java +++ b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/common/thrift/AbstractTByteBufTransport.java @@ -20,8 +20,7 @@ import org.apache.thrift.transport.TTransport; import org.apache.thrift.transport.TTransportException; - -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; import io.netty.buffer.ByteBuf; @@ -70,9 +69,8 @@ public void write(byte[] buf, int off, int len) { this.buf.writeBytes(buf, off, len); } - @Nullable @Override - public byte[] getBuffer() { + public byte @Nullable [] getBuffer() { final ByteBuf buf = this.buf; if (!buf.hasArray()) { return null; diff --git a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/common/thrift/DefaultThriftProtocolFactoryProvider.java b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/common/thrift/DefaultThriftProtocolFactoryProvider.java index 18b845a5dea..b6dd240409c 100644 --- a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/common/thrift/DefaultThriftProtocolFactoryProvider.java +++ b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/common/thrift/DefaultThriftProtocolFactoryProvider.java @@ -20,11 +20,11 @@ import java.util.Set; import org.apache.thrift.protocol.TProtocolFactory; +import org.jspecify.annotations.Nullable; import com.google.common.collect.ImmutableSet; import com.linecorp.armeria.common.SerializationFormat; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.thrift.ThriftProtocolFactories; import com.linecorp.armeria.common.thrift.ThriftProtocolFactoryProvider; import com.linecorp.armeria.common.thrift.ThriftSerializationFormats; diff --git a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/common/thrift/ThriftFunction.java b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/common/thrift/ThriftFunction.java index 4898eaa6598..9d559c976a9 100644 --- a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/common/thrift/ThriftFunction.java +++ b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/common/thrift/ThriftFunction.java @@ -32,11 +32,11 @@ import org.apache.thrift.TFieldIdEnum; import org.apache.thrift.meta_data.FieldMetaData; import org.apache.thrift.protocol.TMessageType; +import org.jspecify.annotations.Nullable; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.server.annotation.DecoratorAnnotationUtil; import com.linecorp.armeria.internal.server.annotation.DecoratorAnnotationUtil.DecoratorAndOrder; diff --git a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/common/thrift/ThriftServiceMetadata.java b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/common/thrift/ThriftServiceMetadata.java index fea1fe30cbe..7e5238a21fc 100644 --- a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/common/thrift/ThriftServiceMetadata.java +++ b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/common/thrift/ThriftServiceMetadata.java @@ -30,13 +30,13 @@ import org.apache.thrift.ProcessFunction; import org.apache.thrift.TBaseAsyncProcessor; import org.apache.thrift.TBaseProcessor; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.util.Types; /** diff --git a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/common/thrift/logging/package-info.java b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/common/thrift/logging/package-info.java index b6333dffebb..98e1e153993 100644 --- a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/common/thrift/logging/package-info.java +++ b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/common/thrift/logging/package-info.java @@ -17,7 +17,7 @@ /** * Various classes used internally. Anything in this package can be changed or removed at any time. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.common.thrift.logging; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/common/thrift/package-info.java b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/common/thrift/package-info.java index d1f614e1b20..18d551d481f 100644 --- a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/common/thrift/package-info.java +++ b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/common/thrift/package-info.java @@ -17,7 +17,7 @@ /** * Various classes used internally. Anything in this package can be changed or removed at any time. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.common.thrift; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/server/thrift/ThriftDescriptiveTypeInfoProvider.java b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/server/thrift/ThriftDescriptiveTypeInfoProvider.java index a76e39989b6..20201dbcf3e 100644 --- a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/server/thrift/ThriftDescriptiveTypeInfoProvider.java +++ b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/server/thrift/ThriftDescriptiveTypeInfoProvider.java @@ -44,10 +44,10 @@ import org.apache.thrift.meta_data.SetMetaData; import org.apache.thrift.meta_data.StructMetaData; import org.apache.thrift.protocol.TType; +import org.jspecify.annotations.Nullable; import com.google.common.annotations.VisibleForTesting; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.thrift.ThriftMetadataAccess; import com.linecorp.armeria.server.docs.DescriptiveTypeInfo; import com.linecorp.armeria.server.docs.DescriptiveTypeInfoProvider; diff --git a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/server/thrift/ThriftDocServicePlugin.java b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/server/thrift/ThriftDocServicePlugin.java index 8a06435d717..91e5d8654dd 100644 --- a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/server/thrift/ThriftDocServicePlugin.java +++ b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/server/thrift/ThriftDocServicePlugin.java @@ -42,13 +42,13 @@ import org.apache.thrift.TFieldIdEnum; import org.apache.thrift.TSerializer; import org.apache.thrift.meta_data.FieldMetaData; +import org.jspecify.annotations.Nullable; import com.google.common.annotations.VisibleForTesting; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; import com.linecorp.armeria.common.HttpMethod; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.thrift.ThriftProtocolFactories; import com.linecorp.armeria.internal.common.thrift.ThriftMetadataAccess; import com.linecorp.armeria.server.Route; diff --git a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/server/thrift/package-info.java b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/server/thrift/package-info.java index 841e0410a8c..f7419ccb9dd 100644 --- a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/server/thrift/package-info.java +++ b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/internal/server/thrift/package-info.java @@ -17,7 +17,7 @@ /** * Various classes used internally. Anything in this package can be changed or removed at any time. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.server.thrift; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/server/thrift/THttpService.java b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/server/thrift/THttpService.java index a41eaa945ae..e3043597e48 100644 --- a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/server/thrift/THttpService.java +++ b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/server/thrift/THttpService.java @@ -41,6 +41,7 @@ import org.apache.thrift.protocol.TProtocolException; import org.apache.thrift.protocol.TProtocolFactory; import org.apache.thrift.transport.TTransport; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -62,7 +63,6 @@ import com.linecorp.armeria.common.RpcRequest; import com.linecorp.armeria.common.RpcResponse; import com.linecorp.armeria.common.SerializationFormat; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLogProperty; import com.linecorp.armeria.common.thrift.ThriftCall; import com.linecorp.armeria.common.thrift.ThriftProtocolFactories; diff --git a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/server/thrift/THttpServiceBuilder.java b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/server/thrift/THttpServiceBuilder.java index 39f3acf156d..ddc7947d021 100644 --- a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/server/thrift/THttpServiceBuilder.java +++ b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/server/thrift/THttpServiceBuilder.java @@ -29,6 +29,7 @@ import org.apache.thrift.protocol.TBinaryProtocol; import org.apache.thrift.protocol.TCompactProtocol; +import org.jspecify.annotations.Nullable; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableListMultimap; @@ -37,7 +38,6 @@ import com.linecorp.armeria.common.RpcResponse; import com.linecorp.armeria.common.SerializationFormat; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.thrift.ThriftProtocolFactoryProvider; import com.linecorp.armeria.common.thrift.ThriftSerializationFormats; import com.linecorp.armeria.server.RpcService; diff --git a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/server/thrift/ThriftCallService.java b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/server/thrift/ThriftCallService.java index 76241c09f17..b81f7891984 100644 --- a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/server/thrift/ThriftCallService.java +++ b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/server/thrift/ThriftCallService.java @@ -28,6 +28,7 @@ import org.apache.thrift.TBase; import org.apache.thrift.TException; import org.apache.thrift.async.AsyncMethodCallback; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -35,7 +36,6 @@ import com.linecorp.armeria.common.RequestContext; import com.linecorp.armeria.common.RpcRequest; import com.linecorp.armeria.common.RpcResponse; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.internal.common.thrift.ThriftFunction; import com.linecorp.armeria.server.RpcService; diff --git a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/server/thrift/package-info.java b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/server/thrift/package-info.java index c2880666d5e..b2a8e2be0ee 100644 --- a/thrift/thrift0.13/src/main/java/com/linecorp/armeria/server/thrift/package-info.java +++ b/thrift/thrift0.13/src/main/java/com/linecorp/armeria/server/thrift/package-info.java @@ -17,7 +17,7 @@ /** * Thrift service. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.thrift; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/thrift/thrift0.13/src/test/java/com/linecorp/armeria/client/thrift/ThriftOverHttpClientTest.java b/thrift/thrift0.13/src/test/java/com/linecorp/armeria/client/thrift/ThriftOverHttpClientTest.java index a2755945f29..e5d9ee5db29 100644 --- a/thrift/thrift0.13/src/test/java/com/linecorp/armeria/client/thrift/ThriftOverHttpClientTest.java +++ b/thrift/thrift0.13/src/test/java/com/linecorp/armeria/client/thrift/ThriftOverHttpClientTest.java @@ -38,6 +38,7 @@ import org.apache.thrift.protocol.TProtocolFactory; import org.apache.thrift.protocol.TTupleProtocol; import org.apache.thrift.transport.TTransportException; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.BeforeEach; @@ -72,7 +73,6 @@ import com.linecorp.armeria.common.SerializationFormat; import com.linecorp.armeria.common.SerializationFormatProvider; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.thrift.ThriftCall; import com.linecorp.armeria.common.thrift.ThriftFuture; diff --git a/thrift/thrift0.13/src/test/java/com/linecorp/armeria/server/thrift/AbstractTHttp2Client.java b/thrift/thrift0.13/src/test/java/com/linecorp/armeria/server/thrift/AbstractTHttp2Client.java index cc9a142ed00..bf4b753e75d 100644 --- a/thrift/thrift0.13/src/test/java/com/linecorp/armeria/server/thrift/AbstractTHttp2Client.java +++ b/thrift/thrift0.13/src/test/java/com/linecorp/armeria/server/thrift/AbstractTHttp2Client.java @@ -28,8 +28,7 @@ import org.apache.thrift.transport.TMemoryInputTransport; import org.apache.thrift.transport.TTransport; import org.apache.thrift.transport.TTransportException; - -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; import io.netty.bootstrap.Bootstrap; import io.netty.buffer.ByteBuf; diff --git a/thrift/thrift0.14/src/main/java/com/linecorp/armeria/internal/common/thrift/TByteBufTransport.java b/thrift/thrift0.14/src/main/java/com/linecorp/armeria/internal/common/thrift/TByteBufTransport.java index 7739cbe49b4..9105ffbe3c8 100644 --- a/thrift/thrift0.14/src/main/java/com/linecorp/armeria/internal/common/thrift/TByteBufTransport.java +++ b/thrift/thrift0.14/src/main/java/com/linecorp/armeria/internal/common/thrift/TByteBufTransport.java @@ -17,8 +17,7 @@ import org.apache.thrift.TConfiguration; import org.apache.thrift.transport.TTransportException; - -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; import io.netty.buffer.ByteBuf; diff --git a/thrift/thrift0.14/src/main/java/com/linecorp/armeria/internal/common/thrift/package-info.java b/thrift/thrift0.14/src/main/java/com/linecorp/armeria/internal/common/thrift/package-info.java index 79e5453bd37..59042504a2a 100644 --- a/thrift/thrift0.14/src/main/java/com/linecorp/armeria/internal/common/thrift/package-info.java +++ b/thrift/thrift0.14/src/main/java/com/linecorp/armeria/internal/common/thrift/package-info.java @@ -17,7 +17,7 @@ /** * Various classes used internally. Anything in this package can be changed or removed at any time. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.common.thrift; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/thrift/thrift0.18/src/main/java/com/linecorp/armeria/internal/common/thrift/logging/package-info.java b/thrift/thrift0.18/src/main/java/com/linecorp/armeria/internal/common/thrift/logging/package-info.java index b6333dffebb..98e1e153993 100644 --- a/thrift/thrift0.18/src/main/java/com/linecorp/armeria/internal/common/thrift/logging/package-info.java +++ b/thrift/thrift0.18/src/main/java/com/linecorp/armeria/internal/common/thrift/logging/package-info.java @@ -17,7 +17,7 @@ /** * Various classes used internally. Anything in this package can be changed or removed at any time. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.common.thrift.logging; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/thrift/thrift0.19/src/main/java/com/linecorp/armeria/common/thrift/logging/ThriftFieldMaskerSelectorBuilder.java b/thrift/thrift0.19/src/main/java/com/linecorp/armeria/common/thrift/logging/ThriftFieldMaskerSelectorBuilder.java index 7ea5924f785..7d14b56b05b 100644 --- a/thrift/thrift0.19/src/main/java/com/linecorp/armeria/common/thrift/logging/ThriftFieldMaskerSelectorBuilder.java +++ b/thrift/thrift0.19/src/main/java/com/linecorp/armeria/common/thrift/logging/ThriftFieldMaskerSelectorBuilder.java @@ -21,9 +21,10 @@ import java.util.List; import java.util.Map; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.logging.FieldMasker; diff --git a/thrift/thrift0.19/src/main/java/com/linecorp/armeria/common/thrift/logging/package-info.java b/thrift/thrift0.19/src/main/java/com/linecorp/armeria/common/thrift/logging/package-info.java index 1999f224d14..2153418e0dd 100644 --- a/thrift/thrift0.19/src/main/java/com/linecorp/armeria/common/thrift/logging/package-info.java +++ b/thrift/thrift0.19/src/main/java/com/linecorp/armeria/common/thrift/logging/package-info.java @@ -17,7 +17,7 @@ /** * Thrift-related classes for logging. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.common.thrift.logging; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/thrift/thrift0.21/src/main/java/com/linecorp/armeria/internal/common/thrift/ThriftFunction.java b/thrift/thrift0.21/src/main/java/com/linecorp/armeria/internal/common/thrift/ThriftFunction.java index 3156649536f..a99661fa278 100644 --- a/thrift/thrift0.21/src/main/java/com/linecorp/armeria/internal/common/thrift/ThriftFunction.java +++ b/thrift/thrift0.21/src/main/java/com/linecorp/armeria/internal/common/thrift/ThriftFunction.java @@ -32,11 +32,11 @@ import org.apache.thrift.TFieldIdEnum; import org.apache.thrift.meta_data.FieldMetaData; import org.apache.thrift.protocol.TMessageType; +import org.jspecify.annotations.Nullable; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.server.annotation.DecoratorAnnotationUtil; import com.linecorp.armeria.internal.server.annotation.DecoratorAnnotationUtil.DecoratorAndOrder; diff --git a/thrift/thrift0.21/src/main/java/com/linecorp/armeria/internal/common/thrift/ThriftServiceMetadata.java b/thrift/thrift0.21/src/main/java/com/linecorp/armeria/internal/common/thrift/ThriftServiceMetadata.java index 28b85584f18..3fa615ddfa1 100644 --- a/thrift/thrift0.21/src/main/java/com/linecorp/armeria/internal/common/thrift/ThriftServiceMetadata.java +++ b/thrift/thrift0.21/src/main/java/com/linecorp/armeria/internal/common/thrift/ThriftServiceMetadata.java @@ -30,13 +30,13 @@ import org.apache.thrift.ProcessFunction; import org.apache.thrift.TBaseAsyncProcessor; import org.apache.thrift.TBaseProcessor; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.util.Types; /** diff --git a/thrift/thrift0.21/src/main/java/com/linecorp/armeria/internal/common/thrift/package-info.java b/thrift/thrift0.21/src/main/java/com/linecorp/armeria/internal/common/thrift/package-info.java index 40bf862dac7..db98ef03150 100644 --- a/thrift/thrift0.21/src/main/java/com/linecorp/armeria/internal/common/thrift/package-info.java +++ b/thrift/thrift0.21/src/main/java/com/linecorp/armeria/internal/common/thrift/package-info.java @@ -17,7 +17,7 @@ /** * Various classes used internally. Anything in this package can be changed or removed at any time. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.common.thrift; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/thrift/thrift0.21/src/main/java/com/linecorp/armeria/server/thrift/ThriftCallService.java b/thrift/thrift0.21/src/main/java/com/linecorp/armeria/server/thrift/ThriftCallService.java index 88e2f389eb5..266efbd4360 100644 --- a/thrift/thrift0.21/src/main/java/com/linecorp/armeria/server/thrift/ThriftCallService.java +++ b/thrift/thrift0.21/src/main/java/com/linecorp/armeria/server/thrift/ThriftCallService.java @@ -28,6 +28,7 @@ import org.apache.thrift.TBase; import org.apache.thrift.TException; import org.apache.thrift.async.AsyncMethodCallback; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -35,7 +36,6 @@ import com.linecorp.armeria.common.RequestContext; import com.linecorp.armeria.common.RpcRequest; import com.linecorp.armeria.common.RpcResponse; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.internal.common.thrift.ThriftFunction; import com.linecorp.armeria.server.RpcService; diff --git a/thrift/thrift0.21/src/main/java/com/linecorp/armeria/server/thrift/package-info.java b/thrift/thrift0.21/src/main/java/com/linecorp/armeria/server/thrift/package-info.java index 6d784afb284..6634ca0e115 100644 --- a/thrift/thrift0.21/src/main/java/com/linecorp/armeria/server/thrift/package-info.java +++ b/thrift/thrift0.21/src/main/java/com/linecorp/armeria/server/thrift/package-info.java @@ -17,7 +17,7 @@ /** * Thrift service. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.thrift; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/tomcat10/src/main/java/com/linecorp/armeria/internal/server/tomcat/Tomcat90ProtocolHandler.java b/tomcat10/src/main/java/com/linecorp/armeria/internal/server/tomcat/Tomcat90ProtocolHandler.java index 5c1f72552f0..6d1f8af08cf 100644 --- a/tomcat10/src/main/java/com/linecorp/armeria/internal/server/tomcat/Tomcat90ProtocolHandler.java +++ b/tomcat10/src/main/java/com/linecorp/armeria/internal/server/tomcat/Tomcat90ProtocolHandler.java @@ -25,8 +25,7 @@ import org.apache.coyote.ProtocolHandler; import org.apache.coyote.UpgradeProtocol; import org.apache.tomcat.util.net.SSLHostConfig; - -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * A {@link ProtocolHandler} for Tomcat 8.5 and above. diff --git a/tomcat10/src/main/java/com/linecorp/armeria/internal/server/tomcat/package-info.java b/tomcat10/src/main/java/com/linecorp/armeria/internal/server/tomcat/package-info.java index 32b31ff7ee8..bdf0edfbd91 100644 --- a/tomcat10/src/main/java/com/linecorp/armeria/internal/server/tomcat/package-info.java +++ b/tomcat10/src/main/java/com/linecorp/armeria/internal/server/tomcat/package-info.java @@ -17,7 +17,7 @@ /** * Internal classes for embedded Tomcat service. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.server.tomcat; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/ArmeriaProcessor.java b/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/ArmeriaProcessor.java index 9061aa03f2d..d7cbaeeca60 100644 --- a/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/ArmeriaProcessor.java +++ b/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/ArmeriaProcessor.java @@ -26,8 +26,7 @@ import org.apache.tomcat.util.buf.ByteChunk; import org.apache.tomcat.util.net.AbstractEndpoint; import org.apache.tomcat.util.net.SocketWrapperBase; - -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; import jakarta.servlet.ServletConnection; @@ -108,9 +107,8 @@ protected AbstractEndpoint.Handler.SocketState dispatchEndRequest() throws IOExc throw new UnsupportedOperationException(); } - @Nullable @Override - protected AbstractEndpoint.Handler.SocketState service(SocketWrapperBase socketWrapper) + protected AbstractEndpoint.Handler.@Nullable SocketState service(SocketWrapperBase socketWrapper) throws IOException { // Doesn't seem to be used. return null; diff --git a/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/JarSubsetResourceSet.java b/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/JarSubsetResourceSet.java index 7ac75ad4325..381a9343573 100644 --- a/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/JarSubsetResourceSet.java +++ b/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/JarSubsetResourceSet.java @@ -44,8 +44,8 @@ import org.apache.catalina.WebResourceRoot; import org.apache.catalina.webresources.AbstractArchiveResourceSet; import org.apache.catalina.webresources.JarResourceSet; +import org.jspecify.annotations.Nullable; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; final class JarSubsetResourceSet extends JarResourceSet { diff --git a/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/ManagedTomcatService.java b/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/ManagedTomcatService.java index aec032492eb..697252a15a6 100644 --- a/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/ManagedTomcatService.java +++ b/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/ManagedTomcatService.java @@ -25,12 +25,12 @@ import org.apache.catalina.LifecycleState; import org.apache.catalina.Service; import org.apache.catalina.connector.Connector; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.google.common.collect.Sets; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.server.Server; import com.linecorp.armeria.server.ServerListener; import com.linecorp.armeria.server.ServerListenerAdapter; diff --git a/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/TomcatService.java b/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/TomcatService.java index 13d3c159d61..5f4c0a48e5d 100644 --- a/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/TomcatService.java +++ b/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/TomcatService.java @@ -46,6 +46,7 @@ import org.apache.tomcat.util.buf.CharChunk; import org.apache.tomcat.util.buf.MessageBytes; import org.apache.tomcat.util.http.MimeHeaders; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -62,7 +63,6 @@ import com.linecorp.armeria.common.MediaType; import com.linecorp.armeria.common.ResponseHeaders; import com.linecorp.armeria.common.ResponseHeadersBuilder; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLogProperty; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.internal.server.servlet.ServletTlsAttributes; diff --git a/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/TomcatServiceBuilder.java b/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/TomcatServiceBuilder.java index 1ea68b32bdc..f51d5204dc6 100644 --- a/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/TomcatServiceBuilder.java +++ b/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/TomcatServiceBuilder.java @@ -36,8 +36,7 @@ import org.apache.catalina.core.StandardService; import org.apache.catalina.realm.NullRealm; import org.apache.catalina.startup.Tomcat; - -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * Builds a {@link TomcatService}. Use the factory methods in {@link TomcatService} if you do not override diff --git a/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/TomcatServiceConfig.java b/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/TomcatServiceConfig.java index 6b1e07e12c0..a888e3cd6d7 100644 --- a/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/TomcatServiceConfig.java +++ b/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/TomcatServiceConfig.java @@ -24,11 +24,10 @@ import org.apache.catalina.core.StandardEngine; import org.apache.catalina.core.StandardServer; import org.apache.catalina.core.StandardService; +import org.jspecify.annotations.Nullable; import com.google.common.base.MoreObjects; -import com.linecorp.armeria.common.annotation.Nullable; - /** * {@link TomcatService} configuration. */ diff --git a/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/TomcatServiceException.java b/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/TomcatServiceException.java index 5cd88a4a73d..0f7423fa625 100644 --- a/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/TomcatServiceException.java +++ b/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/TomcatServiceException.java @@ -16,7 +16,7 @@ package com.linecorp.armeria.server.tomcat; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * A {@link RuntimeException} that is raised when configuring or starting an embedded Tomcat fails. diff --git a/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/TomcatUtil.java b/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/TomcatUtil.java index d594c4decc4..90a17ed3cb4 100644 --- a/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/TomcatUtil.java +++ b/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/TomcatUtil.java @@ -33,8 +33,7 @@ import org.apache.catalina.startup.Constants; import org.apache.catalina.startup.Tomcat; import org.apache.catalina.startup.Tomcat.DefaultWebXmlListener; - -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; final class TomcatUtil { diff --git a/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/UnmanagedTomcatService.java b/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/UnmanagedTomcatService.java index 60f74b36578..a31e11ea706 100644 --- a/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/UnmanagedTomcatService.java +++ b/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/UnmanagedTomcatService.java @@ -20,8 +20,7 @@ import org.apache.catalina.connector.Connector; import org.apache.catalina.startup.Tomcat; - -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; final class UnmanagedTomcatService extends TomcatService { diff --git a/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/package-info.java b/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/package-info.java index 8c22ba2a294..8cdb2d70ec1 100644 --- a/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/package-info.java +++ b/tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/package-info.java @@ -17,7 +17,7 @@ /** * Embedded Tomcat service. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.tomcat; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/tomcat10/src/test/java/com/linecorp/armeria/server/tomcat/TomcatServiceAccessLogTest.java b/tomcat10/src/test/java/com/linecorp/armeria/server/tomcat/TomcatServiceAccessLogTest.java index db9807e3685..5cc8192c94e 100644 --- a/tomcat10/src/test/java/com/linecorp/armeria/server/tomcat/TomcatServiceAccessLogTest.java +++ b/tomcat10/src/test/java/com/linecorp/armeria/server/tomcat/TomcatServiceAccessLogTest.java @@ -27,6 +27,7 @@ import org.apache.catalina.startup.Tomcat; import org.apache.catalina.valves.AbstractAccessLogValve; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; @@ -34,7 +35,6 @@ import com.linecorp.armeria.client.BlockingWebClient; import com.linecorp.armeria.client.WebClient; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.server.tomcat.TomcatVersion; import com.linecorp.armeria.server.ServerBuilder; import com.linecorp.armeria.testing.junit5.server.ServerExtension; diff --git a/tomcat8/src/main/java/com/linecorp/armeria/server/tomcat/ArmeriaEndpoint.java b/tomcat8/src/main/java/com/linecorp/armeria/server/tomcat/ArmeriaEndpoint.java index e25a2d98420..b7e9ea5366c 100644 --- a/tomcat8/src/main/java/com/linecorp/armeria/server/tomcat/ArmeriaEndpoint.java +++ b/tomcat8/src/main/java/com/linecorp/armeria/server/tomcat/ArmeriaEndpoint.java @@ -25,8 +25,7 @@ import org.apache.tomcat.util.net.SocketEvent; import org.apache.tomcat.util.net.SocketProcessorBase; import org.apache.tomcat.util.net.SocketWrapperBase; - -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * A fake {@link AbstractEndpoint}. diff --git a/tomcat8/src/main/java/com/linecorp/armeria/server/tomcat/ArmeriaProcessor.java b/tomcat8/src/main/java/com/linecorp/armeria/server/tomcat/ArmeriaProcessor.java index 53ebd129599..9a644a818d6 100644 --- a/tomcat8/src/main/java/com/linecorp/armeria/server/tomcat/ArmeriaProcessor.java +++ b/tomcat8/src/main/java/com/linecorp/armeria/server/tomcat/ArmeriaProcessor.java @@ -25,8 +25,7 @@ import org.apache.tomcat.util.buf.ByteChunk; import org.apache.tomcat.util.net.AbstractEndpoint; import org.apache.tomcat.util.net.SocketWrapperBase; - -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * Provides a fake Processor to provide {@link ActionHook} to request/response. @@ -91,9 +90,8 @@ protected AbstractEndpoint.Handler.SocketState dispatchEndRequest() throws IOExc throw new UnsupportedOperationException(); } - @Nullable @Override - protected AbstractEndpoint.Handler.SocketState service(SocketWrapperBase socketWrapper) + protected AbstractEndpoint.Handler.@Nullable SocketState service(SocketWrapperBase socketWrapper) throws IOException { // Doesn't seem to be used. return null; diff --git a/tomcat8/src/main/java/com/linecorp/armeria/server/tomcat/package-info.java b/tomcat8/src/main/java/com/linecorp/armeria/server/tomcat/package-info.java index 40575affbf6..a79a07d78b4 100644 --- a/tomcat8/src/main/java/com/linecorp/armeria/server/tomcat/package-info.java +++ b/tomcat8/src/main/java/com/linecorp/armeria/server/tomcat/package-info.java @@ -17,7 +17,7 @@ /** * Internal classes for embedded Tomcat service. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.tomcat; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/tomcat9/src/main/java/com/linecorp/armeria/server/tomcat/ArmeriaProcessor.java b/tomcat9/src/main/java/com/linecorp/armeria/server/tomcat/ArmeriaProcessor.java index 5452b1cfca9..39256807470 100644 --- a/tomcat9/src/main/java/com/linecorp/armeria/server/tomcat/ArmeriaProcessor.java +++ b/tomcat9/src/main/java/com/linecorp/armeria/server/tomcat/ArmeriaProcessor.java @@ -25,8 +25,7 @@ import org.apache.tomcat.util.buf.ByteChunk; import org.apache.tomcat.util.net.AbstractEndpoint; import org.apache.tomcat.util.net.SocketWrapperBase; - -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * Provides a fake Processor to provide {@code ActionHook} to request/response. @@ -99,9 +98,8 @@ protected AbstractEndpoint.Handler.SocketState dispatchEndRequest() throws IOExc throw new UnsupportedOperationException(); } - @Nullable @Override - protected AbstractEndpoint.Handler.SocketState service(SocketWrapperBase socketWrapper) + protected AbstractEndpoint.Handler.@Nullable SocketState service(SocketWrapperBase socketWrapper) throws IOException { // Doesn't seem to be used. return null; diff --git a/xds-api/src/main/java/com/linecorp/armeria/xds/api/package-info.java b/xds-api/src/main/java/com/linecorp/armeria/xds/api/package-info.java index fb209b63856..7776eb1f401 100644 --- a/xds-api/src/main/java/com/linecorp/armeria/xds/api/package-info.java +++ b/xds-api/src/main/java/com/linecorp/armeria/xds/api/package-info.java @@ -18,9 +18,10 @@ * Provides integrations with the * v3 gRPC-xDS protocol. */ -@NonNullByDefault +@NullMarked @UnstableApi package com.linecorp.armeria.xds.api; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/xds-validator/src/main/java/com/linecorp/armeria/xds/validator/package-info.java b/xds-validator/src/main/java/com/linecorp/armeria/xds/validator/package-info.java index a1fa4df15d4..40b66618843 100644 --- a/xds-validator/src/main/java/com/linecorp/armeria/xds/validator/package-info.java +++ b/xds-validator/src/main/java/com/linecorp/armeria/xds/validator/package-info.java @@ -19,8 +19,9 @@ * v3 gRPC-xDS protocol. */ @UnstableApi -@NonNullByDefault +@NullMarked package com.linecorp.armeria.xds.validator; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/AbstractResourceNode.java b/xds/src/main/java/com/linecorp/armeria/xds/AbstractResourceNode.java index 67a24b959e5..c83bf3e7a28 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/AbstractResourceNode.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/AbstractResourceNode.java @@ -21,13 +21,12 @@ import java.util.HashSet; import java.util.Set; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.google.common.base.MoreObjects; -import com.linecorp.armeria.common.annotation.Nullable; - import io.envoyproxy.envoy.config.core.v3.ConfigSource; import io.grpc.Status; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/AbstractRoot.java b/xds/src/main/java/com/linecorp/armeria/xds/AbstractRoot.java index 0cb33eb53db..72fd35d5701 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/AbstractRoot.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/AbstractRoot.java @@ -23,12 +23,12 @@ import java.util.Set; import java.util.function.Consumer; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.google.common.annotations.VisibleForTesting; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.SafeCloseable; import io.grpc.Status; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/BootstrapClusters.java b/xds/src/main/java/com/linecorp/armeria/xds/BootstrapClusters.java index 6173afd5553..328db61d104 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/BootstrapClusters.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/BootstrapClusters.java @@ -20,10 +20,11 @@ import java.util.List; import java.util.Map; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.google.common.collect.ImmutableList; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.metric.MeterIdPrefix; import com.linecorp.armeria.xds.client.endpoint.XdsLoadBalancer; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/ClusterResourceNode.java b/xds/src/main/java/com/linecorp/armeria/xds/ClusterResourceNode.java index c0da5d8d9a9..239b39cbbb6 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/ClusterResourceNode.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/ClusterResourceNode.java @@ -19,7 +19,8 @@ import static com.google.common.base.Strings.isNullOrEmpty; import static com.linecorp.armeria.xds.XdsType.CLUSTER; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.xds.client.endpoint.UpdatableXdsLoadBalancer; import io.envoyproxy.envoy.config.cluster.v3.Cluster; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/ClusterSnapshot.java b/xds/src/main/java/com/linecorp/armeria/xds/ClusterSnapshot.java index 8ab4ce1fcf8..c7a2997dc71 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/ClusterSnapshot.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/ClusterSnapshot.java @@ -16,12 +16,13 @@ package com.linecorp.armeria.xds; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.google.common.base.Objects; import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.client.Endpoint; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.xds.client.endpoint.UpdatableXdsLoadBalancer; import com.linecorp.armeria.xds.client.endpoint.XdsLoadBalancer; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/ClusterXdsResource.java b/xds/src/main/java/com/linecorp/armeria/xds/ClusterXdsResource.java index ac29ed6567f..52dd4f6ce90 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/ClusterXdsResource.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/ClusterXdsResource.java @@ -18,7 +18,8 @@ import static com.google.common.base.Preconditions.checkArgument; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.annotation.UnstableApi; import io.envoyproxy.envoy.config.cluster.v3.Cluster; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/ConfigSourceMapper.java b/xds/src/main/java/com/linecorp/armeria/xds/ConfigSourceMapper.java index a114ccb7955..66ce30a566c 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/ConfigSourceMapper.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/ConfigSourceMapper.java @@ -18,7 +18,7 @@ import static com.google.common.base.Preconditions.checkArgument; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; import io.envoyproxy.envoy.config.bootstrap.v3.Bootstrap; import io.envoyproxy.envoy.config.core.v3.ApiConfigSource; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/EndpointResourceNode.java b/xds/src/main/java/com/linecorp/armeria/xds/EndpointResourceNode.java index e7bc36c1c12..70b7343f84b 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/EndpointResourceNode.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/EndpointResourceNode.java @@ -18,7 +18,7 @@ import static com.linecorp.armeria.xds.XdsType.ENDPOINT; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; import io.envoyproxy.envoy.config.core.v3.ConfigSource; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/FilterUtil.java b/xds/src/main/java/com/linecorp/armeria/xds/FilterUtil.java index ba3b536395c..8eae5134766 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/FilterUtil.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/FilterUtil.java @@ -23,6 +23,8 @@ import java.util.Map.Entry; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableMap; import com.google.protobuf.Any; import com.google.protobuf.Message; @@ -37,7 +39,6 @@ import com.linecorp.armeria.client.HttpPreprocessor; import com.linecorp.armeria.client.RpcPreprocessor; import com.linecorp.armeria.client.retry.RetryingClient; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.xds.filter.HttpFilterFactory; import com.linecorp.armeria.xds.filter.HttpFilterFactoryRegistry; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/ListenerResourceNode.java b/xds/src/main/java/com/linecorp/armeria/xds/ListenerResourceNode.java index b505a51911d..e26f33c6659 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/ListenerResourceNode.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/ListenerResourceNode.java @@ -18,7 +18,7 @@ import static com.linecorp.armeria.xds.XdsType.LISTENER; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; import io.envoyproxy.envoy.config.core.v3.ConfigSource; import io.envoyproxy.envoy.config.route.v3.RouteConfiguration; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/ListenerSnapshot.java b/xds/src/main/java/com/linecorp/armeria/xds/ListenerSnapshot.java index 45dd7bb0162..af4964f2395 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/ListenerSnapshot.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/ListenerSnapshot.java @@ -16,11 +16,12 @@ package com.linecorp.armeria.xds; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.google.common.base.Objects; import com.linecorp.armeria.client.ClientPreprocessors; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import io.envoyproxy.envoy.config.listener.v3.Listener; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/ListenerXdsResource.java b/xds/src/main/java/com/linecorp/armeria/xds/ListenerXdsResource.java index 339dac11dd4..00df0243eb3 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/ListenerXdsResource.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/ListenerXdsResource.java @@ -20,9 +20,10 @@ import java.util.List; +import org.jspecify.annotations.Nullable; + import com.google.protobuf.Any; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import io.envoyproxy.envoy.config.listener.v3.Listener; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/ParsedFilterConfig.java b/xds/src/main/java/com/linecorp/armeria/xds/ParsedFilterConfig.java index 3b06e1cc58f..6171eda7478 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/ParsedFilterConfig.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/ParsedFilterConfig.java @@ -18,10 +18,11 @@ import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; + import com.google.protobuf.Any; import com.google.protobuf.Message; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.xds.filter.HttpFilterFactory; import com.linecorp.armeria.xds.filter.HttpFilterFactoryRegistry; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/ResourceNode.java b/xds/src/main/java/com/linecorp/armeria/xds/ResourceNode.java index 2a6c3ff6a55..c74ae738017 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/ResourceNode.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/ResourceNode.java @@ -16,7 +16,8 @@ package com.linecorp.armeria.xds; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.common.util.SafeCloseable; import io.envoyproxy.envoy.config.core.v3.ConfigSource; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/RetryStateFactory.java b/xds/src/main/java/com/linecorp/armeria/xds/RetryStateFactory.java index f18cde2f4e9..21a9b6a0a9c 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/RetryStateFactory.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/RetryStateFactory.java @@ -24,6 +24,7 @@ import java.util.concurrent.TimeUnit; import java.util.function.Function; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -49,7 +50,6 @@ import com.linecorp.armeria.common.HttpStatus; import com.linecorp.armeria.common.RequestHeaders; import com.linecorp.armeria.common.ResponseHeaders; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.logging.RequestLog; import com.linecorp.armeria.common.logging.RequestLogProperty; import com.linecorp.armeria.common.util.UnmodifiableFuture; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/RouteEntry.java b/xds/src/main/java/com/linecorp/armeria/xds/RouteEntry.java index 20a08f395c8..cf7218b0767 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/RouteEntry.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/RouteEntry.java @@ -23,6 +23,8 @@ import java.util.Objects; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.linecorp.armeria.client.ClientDecoration; @@ -30,7 +32,6 @@ import com.linecorp.armeria.client.HttpClient; import com.linecorp.armeria.client.RpcClient; import com.linecorp.armeria.client.retry.RetryingClient; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.internal.client.ClientRequestContextExtension; import com.linecorp.armeria.xds.internal.DelegatingHttpClient; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/RouteEntryMatcher.java b/xds/src/main/java/com/linecorp/armeria/xds/RouteEntryMatcher.java index 4b8d2d2d685..1008dda501b 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/RouteEntryMatcher.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/RouteEntryMatcher.java @@ -18,6 +18,8 @@ import java.util.List; +import org.jspecify.annotations.Nullable; + import com.google.common.annotations.VisibleForTesting; import com.google.common.base.Ascii; import com.google.common.base.Joiner; @@ -30,7 +32,6 @@ import com.linecorp.armeria.common.HttpMethod; import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.QueryParams; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.xds.internal.XdsCommonUtil; import io.envoyproxy.envoy.config.route.v3.HeaderMatcher; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/RouteResourceNode.java b/xds/src/main/java/com/linecorp/armeria/xds/RouteResourceNode.java index 5a00c252b80..2ee239c87a9 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/RouteResourceNode.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/RouteResourceNode.java @@ -24,9 +24,9 @@ import java.util.List; import java.util.Set; -import com.google.common.collect.ImmutableList; +import org.jspecify.annotations.Nullable; -import com.linecorp.armeria.common.annotation.Nullable; +import com.google.common.collect.ImmutableList; import io.envoyproxy.envoy.config.core.v3.ConfigSource; import io.envoyproxy.envoy.config.route.v3.RouteConfiguration; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/SotwXdsStream.java b/xds/src/main/java/com/linecorp/armeria/xds/SotwXdsStream.java index e1046310c61..32026a28c4a 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/SotwXdsStream.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/SotwXdsStream.java @@ -25,6 +25,7 @@ import java.util.Set; import java.util.concurrent.TimeUnit; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -34,7 +35,6 @@ import com.google.rpc.Code; import com.linecorp.armeria.client.retry.Backoff; -import com.linecorp.armeria.common.annotation.Nullable; import io.envoyproxy.envoy.config.core.v3.Node; import io.envoyproxy.envoy.service.discovery.v3.DiscoveryRequest; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/SubscriberStorage.java b/xds/src/main/java/com/linecorp/armeria/xds/SubscriberStorage.java index 2bc465f2e0b..e8fdb3b11f7 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/SubscriberStorage.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/SubscriberStorage.java @@ -22,9 +22,10 @@ import java.util.Map; import java.util.Set; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableMap; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.SafeCloseable; import io.netty.util.concurrent.EventExecutor; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/VirtualHostResourceNode.java b/xds/src/main/java/com/linecorp/armeria/xds/VirtualHostResourceNode.java index bd42c0293a0..735382561c4 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/VirtualHostResourceNode.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/VirtualHostResourceNode.java @@ -20,11 +20,11 @@ import java.util.Map; import java.util.Set; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableMap; import com.google.common.collect.ImmutableSet; -import com.linecorp.armeria.common.annotation.Nullable; - import io.envoyproxy.envoy.config.core.v3.ConfigSource; import io.envoyproxy.envoy.config.route.v3.Route; import io.envoyproxy.envoy.config.route.v3.RouteAction; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/XdsBootstrapBuilder.java b/xds/src/main/java/com/linecorp/armeria/xds/XdsBootstrapBuilder.java index fc7864f7412..bd861fdd5ab 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/XdsBootstrapBuilder.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/XdsBootstrapBuilder.java @@ -19,11 +19,11 @@ import static com.google.common.base.MoreObjects.firstNonNull; import static java.util.Objects.requireNonNull; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.linecorp.armeria.common.Flags; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.metric.MeterIdPrefix; import com.linecorp.armeria.common.util.EventLoopGroups; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/XdsClusterManager.java b/xds/src/main/java/com/linecorp/armeria/xds/XdsClusterManager.java index d4cc49e5375..9629f2156e8 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/XdsClusterManager.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/XdsClusterManager.java @@ -22,9 +22,10 @@ import java.util.HashMap; import java.util.Map; +import org.jspecify.annotations.Nullable; + import com.google.common.base.Strings; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.metric.MeterIdPrefix; import com.linecorp.armeria.common.util.SafeCloseable; import com.linecorp.armeria.xds.client.endpoint.UpdatableXdsLoadBalancer; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/XdsConverterUtil.java b/xds/src/main/java/com/linecorp/armeria/xds/XdsConverterUtil.java index 28d71f69792..5ba6d4e57ee 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/XdsConverterUtil.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/XdsConverterUtil.java @@ -18,7 +18,7 @@ import static com.google.common.base.Preconditions.checkArgument; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; import io.envoyproxy.envoy.config.core.v3.ApiConfigSource; import io.envoyproxy.envoy.config.core.v3.ApiConfigSource.ApiType; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/XdsResourceParserUtil.java b/xds/src/main/java/com/linecorp/armeria/xds/XdsResourceParserUtil.java index 5da380d02d0..0561fa00a1b 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/XdsResourceParserUtil.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/XdsResourceParserUtil.java @@ -20,7 +20,7 @@ import java.util.HashMap; import java.util.Map; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; final class XdsResourceParserUtil { diff --git a/xds/src/main/java/com/linecorp/armeria/xds/XdsStreamSubscriber.java b/xds/src/main/java/com/linecorp/armeria/xds/XdsStreamSubscriber.java index e347f00cb9d..e81bbe59e1c 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/XdsStreamSubscriber.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/XdsStreamSubscriber.java @@ -21,10 +21,10 @@ import java.util.Set; import java.util.concurrent.TimeUnit; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.SafeCloseable; import com.linecorp.armeria.xds.SubscriberStorage.ResourceCache; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/DefaultLbStateFactory.java b/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/DefaultLbStateFactory.java index 80e53adad40..684a9bb89b4 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/DefaultLbStateFactory.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/DefaultLbStateFactory.java @@ -20,6 +20,7 @@ import java.util.Map; import java.util.SortedSet; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -30,7 +31,6 @@ import com.google.common.math.LongMath; import com.linecorp.armeria.client.Endpoint; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.xds.client.endpoint.DefaultLoadBalancer.DistributeLoadState; import com.linecorp.armeria.xds.client.endpoint.DefaultLoadBalancer.HostAvailability; import com.linecorp.armeria.xds.client.endpoint.DefaultLoadBalancer.PriorityAndAvailability; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/DefaultLoadBalancer.java b/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/DefaultLoadBalancer.java index 3beede04848..7d51e0ae29f 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/DefaultLoadBalancer.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/DefaultLoadBalancer.java @@ -22,6 +22,8 @@ import java.util.Map; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.google.common.collect.ImmutableMap; import com.google.protobuf.Struct; @@ -29,7 +31,6 @@ import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.client.Endpoint; import com.linecorp.armeria.client.endpoint.EndpointGroup; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.xds.client.endpoint.DefaultLbStateFactory.DefaultLbState; import com.linecorp.armeria.xds.client.endpoint.LocalityRoutingStateFactory.LocalityRoutingState; import com.linecorp.armeria.xds.client.endpoint.LocalityRoutingStateFactory.State; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/DefaultXdsLoadBalancer.java b/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/DefaultXdsLoadBalancer.java index 1eb1536779a..ae331583c66 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/DefaultXdsLoadBalancer.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/DefaultXdsLoadBalancer.java @@ -23,11 +23,12 @@ import java.util.concurrent.TimeUnit; import java.util.function.Consumer; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.client.Endpoint; import com.linecorp.armeria.client.endpoint.EndpointGroup; import com.linecorp.armeria.common.TimeoutException; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.AbstractListenable; import com.linecorp.armeria.internal.client.AbstractAsyncSelector; import com.linecorp.armeria.xds.ClusterSnapshot; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/EndpointUtil.java b/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/EndpointUtil.java index c26a9d22924..29ed1057555 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/EndpointUtil.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/EndpointUtil.java @@ -18,6 +18,7 @@ import java.util.function.Function; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -27,7 +28,6 @@ import com.linecorp.armeria.client.endpoint.EndpointSelectionStrategy; import com.linecorp.armeria.client.endpoint.WeightRampingUpStrategyBuilder; import com.linecorp.armeria.common.HttpMethod; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.loadbalancer.WeightTransition; import com.linecorp.armeria.internal.client.endpoint.EndpointAttributeKeys; import com.linecorp.armeria.xds.ClusterSnapshot; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/LoadBalancer.java b/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/LoadBalancer.java index 687d10c269b..ef02c25ddbf 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/LoadBalancer.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/LoadBalancer.java @@ -16,9 +16,10 @@ package com.linecorp.armeria.xds.client.endpoint; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.client.Endpoint; -import com.linecorp.armeria.common.annotation.Nullable; interface LoadBalancer extends LoadBalancerState { diff --git a/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/LocalityRoutingStateFactory.java b/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/LocalityRoutingStateFactory.java index 9e36377822e..fd72fd72972 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/LocalityRoutingStateFactory.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/LocalityRoutingStateFactory.java @@ -22,13 +22,14 @@ import java.util.Map.Entry; import java.util.stream.Collectors; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; import com.google.protobuf.AbstractMessage; import com.linecorp.armeria.client.endpoint.EndpointGroup; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.xds.client.endpoint.XdsRandom.RandomHint; import io.envoyproxy.envoy.config.core.v3.Locality; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/PrioritySet.java b/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/PrioritySet.java index cedfe4ada52..d81c08d40d0 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/PrioritySet.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/PrioritySet.java @@ -21,11 +21,12 @@ import java.util.SortedSet; import java.util.TreeSet; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.google.common.collect.ImmutableMap; import com.linecorp.armeria.client.Endpoint; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.xds.ClusterSnapshot; import com.linecorp.armeria.xds.EndpointSnapshot; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/RouteConfig.java b/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/RouteConfig.java index 3c8177c7d0f..a8f7467447a 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/RouteConfig.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/RouteConfig.java @@ -16,10 +16,11 @@ package com.linecorp.armeria.xds.client.endpoint; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.HttpPreClient; import com.linecorp.armeria.client.PreClientRequestContext; import com.linecorp.armeria.client.RpcPreClient; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.xds.ListenerSnapshot; import com.linecorp.armeria.xds.RouteEntry; import com.linecorp.armeria.xds.RouteSnapshot; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/RouteConfigSelector.java b/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/RouteConfigSelector.java index 14405aa87f8..a6dc98b5ecd 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/RouteConfigSelector.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/RouteConfigSelector.java @@ -16,8 +16,9 @@ package com.linecorp.armeria.xds.client.endpoint; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.ClientRequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.client.AbstractAsyncSelector; import com.linecorp.armeria.xds.ListenerRoot; import com.linecorp.armeria.xds.ListenerSnapshot; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/RouterFilter.java b/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/RouterFilter.java index 3b85a309de2..225f5cabba8 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/RouterFilter.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/RouterFilter.java @@ -21,6 +21,8 @@ import java.util.concurrent.CompletableFuture; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.client.Endpoint; import com.linecorp.armeria.client.PreClient; @@ -31,7 +33,6 @@ import com.linecorp.armeria.common.Response; import com.linecorp.armeria.common.SessionProtocol; import com.linecorp.armeria.common.TimeoutException; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.xds.ClusterSnapshot; import com.linecorp.armeria.xds.RouteEntry; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/SubsetLoadBalancer.java b/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/SubsetLoadBalancer.java index 50be777d403..8ac81762224 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/SubsetLoadBalancer.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/SubsetLoadBalancer.java @@ -25,6 +25,7 @@ import java.util.Map; import java.util.Map.Entry; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -35,7 +36,6 @@ import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.client.Endpoint; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.xds.ClusterSnapshot; import io.envoyproxy.envoy.config.cluster.v3.Cluster; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/VirtualHostMatcher.java b/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/VirtualHostMatcher.java index c062ec16f3f..34e0b2e45b1 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/VirtualHostMatcher.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/VirtualHostMatcher.java @@ -25,11 +25,12 @@ import java.util.Map; import java.util.Map.Entry; +import org.jspecify.annotations.Nullable; + import com.google.common.base.Ascii; import com.google.common.collect.ImmutableList; import com.linecorp.armeria.client.PreClientRequestContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.xds.ListenerSnapshot; import com.linecorp.armeria.xds.RouteSnapshot; import com.linecorp.armeria.xds.VirtualHostSnapshot; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/XdsEndpointGroup.java b/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/XdsEndpointGroup.java index e6db955f2fd..be874d6f4a8 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/XdsEndpointGroup.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/XdsEndpointGroup.java @@ -24,6 +24,8 @@ import java.util.concurrent.locks.Lock; import java.util.function.Consumer; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.linecorp.armeria.client.ClientRequestContext; @@ -33,7 +35,6 @@ import com.linecorp.armeria.client.endpoint.EndpointSelectionStrategy; import com.linecorp.armeria.client.endpoint.EndpointSelector; import com.linecorp.armeria.common.Flags; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.common.util.AbstractListenable; import com.linecorp.armeria.common.util.UnmodifiableFuture; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/XdsLoadBalancer.java b/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/XdsLoadBalancer.java index a057e88a4ba..8e56a9935fa 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/XdsLoadBalancer.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/XdsLoadBalancer.java @@ -21,10 +21,11 @@ import java.util.concurrent.ScheduledExecutorService; import java.util.function.Consumer; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.ClientRequestContext; import com.linecorp.armeria.client.Endpoint; import com.linecorp.armeria.client.endpoint.EndpointSelector; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import com.linecorp.armeria.xds.ClusterSnapshot; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/XdsPreprocessor.java b/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/XdsPreprocessor.java index aedfef8f059..d08fd972ea8 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/XdsPreprocessor.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/XdsPreprocessor.java @@ -22,6 +22,8 @@ import java.util.function.BiFunction; import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.ClientPreprocessors; import com.linecorp.armeria.client.PreClient; import com.linecorp.armeria.client.PreClientRequestContext; @@ -30,7 +32,6 @@ import com.linecorp.armeria.common.Request; import com.linecorp.armeria.common.Response; import com.linecorp.armeria.common.TimeoutException; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.xds.ListenerRoot; import com.linecorp.armeria.xds.XdsBootstrap; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/package-info.java b/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/package-info.java index 35829bd9878..a3d1810ccbe 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/package-info.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/client/endpoint/package-info.java @@ -17,9 +17,10 @@ /** * Provides client-side {@link com.linecorp.armeria.client.Endpoint} related integrations with xDS. */ -@NonNullByDefault +@NullMarked @UnstableApi package com.linecorp.armeria.xds.client.endpoint; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/filter/HttpFilterFactoryRegistry.java b/xds/src/main/java/com/linecorp/armeria/xds/filter/HttpFilterFactoryRegistry.java index bee729470a6..b534c7ee1c3 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/filter/HttpFilterFactoryRegistry.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/filter/HttpFilterFactoryRegistry.java @@ -19,9 +19,10 @@ import java.util.Map; import java.util.ServiceLoader; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableMap; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; import io.envoyproxy.envoy.extensions.filters.network.http_connection_manager.v3.HttpFilter; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/filter/package-info.java b/xds/src/main/java/com/linecorp/armeria/xds/filter/package-info.java index 3e45a29127a..a3efda8f82c 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/filter/package-info.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/filter/package-info.java @@ -17,9 +17,10 @@ /** * Provides filter related integrations with xDS. */ -@NonNullByDefault +@NullMarked @UnstableApi package com.linecorp.armeria.xds.filter; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; + import com.linecorp.armeria.common.annotation.UnstableApi; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/internal/XdsCommonUtil.java b/xds/src/main/java/com/linecorp/armeria/xds/internal/XdsCommonUtil.java index 4ce1c2c5fe5..9cc733e7029 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/internal/XdsCommonUtil.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/internal/XdsCommonUtil.java @@ -16,13 +16,14 @@ package com.linecorp.armeria.xds.internal; +import org.jspecify.annotations.Nullable; + import com.google.common.primitives.Ints; import com.google.protobuf.Duration; import com.google.protobuf.UInt32Value; import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.MediaType; -import com.linecorp.armeria.common.annotation.Nullable; public final class XdsCommonUtil { diff --git a/xds/src/main/java/com/linecorp/armeria/xds/internal/package-info.java b/xds/src/main/java/com/linecorp/armeria/xds/internal/package-info.java index c9af6d38e4c..b3b788384ac 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/internal/package-info.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/internal/package-info.java @@ -17,7 +17,7 @@ /** * Various classes used internally. Anything in this package can be changed or removed at any time. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.xds.internal; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/xds/src/main/java/com/linecorp/armeria/xds/package-info.java b/xds/src/main/java/com/linecorp/armeria/xds/package-info.java index 2e2e8690423..a2e9558bfab 100644 --- a/xds/src/main/java/com/linecorp/armeria/xds/package-info.java +++ b/xds/src/main/java/com/linecorp/armeria/xds/package-info.java @@ -18,7 +18,7 @@ * Provides integrations with the * v3 gRPC-xDS protocol. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.xds; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/xds/src/test/java/com/linecorp/armeria/xds/XdsTestResources.java b/xds/src/test/java/com/linecorp/armeria/xds/XdsTestResources.java index 0de39ba5037..19d675e19bd 100644 --- a/xds/src/test/java/com/linecorp/armeria/xds/XdsTestResources.java +++ b/xds/src/test/java/com/linecorp/armeria/xds/XdsTestResources.java @@ -21,6 +21,8 @@ import java.util.Arrays; import java.util.Collection; +import org.jspecify.annotations.Nullable; + import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; import com.google.protobuf.Any; @@ -28,8 +30,6 @@ import com.google.protobuf.Value; import com.google.protobuf.util.Durations; -import com.linecorp.armeria.common.annotation.Nullable; - import io.envoyproxy.envoy.config.bootstrap.v3.Bootstrap; import io.envoyproxy.envoy.config.bootstrap.v3.Bootstrap.DynamicResources; import io.envoyproxy.envoy.config.bootstrap.v3.Bootstrap.StaticResources; diff --git a/xds/src/test/java/com/linecorp/armeria/xds/XdsTestUtil.java b/xds/src/test/java/com/linecorp/armeria/xds/XdsTestUtil.java index 88b34792a86..cb7607b8f90 100644 --- a/xds/src/test/java/com/linecorp/armeria/xds/XdsTestUtil.java +++ b/xds/src/test/java/com/linecorp/armeria/xds/XdsTestUtil.java @@ -21,7 +21,8 @@ import java.util.List; -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.xds.client.endpoint.XdsLoadBalancer; import io.envoyproxy.envoy.config.cluster.v3.Cluster; diff --git a/xds/src/test/java/com/linecorp/armeria/xds/client/endpoint/PriorityTest.java b/xds/src/test/java/com/linecorp/armeria/xds/client/endpoint/PriorityTest.java index caaf5119364..43e75a210ac 100644 --- a/xds/src/test/java/com/linecorp/armeria/xds/client/endpoint/PriorityTest.java +++ b/xds/src/test/java/com/linecorp/armeria/xds/client/endpoint/PriorityTest.java @@ -30,6 +30,7 @@ import java.util.concurrent.TimeUnit; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.Arguments; @@ -42,7 +43,6 @@ import com.linecorp.armeria.client.Endpoint; import com.linecorp.armeria.common.HttpMethod; import com.linecorp.armeria.common.HttpRequest; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.xds.ListenerRoot; import com.linecorp.armeria.xds.XdsBootstrap; import com.linecorp.armeria.xds.client.endpoint.XdsRandom.RandomHint; diff --git a/zookeeper3/src/main/java/com/linecorp/armeria/client/zookeeper/CuratorDiscoverySpec.java b/zookeeper3/src/main/java/com/linecorp/armeria/client/zookeeper/CuratorDiscoverySpec.java index b2dc29b31e1..cb03e667efe 100644 --- a/zookeeper3/src/main/java/com/linecorp/armeria/client/zookeeper/CuratorDiscoverySpec.java +++ b/zookeeper3/src/main/java/com/linecorp/armeria/client/zookeeper/CuratorDiscoverySpec.java @@ -18,13 +18,13 @@ import java.util.function.Function; import org.apache.curator.x.discovery.ServiceInstance; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.google.common.base.MoreObjects; import com.linecorp.armeria.client.Endpoint; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.zookeeper.CuratorXNodeValueCodec; final class CuratorDiscoverySpec implements ZooKeeperDiscoverySpec { diff --git a/zookeeper3/src/main/java/com/linecorp/armeria/client/zookeeper/CuratorDiscoverySpecBuilder.java b/zookeeper3/src/main/java/com/linecorp/armeria/client/zookeeper/CuratorDiscoverySpecBuilder.java index 356339b78da..cf56dfa6de4 100644 --- a/zookeeper3/src/main/java/com/linecorp/armeria/client/zookeeper/CuratorDiscoverySpecBuilder.java +++ b/zookeeper3/src/main/java/com/linecorp/armeria/client/zookeeper/CuratorDiscoverySpecBuilder.java @@ -22,9 +22,9 @@ import java.util.function.Function; import org.apache.curator.x.discovery.ServiceInstance; +import org.jspecify.annotations.Nullable; import com.linecorp.armeria.client.Endpoint; -import com.linecorp.armeria.common.annotation.Nullable; /** * Builds a {@link ZooKeeperDiscoverySpec} for diff --git a/zookeeper3/src/main/java/com/linecorp/armeria/client/zookeeper/LegacyZooKeeperDiscoverySpec.java b/zookeeper3/src/main/java/com/linecorp/armeria/client/zookeeper/LegacyZooKeeperDiscoverySpec.java index 9446e9bcf7e..7691429fe6b 100644 --- a/zookeeper3/src/main/java/com/linecorp/armeria/client/zookeeper/LegacyZooKeeperDiscoverySpec.java +++ b/zookeeper3/src/main/java/com/linecorp/armeria/client/zookeeper/LegacyZooKeeperDiscoverySpec.java @@ -17,8 +17,9 @@ import javax.annotation.Nonnull; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.Endpoint; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.zookeeper.LegacyNodeValueCodec; enum LegacyZooKeeperDiscoverySpec implements ZooKeeperDiscoverySpec { diff --git a/zookeeper3/src/main/java/com/linecorp/armeria/client/zookeeper/ServerSetsDiscoverySpec.java b/zookeeper3/src/main/java/com/linecorp/armeria/client/zookeeper/ServerSetsDiscoverySpec.java index 3ba695f44e1..f70df31b6a2 100644 --- a/zookeeper3/src/main/java/com/linecorp/armeria/client/zookeeper/ServerSetsDiscoverySpec.java +++ b/zookeeper3/src/main/java/com/linecorp/armeria/client/zookeeper/ServerSetsDiscoverySpec.java @@ -17,11 +17,11 @@ import java.util.function.Function; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.linecorp.armeria.client.Endpoint; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.zookeeper.ServerSetsInstance; import com.linecorp.armeria.internal.common.zookeeper.ServerSetsNodeValueCodec; diff --git a/zookeeper3/src/main/java/com/linecorp/armeria/client/zookeeper/ZooKeeperDiscoverySpec.java b/zookeeper3/src/main/java/com/linecorp/armeria/client/zookeeper/ZooKeeperDiscoverySpec.java index e4c97edd3a1..7285e4c6ac0 100644 --- a/zookeeper3/src/main/java/com/linecorp/armeria/client/zookeeper/ZooKeeperDiscoverySpec.java +++ b/zookeeper3/src/main/java/com/linecorp/armeria/client/zookeeper/ZooKeeperDiscoverySpec.java @@ -19,8 +19,9 @@ import java.util.function.Function; +import org.jspecify.annotations.Nullable; + import com.linecorp.armeria.client.Endpoint; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.zookeeper.ServerSetsInstance; import com.linecorp.armeria.server.zookeeper.ZooKeeperRegistrationSpec; diff --git a/zookeeper3/src/main/java/com/linecorp/armeria/client/zookeeper/ZooKeeperEndpointGroup.java b/zookeeper3/src/main/java/com/linecorp/armeria/client/zookeeper/ZooKeeperEndpointGroup.java index 7de3b4dad1c..a01d0d4a3e3 100644 --- a/zookeeper3/src/main/java/com/linecorp/armeria/client/zookeeper/ZooKeeperEndpointGroup.java +++ b/zookeeper3/src/main/java/com/linecorp/armeria/client/zookeeper/ZooKeeperEndpointGroup.java @@ -26,6 +26,7 @@ import org.apache.curator.framework.imps.CuratorFrameworkState; import org.apache.curator.framework.recipes.cache.PathChildrenCache; import org.apache.curator.framework.recipes.cache.PathChildrenCacheEvent; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -33,7 +34,6 @@ import com.linecorp.armeria.client.endpoint.DynamicEndpointGroup; import com.linecorp.armeria.client.endpoint.EndpointGroup; import com.linecorp.armeria.client.endpoint.EndpointSelectionStrategy; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.ThreadFactories; import com.linecorp.armeria.server.zookeeper.ZooKeeperUpdatingListener; diff --git a/zookeeper3/src/main/java/com/linecorp/armeria/client/zookeeper/package-info.java b/zookeeper3/src/main/java/com/linecorp/armeria/client/zookeeper/package-info.java index a76d592cfd1..018cc2cf32a 100644 --- a/zookeeper3/src/main/java/com/linecorp/armeria/client/zookeeper/package-info.java +++ b/zookeeper3/src/main/java/com/linecorp/armeria/client/zookeeper/package-info.java @@ -16,7 +16,7 @@ /** * ZooKeeper-based {@link com.linecorp.armeria.client.endpoint.EndpointGroup} for automatic service discovery. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.client.zookeeper; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/zookeeper3/src/main/java/com/linecorp/armeria/common/zookeeper/AbstractCuratorFrameworkBuilder.java b/zookeeper3/src/main/java/com/linecorp/armeria/common/zookeeper/AbstractCuratorFrameworkBuilder.java index 4721f5ee760..5272d7ab64e 100644 --- a/zookeeper3/src/main/java/com/linecorp/armeria/common/zookeeper/AbstractCuratorFrameworkBuilder.java +++ b/zookeeper3/src/main/java/com/linecorp/armeria/common/zookeeper/AbstractCuratorFrameworkBuilder.java @@ -28,11 +28,11 @@ import org.apache.curator.framework.CuratorFrameworkFactory.Builder; import org.apache.curator.retry.ExponentialBackoffRetry; import org.apache.zookeeper.common.PathUtils; +import org.jspecify.annotations.Nullable; import com.google.common.collect.ImmutableList; import com.google.common.primitives.Ints; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.annotation.UnstableApi; /** @@ -50,10 +50,8 @@ public class AbstractCuratorFrameworkBuilder> customizers; + private final CuratorFrameworkFactory.@Nullable Builder clientBuilder; + private final ImmutableList.@Nullable Builder> customizers; /** * Creates a new instance with the specified {@code zkConnectionStr}. diff --git a/zookeeper3/src/main/java/com/linecorp/armeria/common/zookeeper/ServerSetsInstance.java b/zookeeper3/src/main/java/com/linecorp/armeria/common/zookeeper/ServerSetsInstance.java index 2267f056fe9..aac74698745 100644 --- a/zookeeper3/src/main/java/com/linecorp/armeria/common/zookeeper/ServerSetsInstance.java +++ b/zookeeper3/src/main/java/com/linecorp/armeria/common/zookeeper/ServerSetsInstance.java @@ -34,6 +34,8 @@ import java.util.Map; +import org.jspecify.annotations.Nullable; + import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.google.common.base.MoreObjects; @@ -41,7 +43,6 @@ import com.google.common.collect.ImmutableMap; import com.linecorp.armeria.client.Endpoint; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.zookeeper.ServerSetsInstanceConverter.FinagleServiceInstanceDeserializer; import com.linecorp.armeria.common.zookeeper.ServerSetsInstanceConverter.FinagleServiceInstanceSerializer; diff --git a/zookeeper3/src/main/java/com/linecorp/armeria/common/zookeeper/package-info.java b/zookeeper3/src/main/java/com/linecorp/armeria/common/zookeeper/package-info.java index 20bdcba01c2..175cd37a5d5 100644 --- a/zookeeper3/src/main/java/com/linecorp/armeria/common/zookeeper/package-info.java +++ b/zookeeper3/src/main/java/com/linecorp/armeria/common/zookeeper/package-info.java @@ -16,7 +16,7 @@ /** * ZooKeeper-related common classes. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.common.zookeeper; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/zookeeper3/src/main/java/com/linecorp/armeria/internal/common/zookeeper/package-info.java b/zookeeper3/src/main/java/com/linecorp/armeria/internal/common/zookeeper/package-info.java index a481210d726..7bc8800e633 100644 --- a/zookeeper3/src/main/java/com/linecorp/armeria/internal/common/zookeeper/package-info.java +++ b/zookeeper3/src/main/java/com/linecorp/armeria/internal/common/zookeeper/package-info.java @@ -16,7 +16,7 @@ /** * ZooKeeper-related internal common classes. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.internal.common.zookeeper; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/zookeeper3/src/main/java/com/linecorp/armeria/server/zookeeper/CuratorRegistrationSpecBuilder.java b/zookeeper3/src/main/java/com/linecorp/armeria/server/zookeeper/CuratorRegistrationSpecBuilder.java index b47cc716ed2..e1fc039d44f 100644 --- a/zookeeper3/src/main/java/com/linecorp/armeria/server/zookeeper/CuratorRegistrationSpecBuilder.java +++ b/zookeeper3/src/main/java/com/linecorp/armeria/server/zookeeper/CuratorRegistrationSpecBuilder.java @@ -24,8 +24,7 @@ import org.apache.curator.x.discovery.ServiceInstance; import org.apache.curator.x.discovery.ServiceType; import org.apache.curator.x.discovery.UriSpec; - -import com.linecorp.armeria.common.annotation.Nullable; +import org.jspecify.annotations.Nullable; /** * Builds a {@link ZooKeeperRegistrationSpec} for diff --git a/zookeeper3/src/main/java/com/linecorp/armeria/server/zookeeper/LegacyZooKeeperRegistrationSpec.java b/zookeeper3/src/main/java/com/linecorp/armeria/server/zookeeper/LegacyZooKeeperRegistrationSpec.java index b8ea8857ca3..149302bbf2c 100644 --- a/zookeeper3/src/main/java/com/linecorp/armeria/server/zookeeper/LegacyZooKeeperRegistrationSpec.java +++ b/zookeeper3/src/main/java/com/linecorp/armeria/server/zookeeper/LegacyZooKeeperRegistrationSpec.java @@ -17,10 +17,11 @@ import static com.linecorp.armeria.internal.common.zookeeper.ZooKeeperPathUtil.validatePath; +import org.jspecify.annotations.Nullable; + import com.google.common.base.MoreObjects; import com.linecorp.armeria.client.Endpoint; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.internal.common.zookeeper.LegacyNodeValueCodec; final class LegacyZooKeeperRegistrationSpec implements ZooKeeperRegistrationSpec { diff --git a/zookeeper3/src/main/java/com/linecorp/armeria/server/zookeeper/ServerSetsRegistrationSpecBuilder.java b/zookeeper3/src/main/java/com/linecorp/armeria/server/zookeeper/ServerSetsRegistrationSpecBuilder.java index f2a9dc36e4e..54ce8662938 100644 --- a/zookeeper3/src/main/java/com/linecorp/armeria/server/zookeeper/ServerSetsRegistrationSpecBuilder.java +++ b/zookeeper3/src/main/java/com/linecorp/armeria/server/zookeeper/ServerSetsRegistrationSpecBuilder.java @@ -21,11 +21,11 @@ import java.util.Map; import org.apache.zookeeper.CreateMode; +import org.jspecify.annotations.Nullable; import com.google.common.collect.ImmutableMap; import com.linecorp.armeria.client.Endpoint; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.zookeeper.ServerSetsInstance; /** diff --git a/zookeeper3/src/main/java/com/linecorp/armeria/server/zookeeper/ZooKeeperUpdatingListener.java b/zookeeper3/src/main/java/com/linecorp/armeria/server/zookeeper/ZooKeeperUpdatingListener.java index 68be2e5fef2..f59e0532ef1 100644 --- a/zookeeper3/src/main/java/com/linecorp/armeria/server/zookeeper/ZooKeeperUpdatingListener.java +++ b/zookeeper3/src/main/java/com/linecorp/armeria/server/zookeeper/ZooKeeperUpdatingListener.java @@ -23,13 +23,13 @@ import org.apache.curator.framework.imps.CuratorFrameworkState; import org.apache.curator.x.discovery.ServiceInstance; import org.apache.zookeeper.CreateMode; +import org.jspecify.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.linecorp.armeria.client.Endpoint; import com.linecorp.armeria.client.zookeeper.ZooKeeperEndpointGroup; import com.linecorp.armeria.common.SessionProtocol; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.SystemInfo; import com.linecorp.armeria.common.zookeeper.ServerSetsInstance; import com.linecorp.armeria.server.Server; diff --git a/zookeeper3/src/main/java/com/linecorp/armeria/server/zookeeper/package-info.java b/zookeeper3/src/main/java/com/linecorp/armeria/server/zookeeper/package-info.java index d92b51a1351..1f77cfa475f 100644 --- a/zookeeper3/src/main/java/com/linecorp/armeria/server/zookeeper/package-info.java +++ b/zookeeper3/src/main/java/com/linecorp/armeria/server/zookeeper/package-info.java @@ -16,7 +16,7 @@ /** * ZooKeeper-based automatic service registration. */ -@NonNullByDefault +@NullMarked package com.linecorp.armeria.server.zookeeper; -import com.linecorp.armeria.common.annotation.NonNullByDefault; +import org.jspecify.annotations.NullMarked; diff --git a/zookeeper3/src/test/java/com/linecorp/armeria/common/zookeeper/ZooKeeperExtension.java b/zookeeper3/src/test/java/com/linecorp/armeria/common/zookeeper/ZooKeeperExtension.java index a0535ceb371..557c1616447 100644 --- a/zookeeper3/src/test/java/com/linecorp/armeria/common/zookeeper/ZooKeeperExtension.java +++ b/zookeeper3/src/test/java/com/linecorp/armeria/common/zookeeper/ZooKeeperExtension.java @@ -19,9 +19,9 @@ import java.time.Duration; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.extension.ExtensionContext; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.util.Exceptions; import com.linecorp.armeria.internal.testing.TemporaryFolder; import com.linecorp.armeria.testing.junit5.common.AbstractAllOrEachExtension; diff --git a/zookeeper3/src/test/java/com/linecorp/armeria/server/zookeeper/ZooKeeperRegistrationTest.java b/zookeeper3/src/test/java/com/linecorp/armeria/server/zookeeper/ZooKeeperRegistrationTest.java index 0ced3f131b4..08939987f91 100644 --- a/zookeeper3/src/test/java/com/linecorp/armeria/server/zookeeper/ZooKeeperRegistrationTest.java +++ b/zookeeper3/src/test/java/com/linecorp/armeria/server/zookeeper/ZooKeeperRegistrationTest.java @@ -28,13 +28,13 @@ import org.apache.curator.x.discovery.ServiceInstance; import org.apache.curator.x.discovery.ServiceType; import org.apache.curator.x.discovery.UriSpec; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.RegisterExtension; import com.linecorp.armeria.client.Endpoint; import com.linecorp.armeria.client.zookeeper.ZooKeeperDiscoverySpec; import com.linecorp.armeria.common.HttpResponse; -import com.linecorp.armeria.common.annotation.Nullable; import com.linecorp.armeria.common.zookeeper.ZooKeeperExtension; import com.linecorp.armeria.common.zookeeper.ZooKeeperTestUtil; import com.linecorp.armeria.internal.testing.FlakyTest;