From d28313bca8ff63751a194abf16cafe8a4a3e81de Mon Sep 17 00:00:00 2001 From: Daniel Chao Date: Fri, 3 May 2024 09:58:01 -0700 Subject: [PATCH] Declare members of http package NonnullByDefault (#471) * Add a package-info.java with NonnullByDefault annotation * Make RequestCapturingClient return a response to satisfy the type checker --- .../java/org/pkl/core/http/package-info.java | 4 +++ .../pkl/core/http/RequestCapturingClient.kt | 28 +++++++++++++++++-- 2 files changed, 30 insertions(+), 2 deletions(-) create mode 100644 pkl-core/src/main/java/org/pkl/core/http/package-info.java diff --git a/pkl-core/src/main/java/org/pkl/core/http/package-info.java b/pkl-core/src/main/java/org/pkl/core/http/package-info.java new file mode 100644 index 00000000..fb60dfb1 --- /dev/null +++ b/pkl-core/src/main/java/org/pkl/core/http/package-info.java @@ -0,0 +1,4 @@ +@NonnullByDefault +package org.pkl.core.http; + +import org.pkl.core.util.NonnullByDefault; diff --git a/pkl-core/src/test/kotlin/org/pkl/core/http/RequestCapturingClient.kt b/pkl-core/src/test/kotlin/org/pkl/core/http/RequestCapturingClient.kt index 79db699b..165e2aba 100644 --- a/pkl-core/src/test/kotlin/org/pkl/core/http/RequestCapturingClient.kt +++ b/pkl-core/src/test/kotlin/org/pkl/core/http/RequestCapturingClient.kt @@ -1,17 +1,41 @@ package org.pkl.core.http +import java.net.URI +import java.net.http.HttpHeaders import java.net.http.HttpRequest import java.net.http.HttpResponse +import java.util.* +import javax.net.ssl.SSLSession class RequestCapturingClient : HttpClient { lateinit var request: HttpRequest + private fun dummyResponse(request: HttpRequest) : HttpResponse { + return object : HttpResponse { + override fun statusCode(): Int = throw NotImplementedError() + + override fun request(): HttpRequest = request + + override fun previousResponse(): Optional> = throw NotImplementedError() + + override fun headers(): HttpHeaders = throw NotImplementedError() + + override fun body(): T = throw NotImplementedError() + + override fun sslSession(): Optional = throw NotImplementedError() + + override fun uri(): URI = throw NotImplementedError() + + override fun version(): java.net.http.HttpClient.Version = throw NotImplementedError() + } + } + override fun send( request: HttpRequest, responseBodyHandler: HttpResponse.BodyHandler - ): HttpResponse? { + ): HttpResponse { this.request = request - return null + return dummyResponse(request) } override fun close() {}