From c1d50e371fdee18382ac813e0ec4ce23e186c14c Mon Sep 17 00:00:00 2001 From: Jesse Wilson Date: Sat, 11 Jan 2020 22:24:12 -0500 Subject: [PATCH] Upgrade Okio and some build dependencies The new ktlint sorts imports which makes this diff large. The new japicmp ignores 'final' modifier changes in final classes. We adopt the Google style for checkstyle.xml. Okio readByteString() now uses segments more aggressively, so we need to mitigate that to avoid tracking those segments in a test. --- build.gradle | 61 +-- checkstyle.xml | 430 ++++++++++++------ mockwebserver/build.gradle | 82 +--- .../okhttp3/mockwebserver/MockResponse.kt | 2 +- .../okhttp3/mockwebserver/MockWebServer.kt | 54 +-- .../okhttp3/mockwebserver/RecordedRequest.kt | 8 +- .../internal/duplex/DuplexResponseBody.kt | 2 +- .../internal/duplex/MockDuplexResponseBody.kt | 10 +- okcurl/src/main/java/okhttp3/curl/Main.kt | 28 +- .../okhttp3/brotli/BrotliInterceptorTest.kt | 2 +- .../java/okhttp3/brotli/BrotliTestMain.kt | 2 +- .../java/okhttp3/dnsoverhttps/BootstrapDns.kt | 2 +- .../java/okhttp3/dnsoverhttps/DnsOverHttps.kt | 10 +- .../okhttp3/dnsoverhttps/DnsRecordCodec.kt | 6 +- okhttp-logging-interceptor/build.gradle | 6 - .../okhttp3/logging/HttpLoggingInterceptor.kt | 10 +- .../okhttp3/logging/LoggingEventListener.kt | 10 +- .../src/main/java/okhttp3/logging/utf8.kt | 2 +- .../okhttp3/internal/sse/RealEventSource.kt | 2 +- .../internal/sse/ServerSentEventReader.kt | 2 +- .../main/java/okhttp3/OkHttpClientTestRule.kt | 6 +- .../main/java/okhttp3/OkHttpDebugLogging.kt | 4 +- .../java/okhttp3/RecordingEventListener.kt | 14 +- .../main/java/okhttp3/testing/PlatformRule.kt | 8 +- .../java/okhttp3/testing/PlatformVersion.kt | 2 +- .../okhttp3/testing/PlatformRuleTest.kt | 2 +- okhttp-tls/build.gradle | 30 -- .../java/okhttp3/tls/HandshakeCertificates.kt | 8 +- .../main/java/okhttp3/tls/HeldCertificate.kt | 26 +- .../main/java/okhttp3/tls/internal/TlsUtil.kt | 4 +- .../src/main/java/okhttp3/JavaNetCookieJar.kt | 8 +- okhttp/build.gradle | 310 +------------ okhttp/src/main/java/okhttp3/Address.kt | 2 +- okhttp/src/main/java/okhttp3/Cache.kt | 20 +- okhttp/src/main/java/okhttp3/CacheControl.kt | 2 +- okhttp/src/main/java/okhttp3/Call.kt | 2 +- .../main/java/okhttp3/CertificatePinner.kt | 6 +- okhttp/src/main/java/okhttp3/Challenge.kt | 2 +- .../src/main/java/okhttp3/ConnectionPool.kt | 2 +- .../src/main/java/okhttp3/ConnectionSpec.kt | 6 +- okhttp/src/main/java/okhttp3/Cookie.kt | 12 +- okhttp/src/main/java/okhttp3/Credentials.kt | 2 +- okhttp/src/main/java/okhttp3/Dispatcher.kt | 6 +- okhttp/src/main/java/okhttp3/Dns.kt | 2 +- okhttp/src/main/java/okhttp3/FormBody.kt | 4 +- okhttp/src/main/java/okhttp3/Handshake.kt | 4 +- okhttp/src/main/java/okhttp3/Headers.kt | 10 +- okhttp/src/main/java/okhttp3/HttpUrl.kt | 20 +- okhttp/src/main/java/okhttp3/MultipartBody.kt | 4 +- okhttp/src/main/java/okhttp3/OkHttpClient.kt | 28 +- okhttp/src/main/java/okhttp3/RealCall.kt | 10 +- okhttp/src/main/java/okhttp3/Request.kt | 2 +- okhttp/src/main/java/okhttp3/RequestBody.kt | 8 +- okhttp/src/main/java/okhttp3/Response.kt | 12 +- okhttp/src/main/java/okhttp3/ResponseBody.kt | 12 +- okhttp/src/main/java/okhttp3/internal/Util.kt | 32 +- .../internal/cache/CacheInterceptor.kt | 8 +- .../okhttp3/internal/cache/CacheStrategy.kt | 10 +- .../okhttp3/internal/cache/DiskLruCache.kt | 18 +- .../okhttp3/internal/cache/FaultHidingSink.kt | 2 +- .../okhttp3/internal/cache2/FileOperator.kt | 2 +- .../java/okhttp3/internal/cache2/Relay.kt | 6 +- .../okhttp3/internal/concurrent/TaskQueue.kt | 2 +- .../okhttp3/internal/concurrent/TaskRunner.kt | 10 +- .../internal/connection/ConnectInterceptor.kt | 2 +- .../connection/ConnectionSpecSelector.kt | 2 +- .../okhttp3/internal/connection/Exchange.kt | 6 +- .../internal/connection/ExchangeFinder.kt | 4 +- .../internal/connection/RealConnection.kt | 30 +- .../internal/connection/RealConnectionPool.kt | 8 +- .../internal/connection/RouteSelector.kt | 12 +- .../internal/connection/Transmitter.kt | 16 +- .../main/java/okhttp3/internal/hostnames.kt | 2 +- .../internal/http/BridgeInterceptor.kt | 3 +- .../internal/http/CallServerInterceptor.kt | 4 +- .../java/okhttp3/internal/http/HttpHeaders.kt | 8 +- .../internal/http/RealInterceptorChain.kt | 4 +- .../java/okhttp3/internal/http/RequestLine.kt | 4 +- .../http/RetryAndFollowUpInterceptor.kt | 24 +- .../java/okhttp3/internal/http/StatusLine.kt | 6 +- .../main/java/okhttp3/internal/http/dates.kt | 2 +- .../internal/http1/Http1ExchangeCodec.kt | 8 +- .../main/java/okhttp3/internal/http2/Hpack.kt | 8 +- .../okhttp3/internal/http2/Http2Connection.kt | 10 +- .../internal/http2/Http2ExchangeCodec.kt | 10 +- .../okhttp3/internal/http2/Http2Reader.kt | 12 +- .../okhttp3/internal/http2/Http2Stream.kt | 10 +- .../okhttp3/internal/http2/Http2Writer.kt | 8 +- .../java/okhttp3/internal/http2/Huffman.kt | 2 +- .../main/java/okhttp3/internal/internal.kt | 2 +- .../java/okhttp3/internal/io/FileSystem.kt | 10 +- .../internal/platform/Android10Platform.kt | 6 +- .../internal/platform/AndroidPlatform.kt | 20 +- .../internal/platform/ConscryptPlatform.kt | 6 +- .../platform/Jdk8WithJettyBootPlatform.kt | 2 +- .../okhttp3/internal/platform/Jdk9Platform.kt | 2 +- .../internal/platform/OpenJSSEPlatform.kt | 2 +- .../okhttp3/internal/platform/Platform.kt | 16 +- .../Android10CertificateChainCleaner.kt | 4 +- .../android/Android10SocketAdapter.kt | 6 +- .../android/AndroidCertificateChainCleaner.kt | 4 +- .../platform/android/AndroidSocketAdapter.kt | 6 +- .../android/ConscryptSocketAdapter.kt | 6 +- .../platform/android/DeferredSocketAdapter.kt | 4 +- .../platform/android/SocketAdapter.kt | 2 +- .../android/StandardAndroidSocketAdapter.kt | 4 +- .../okhttp3/internal/platform/android/util.kt | 2 +- .../publicsuffix/PublicSuffixDatabase.kt | 10 +- .../internal/tls/CertificateChainCleaner.kt | 2 +- .../internal/tls/OkHostnameVerifier.kt | 2 +- .../java/okhttp3/internal/ws/RealWebSocket.kt | 16 +- .../okhttp3/internal/ws/WebSocketReader.kt | 6 +- .../okhttp3/internal/ws/WebSocketWriter.kt | 4 +- .../src/test/java/okhttp3/BouncyCastleTest.kt | 2 +- .../src/test/java/okhttp3/CallKotlinTest.kt | 6 +- okhttp/src/test/java/okhttp3/HandshakeTest.kt | 4 +- .../test/java/okhttp3/HeadersKotlinTest.kt | 4 +- .../okhttp3/KotlinDeprecationErrorTest.kt | 26 +- .../java/okhttp3/KotlinSourceModernTest.kt | 64 +-- okhttp/src/test/java/okhttp3/OpenJSSETest.kt | 2 +- .../test/java/okhttp3/RecordingExecutor.kt | 2 +- .../test/java/okhttp3/internal/UtilTest.kt | 2 +- .../okhttp3/internal/concurrent/TaskFaker.kt | 2 +- .../concurrent/TaskRunnerRealBackendTest.kt | 8 +- .../internal/concurrent/TaskRunnerTest.kt | 2 +- .../okhttp3/internal/http/HttpDateTest.kt | 4 +- .../internal/http2/HttpOverHttp2Test.java | 3 +- .../android/AndroidSocketAdapterTest.kt | 6 +- .../internal/ws/WebSocketWriterTest.java | 10 +- .../java/okhttp3/recipes/kt/AccessHeaders.kt | 2 +- .../okhttp3/recipes/kt/AsynchronousGet.kt | 2 +- .../java/okhttp3/recipes/kt/Authenticate.kt | 2 +- .../java/okhttp3/recipes/kt/CacheResponse.kt | 4 +- .../java/okhttp3/recipes/kt/CancelCall.kt | 4 +- .../okhttp3/recipes/kt/CertificatePinning.kt | 2 +- .../okhttp3/recipes/kt/ConfigureTimeouts.kt | 2 +- .../java/okhttp3/recipes/kt/CustomTrust.kt | 8 +- .../recipes/kt/ParseResponseWithMoshi.kt | 2 +- .../okhttp3/recipes/kt/PerCallSettings.kt | 4 +- .../main/java/okhttp3/recipes/kt/PostFile.kt | 4 +- .../main/java/okhttp3/recipes/kt/PostForm.kt | 2 +- .../java/okhttp3/recipes/kt/PostMultipart.kt | 4 +- .../java/okhttp3/recipes/kt/PostStreaming.kt | 2 +- .../java/okhttp3/recipes/kt/PostString.kt | 2 +- .../java/okhttp3/recipes/kt/SynchronousGet.kt | 2 +- .../src/test/kotlin/okhttp3/AllMainsTest.kt | 4 +- 146 files changed, 874 insertions(+), 1095 deletions(-) diff --git a/build.gradle b/build.gradle index 4daf1a38e..a345ae831 100644 --- a/build.gradle +++ b/build.gradle @@ -2,24 +2,24 @@ import net.ltgt.gradle.errorprone.CheckSeverity buildscript { ext.versions = [ - 'animalSniffer': '1.17', - 'assertj': '3.11.0', + 'animalSniffer': '1.18', + 'assertj': '3.14.0', 'bouncycastle': '1.64', 'brotli': '0.1.2', - 'checkstyle': '8.15', + 'checkstyle': '8.28', 'conscrypt': '2.2.1', - 'corretto': '1.1.1', + 'corretto': '1.2.0', 'findbugs': '3.0.2', - 'guava': '27.0.1-jre', + 'guava': '28.2-jre', 'java': '1.8', - 'jnrUnixsocket': '0.22', - 'jsoup': '1.11.3', - 'junit': '4.12', + 'jnrUnixsocket': '0.25', + 'jsoup': '1.12.1', + 'junit': '4.13', 'kotlin': '1.3.61', 'moshi': '1.9.2', - 'okio': '2.4.1', - 'ktlint': '0.31.0', - 'picocli': '4.0.1', + 'okio': '2.4.3', + 'ktlint': '0.36.0', + 'picocli': '4.1.4', 'openjsse': '1.1.0' ] @@ -50,8 +50,8 @@ buildscript { classpath 'com.vanniktech:gradle-maven-publish-plugin:0.8.0' classpath 'net.ltgt.gradle:gradle-errorprone-plugin:1.1.1' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:${versions.kotlin}" - classpath "org.jetbrains.dokka:dokka-gradle-plugin:0.9.18" - classpath 'com.diffplug.spotless:spotless-plugin-gradle:3.26.1' + classpath "org.jetbrains.dokka:dokka-gradle-plugin:0.10.0" + classpath 'com.diffplug.spotless:spotless-plugin-gradle:3.27.0' classpath 'com.android.tools.build:gradle:3.4.2' } @@ -64,8 +64,8 @@ buildscript { plugins { id 'ru.vyarus.animalsniffer' version '1.5.0' - id 'com.github.johnrengelman.shadow' version '4.0.1' - id 'me.champeau.gradle.japicmp' version '0.2.6' + id 'com.github.johnrengelman.shadow' version '5.2.0' + id 'me.champeau.gradle.japicmp' version '0.2.9' } allprojects { @@ -176,7 +176,7 @@ subprojects { project -> dependencies { errorproneJavac 'com.google.errorprone:javac:9+181-r4173-1' - errorprone 'com.google.errorprone:error_prone_core:2.3.3' + errorprone 'com.google.errorprone:error_prone_core:2.3.4' } tasks.withType(JavaCompile).configureEach { sourceCompatibility = JavaVersion.VERSION_1_8 @@ -193,19 +193,21 @@ subprojects { project -> // plugin overwrites our dokka configuration on projects where it's applied. afterEvaluate { p -> p.tasks.dokka { - reportUndocumented = false - skipDeprecated = true - jdkVersion = 8 - packageOptions { - prefix = "okhttp3.internal" - suppress = true - } - if (project.file('Module.md').exists()) { - includes = ['Module.md'] - } - externalDocumentationLink { - url = new URL("https://square.github.io/okio/2.x/okio/") - packageListUrl = new URL("https://square.github.io/okio/2.x/okio/package-list") + configuration { + reportUndocumented = false + skipDeprecated = true + jdkVersion = 8 + perPackageOption { + prefix = "okhttp3.internal" + suppress = true + } + if (project.file('Module.md').exists()) { + includes = ['Module.md'] + } + externalDocumentationLink { + url = new URL("https://square.github.io/okio/2.x/okio/") + packageListUrl = new URL("https://square.github.io/okio/2.x/okio/package-list") + } } } } @@ -234,6 +236,7 @@ def alpnBootVersion() { } def alpnBootVersionForPatchVersion(String javaVersion, int patchVersion) { + // https://www.eclipse.org/jetty/documentation/current/alpn-chapter.html#alpn-versions switch (patchVersion) { case 0..24: return '8.1.0.v20141016' diff --git a/checkstyle.xml b/checkstyle.xml index f66aad53f..63f511e17 100644 --- a/checkstyle.xml +++ b/checkstyle.xml @@ -1,145 +1,321 @@ + "-//Checkstyle//DTD Checkstyle Configuration 1.3//EN" + "https://checkstyle.org/dtds/configuration_1_3.dtd"> - - - - - + - - - + Checkstyle is very configurable. Be sure to read the documentation at + http://checkstyle.org (or in your downloaded distribution). + + To completely disable a check, just comment it out or delete it from the file. + To suppress certain violations please review suppression filters. + + Authors: Max Vetrenko, Ruslan Diachenko, Roman Ivanov. + --> + + + + + + + + + + + + + + + + - - - - + + + + - - - - + + + + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + - - - - - + + + - - - - - - - - - - - - - - - - - - - - - - - - + + + value="LITERAL_TRY, LITERAL_FINALLY, LITERAL_IF, LITERAL_ELSE, LITERAL_SWITCH"/> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + diff --git a/mockwebserver/build.gradle b/mockwebserver/build.gradle index d48d2ed55..fe1c7c753 100644 --- a/mockwebserver/build.gradle +++ b/mockwebserver/build.gradle @@ -33,87 +33,7 @@ task japicmp(type: me.champeau.gradle.japicmp.JapicmpTask, dependsOn: 'jar') { includeSynthetic = true packageExcludes = [ 'okhttp3.mockwebserver.internal', - ] - methodExcludes = [ - // Became 'final' in 4.0.0: - 'okhttp3.mockwebserver.RecordedRequest#getChunkSizes()', - 'okhttp3.mockwebserver.RecordedRequest#getHandshake()', - 'okhttp3.mockwebserver.RecordedRequest#getHeader(java.lang.String)', - 'okhttp3.mockwebserver.RecordedRequest#getHeaders()', - 'okhttp3.mockwebserver.RecordedRequest#getMethod()', - 'okhttp3.mockwebserver.RecordedRequest#getPath()', - 'okhttp3.mockwebserver.RecordedRequest#getRequestLine()', - 'okhttp3.mockwebserver.RecordedRequest#getRequestUrl()', - 'okhttp3.mockwebserver.RecordedRequest#getSequenceNumber()', - 'okhttp3.mockwebserver.RecordedRequest#getTlsVersion()', - 'okhttp3.mockwebserver.RecordedRequest#getUtf8Body()', - 'okhttp3.mockwebserver.RecordedRequest#getBody()', - 'okhttp3.mockwebserver.RecordedRequest#getBodySize()', - 'okhttp3.mockwebserver.PushPromise#headers()', - 'okhttp3.mockwebserver.PushPromise#method()', - 'okhttp3.mockwebserver.PushPromise#path()', - 'okhttp3.mockwebserver.PushPromise#response()', - 'okhttp3.mockwebserver.MockResponse#addHeader(java.lang.String)', - 'okhttp3.mockwebserver.MockResponse#addHeader(java.lang.String, java.lang.Object)', - 'okhttp3.mockwebserver.MockResponse#addHeaderLenient(java.lang.String, java.lang.Object)', - 'okhttp3.mockwebserver.MockResponse#clearHeaders()', - 'okhttp3.mockwebserver.MockResponse#getBody()', - 'okhttp3.mockwebserver.MockResponse#getBodyDelay(java.util.concurrent.TimeUnit)', - 'okhttp3.mockwebserver.MockResponse#getDuplexResponseBody()', - 'okhttp3.mockwebserver.MockResponse#getHeadersDelay(java.util.concurrent.TimeUnit)', - 'okhttp3.mockwebserver.MockResponse#getHttp2ErrorCode()', - 'okhttp3.mockwebserver.MockResponse#getPushPromises()', - 'okhttp3.mockwebserver.MockResponse#getSettings()', - 'okhttp3.mockwebserver.MockResponse#getSocketPolicy()', - 'okhttp3.mockwebserver.MockResponse#getStatus()', - 'okhttp3.mockwebserver.MockResponse#getThrottleBytesPerPeriod()', - 'okhttp3.mockwebserver.MockResponse#getThrottlePeriod(java.util.concurrent.TimeUnit)', - 'okhttp3.mockwebserver.MockResponse#getTrailers()', - 'okhttp3.mockwebserver.MockResponse#getWebSocketListener()', - 'okhttp3.mockwebserver.MockResponse#removeHeader(java.lang.String)', - 'okhttp3.mockwebserver.MockResponse#setBody(okio.Buffer)', - 'okhttp3.mockwebserver.MockResponse#setBody(java.lang.String)', - 'okhttp3.mockwebserver.MockResponse#setBodyDelay(long, java.util.concurrent.TimeUnit)', - 'okhttp3.mockwebserver.MockResponse#setChunkedBody(okio.Buffer, int)', - 'okhttp3.mockwebserver.MockResponse#setChunkedBody(java.lang.String, int)', - 'okhttp3.mockwebserver.MockResponse#setHeader(java.lang.String, java.lang.Object)', - 'okhttp3.mockwebserver.MockResponse#setHeaders(okhttp3.Headers)', - 'okhttp3.mockwebserver.MockResponse#setHeadersDelay(long, java.util.concurrent.TimeUnit)', - 'okhttp3.mockwebserver.MockResponse#setHttp2ErrorCode(int)', - 'okhttp3.mockwebserver.MockResponse#setResponseCode(int)', - 'okhttp3.mockwebserver.MockResponse#setSocketPolicy(okhttp3.mockwebserver.SocketPolicy)', - 'okhttp3.mockwebserver.MockResponse#setTrailers(okhttp3.Headers)', - 'okhttp3.mockwebserver.MockResponse#throttleBody(long, long, java.util.concurrent.TimeUnit)', - 'okhttp3.mockwebserver.MockResponse#withPush(okhttp3.mockwebserver.PushPromise)', - 'okhttp3.mockwebserver.MockResponse#withSettings(okhttp3.internal.http2.Settings)', - 'okhttp3.mockwebserver.MockResponse#withWebSocketUpgrade(okhttp3.WebSocketListener)', - 'okhttp3.mockwebserver.MockResponse#getHeaders()', - 'okhttp3.mockwebserver.MockResponse#setStatus(java.lang.String)', - 'okhttp3.mockwebserver.MockResponse#isDuplex()', - 'okhttp3.mockwebserver.MockResponse#setBody(okhttp3.mockwebserver.internal.duplex.DuplexResponseBody)', - 'okhttp3.mockwebserver.MockWebServer#enqueue(okhttp3.mockwebserver.MockResponse)', - 'okhttp3.mockwebserver.MockWebServer#getDispatcher()', - 'okhttp3.mockwebserver.MockWebServer#getHostName()', - 'okhttp3.mockwebserver.MockWebServer#getPort()', - 'okhttp3.mockwebserver.MockWebServer#getRequestCount()', - 'okhttp3.mockwebserver.MockWebServer#noClientAuth()', - 'okhttp3.mockwebserver.MockWebServer#protocols()', - 'okhttp3.mockwebserver.MockWebServer#requestClientAuth()', - 'okhttp3.mockwebserver.MockWebServer#requireClientAuth()', - 'okhttp3.mockwebserver.MockWebServer#setBodyLimit(long)', - 'okhttp3.mockwebserver.MockWebServer#setDispatcher(okhttp3.mockwebserver.Dispatcher)', - 'okhttp3.mockwebserver.MockWebServer#setProtocolNegotiationEnabled(boolean)', - 'okhttp3.mockwebserver.MockWebServer#setProtocols(java.util.List)', - 'okhttp3.mockwebserver.MockWebServer#setServerSocketFactory(javax.net.ServerSocketFactory)', - 'okhttp3.mockwebserver.MockWebServer#shutdown()', - 'okhttp3.mockwebserver.MockWebServer#start()', - 'okhttp3.mockwebserver.MockWebServer#start(int)', - 'okhttp3.mockwebserver.MockWebServer#start(java.net.InetAddress, int)', - 'okhttp3.mockwebserver.MockWebServer#takeRequest()', - 'okhttp3.mockwebserver.MockWebServer#takeRequest(long, java.util.concurrent.TimeUnit)', - 'okhttp3.mockwebserver.MockWebServer#toProxyAddress()', - 'okhttp3.mockwebserver.MockWebServer#url(java.lang.String)', - 'okhttp3.mockwebserver.MockWebServer#useHttps(javax.net.ssl.SSLSocketFactory, boolean)', + 'okhttp3.mockwebserver.internal.duplex', ] } check.dependsOn(japicmp) diff --git a/mockwebserver/src/main/java/okhttp3/mockwebserver/MockResponse.kt b/mockwebserver/src/main/java/okhttp3/mockwebserver/MockResponse.kt index 599d48a8e..1c2b4f58a 100644 --- a/mockwebserver/src/main/java/okhttp3/mockwebserver/MockResponse.kt +++ b/mockwebserver/src/main/java/okhttp3/mockwebserver/MockResponse.kt @@ -15,13 +15,13 @@ */ package okhttp3.mockwebserver +import java.util.concurrent.TimeUnit import okhttp3.Headers import okhttp3.WebSocketListener import okhttp3.internal.addHeaderLenient import okhttp3.internal.http2.Settings import okhttp3.mockwebserver.internal.duplex.DuplexResponseBody import okio.Buffer -import java.util.concurrent.TimeUnit /** A scripted response to be replayed by the mock web server. */ class MockResponse : Cloneable { diff --git a/mockwebserver/src/main/java/okhttp3/mockwebserver/MockWebServer.kt b/mockwebserver/src/main/java/okhttp3/mockwebserver/MockWebServer.kt index 8601150f6..f3a6b982e 100644 --- a/mockwebserver/src/main/java/okhttp3/mockwebserver/MockWebServer.kt +++ b/mockwebserver/src/main/java/okhttp3/mockwebserver/MockWebServer.kt @@ -17,6 +17,33 @@ package okhttp3.mockwebserver +import java.io.Closeable +import java.io.IOException +import java.net.InetAddress +import java.net.InetSocketAddress +import java.net.ProtocolException +import java.net.Proxy +import java.net.ServerSocket +import java.net.Socket +import java.net.SocketException +import java.security.SecureRandom +import java.security.cert.CertificateException +import java.security.cert.X509Certificate +import java.util.Collections +import java.util.Locale +import java.util.concurrent.ConcurrentHashMap +import java.util.concurrent.CountDownLatch +import java.util.concurrent.LinkedBlockingQueue +import java.util.concurrent.TimeUnit +import java.util.concurrent.atomic.AtomicInteger +import java.util.logging.Level +import java.util.logging.Logger +import javax.net.ServerSocketFactory +import javax.net.ssl.SSLContext +import javax.net.ssl.SSLSocket +import javax.net.ssl.SSLSocketFactory +import javax.net.ssl.TrustManager +import javax.net.ssl.X509TrustManager import okhttp3.Headers import okhttp3.Headers.Companion.headersOf import okhttp3.HttpUrl @@ -64,33 +91,6 @@ import okio.buffer import okio.sink import okio.source import org.junit.rules.ExternalResource -import java.io.Closeable -import java.io.IOException -import java.net.InetAddress -import java.net.InetSocketAddress -import java.net.ProtocolException -import java.net.Proxy -import java.net.ServerSocket -import java.net.Socket -import java.net.SocketException -import java.security.SecureRandom -import java.security.cert.CertificateException -import java.security.cert.X509Certificate -import java.util.Collections -import java.util.Locale -import java.util.concurrent.ConcurrentHashMap -import java.util.concurrent.CountDownLatch -import java.util.concurrent.LinkedBlockingQueue -import java.util.concurrent.TimeUnit -import java.util.concurrent.atomic.AtomicInteger -import java.util.logging.Level -import java.util.logging.Logger -import javax.net.ServerSocketFactory -import javax.net.ssl.SSLContext -import javax.net.ssl.SSLSocket -import javax.net.ssl.SSLSocketFactory -import javax.net.ssl.TrustManager -import javax.net.ssl.X509TrustManager /** * A scriptable web server. Callers supply canned responses and the server replays them upon request diff --git a/mockwebserver/src/main/java/okhttp3/mockwebserver/RecordedRequest.kt b/mockwebserver/src/main/java/okhttp3/mockwebserver/RecordedRequest.kt index 1db64aa94..bfb5c944d 100644 --- a/mockwebserver/src/main/java/okhttp3/mockwebserver/RecordedRequest.kt +++ b/mockwebserver/src/main/java/okhttp3/mockwebserver/RecordedRequest.kt @@ -16,6 +16,10 @@ package okhttp3.mockwebserver +import java.io.IOException +import java.net.Inet6Address +import java.net.Socket +import javax.net.ssl.SSLSocket import okhttp3.Handshake import okhttp3.Handshake.Companion.handshake import okhttp3.Headers @@ -23,10 +27,6 @@ import okhttp3.HttpUrl import okhttp3.HttpUrl.Companion.toHttpUrlOrNull import okhttp3.TlsVersion import okio.Buffer -import java.io.IOException -import java.net.Inet6Address -import java.net.Socket -import javax.net.ssl.SSLSocket /** An HTTP request that came into the mock web server. */ class RecordedRequest @JvmOverloads constructor( diff --git a/mockwebserver/src/main/java/okhttp3/mockwebserver/internal/duplex/DuplexResponseBody.kt b/mockwebserver/src/main/java/okhttp3/mockwebserver/internal/duplex/DuplexResponseBody.kt index e0ee478b9..b84f8e5ef 100644 --- a/mockwebserver/src/main/java/okhttp3/mockwebserver/internal/duplex/DuplexResponseBody.kt +++ b/mockwebserver/src/main/java/okhttp3/mockwebserver/internal/duplex/DuplexResponseBody.kt @@ -15,9 +15,9 @@ */ package okhttp3.mockwebserver.internal.duplex +import java.io.IOException import okhttp3.internal.http2.Http2Stream import okhttp3.mockwebserver.RecordedRequest -import java.io.IOException interface DuplexResponseBody { @Throws(IOException::class) diff --git a/mockwebserver/src/main/java/okhttp3/mockwebserver/internal/duplex/MockDuplexResponseBody.kt b/mockwebserver/src/main/java/okhttp3/mockwebserver/internal/duplex/MockDuplexResponseBody.kt index fa7dcde75..0d9f9bb13 100644 --- a/mockwebserver/src/main/java/okhttp3/mockwebserver/internal/duplex/MockDuplexResponseBody.kt +++ b/mockwebserver/src/main/java/okhttp3/mockwebserver/internal/duplex/MockDuplexResponseBody.kt @@ -15,6 +15,11 @@ */ package okhttp3.mockwebserver.internal.duplex +import java.io.IOException +import java.util.concurrent.CountDownLatch +import java.util.concurrent.FutureTask +import java.util.concurrent.LinkedBlockingQueue +import java.util.concurrent.TimeUnit import okhttp3.internal.http2.ErrorCode import okhttp3.internal.http2.Http2Stream import okhttp3.mockwebserver.RecordedRequest @@ -25,11 +30,6 @@ import okio.utf8Size import org.junit.Assert.assertEquals import org.junit.Assert.assertTrue import org.junit.Assert.fail -import java.io.IOException -import java.util.concurrent.CountDownLatch -import java.util.concurrent.FutureTask -import java.util.concurrent.LinkedBlockingQueue -import java.util.concurrent.TimeUnit private typealias Action = (RecordedRequest, BufferedSource, BufferedSink, Http2Stream) -> Unit diff --git a/okcurl/src/main/java/okhttp3/curl/Main.kt b/okcurl/src/main/java/okhttp3/curl/Main.kt index 9a8f323d5..afc4edbd4 100644 --- a/okcurl/src/main/java/okhttp3/curl/Main.kt +++ b/okcurl/src/main/java/okhttp3/curl/Main.kt @@ -15,6 +15,20 @@ */ package okhttp3.curl +import java.io.IOException +import java.security.cert.X509Certificate +import java.util.Properties +import java.util.concurrent.TimeUnit.SECONDS +import java.util.logging.ConsoleHandler +import java.util.logging.Level +import java.util.logging.LogRecord +import java.util.logging.Logger +import java.util.logging.SimpleFormatter +import javax.net.ssl.HostnameVerifier +import javax.net.ssl.SSLSocketFactory +import javax.net.ssl.TrustManager +import javax.net.ssl.X509TrustManager +import kotlin.system.exitProcess import okhttp3.MediaType import okhttp3.MediaType.Companion.toMediaTypeOrNull import okhttp3.OkHttpClient @@ -34,20 +48,6 @@ import picocli.CommandLine.Command import picocli.CommandLine.IVersionProvider import picocli.CommandLine.Option import picocli.CommandLine.Parameters -import java.io.IOException -import java.security.cert.X509Certificate -import java.util.Properties -import java.util.concurrent.TimeUnit.SECONDS -import java.util.logging.ConsoleHandler -import java.util.logging.Level -import java.util.logging.LogRecord -import java.util.logging.Logger -import java.util.logging.SimpleFormatter -import javax.net.ssl.HostnameVerifier -import javax.net.ssl.SSLSocketFactory -import javax.net.ssl.TrustManager -import javax.net.ssl.X509TrustManager -import kotlin.system.exitProcess @Command(name = NAME, description = ["A curl for the next-generation web."], mixinStandardHelpOptions = true, versionProvider = Main.VersionProvider::class) diff --git a/okhttp-brotli/src/test/java/okhttp3/brotli/BrotliInterceptorTest.kt b/okhttp-brotli/src/test/java/okhttp3/brotli/BrotliInterceptorTest.kt index c4e16e6b9..9d1a32265 100644 --- a/okhttp-brotli/src/test/java/okhttp3/brotli/BrotliInterceptorTest.kt +++ b/okhttp-brotli/src/test/java/okhttp3/brotli/BrotliInterceptorTest.kt @@ -15,6 +15,7 @@ */ package okhttp3.brotli +import java.io.IOException import okhttp3.MediaType.Companion.toMediaType import okhttp3.Protocol import okhttp3.Request @@ -26,7 +27,6 @@ import okio.ByteString.Companion.encodeUtf8 import org.assertj.core.api.Assertions.assertThat import org.junit.Assert.fail import org.junit.Test -import java.io.IOException class BrotliInterceptorTest { @Test diff --git a/okhttp-brotli/src/test/java/okhttp3/brotli/BrotliTestMain.kt b/okhttp-brotli/src/test/java/okhttp3/brotli/BrotliTestMain.kt index bfae423ee..cba9497ae 100644 --- a/okhttp-brotli/src/test/java/okhttp3/brotli/BrotliTestMain.kt +++ b/okhttp-brotli/src/test/java/okhttp3/brotli/BrotliTestMain.kt @@ -33,4 +33,4 @@ private fun sendRequest(url: String, client: OkHttpClient) { client.newCall(req).execute().use { println(it.body?.string()) } -} \ No newline at end of file +} diff --git a/okhttp-dnsoverhttps/src/main/java/okhttp3/dnsoverhttps/BootstrapDns.kt b/okhttp-dnsoverhttps/src/main/java/okhttp3/dnsoverhttps/BootstrapDns.kt index 552348783..ff403f2c2 100644 --- a/okhttp-dnsoverhttps/src/main/java/okhttp3/dnsoverhttps/BootstrapDns.kt +++ b/okhttp-dnsoverhttps/src/main/java/okhttp3/dnsoverhttps/BootstrapDns.kt @@ -15,9 +15,9 @@ */ package okhttp3.dnsoverhttps -import okhttp3.Dns import java.net.InetAddress import java.net.UnknownHostException +import okhttp3.Dns /** * Internal Bootstrap DNS implementation for handling initial connection to DNS over HTTPS server. diff --git a/okhttp-dnsoverhttps/src/main/java/okhttp3/dnsoverhttps/DnsOverHttps.kt b/okhttp-dnsoverhttps/src/main/java/okhttp3/dnsoverhttps/DnsOverHttps.kt index e8a35ed0c..0aabaf5a9 100644 --- a/okhttp-dnsoverhttps/src/main/java/okhttp3/dnsoverhttps/DnsOverHttps.kt +++ b/okhttp-dnsoverhttps/src/main/java/okhttp3/dnsoverhttps/DnsOverHttps.kt @@ -15,6 +15,11 @@ */ package okhttp3.dnsoverhttps +import java.io.IOException +import java.net.InetAddress +import java.net.UnknownHostException +import java.util.ArrayList +import java.util.concurrent.CountDownLatch import okhttp3.CacheControl import okhttp3.Call import okhttp3.Callback @@ -29,11 +34,6 @@ import okhttp3.RequestBody.Companion.toRequestBody import okhttp3.Response import okhttp3.internal.platform.Platform import okhttp3.internal.publicsuffix.PublicSuffixDatabase -import java.io.IOException -import java.net.InetAddress -import java.net.UnknownHostException -import java.util.ArrayList -import java.util.concurrent.CountDownLatch /** * [DNS over HTTPS implementation][doh_spec]. diff --git a/okhttp-dnsoverhttps/src/main/java/okhttp3/dnsoverhttps/DnsRecordCodec.kt b/okhttp-dnsoverhttps/src/main/java/okhttp3/dnsoverhttps/DnsRecordCodec.kt index ebf0d4a59..62c679219 100644 --- a/okhttp-dnsoverhttps/src/main/java/okhttp3/dnsoverhttps/DnsRecordCodec.kt +++ b/okhttp-dnsoverhttps/src/main/java/okhttp3/dnsoverhttps/DnsRecordCodec.kt @@ -15,13 +15,13 @@ package okhttp3.dnsoverhttps -import okio.Buffer -import okio.ByteString -import okio.utf8Size import java.io.EOFException import java.net.InetAddress import java.net.UnknownHostException import java.nio.charset.StandardCharsets +import okio.Buffer +import okio.ByteString +import okio.utf8Size /** * Trivial Dns Encoder/Decoder, basically ripped from Netty full implementation. diff --git a/okhttp-logging-interceptor/build.gradle b/okhttp-logging-interceptor/build.gradle index b9d541055..eaa5abc89 100644 --- a/okhttp-logging-interceptor/build.gradle +++ b/okhttp-logging-interceptor/build.gradle @@ -34,11 +34,5 @@ task japicmp(type: me.champeau.gradle.japicmp.JapicmpTask, dependsOn: 'jar') { txtOutputFile = file("$buildDir/reports/japi.txt") ignoreMissingClasses = true includeSynthetic = true - methodExcludes = [ - // Became 'final' in 4.0.0: - 'okhttp3.logging.HttpLoggingInterceptor#redactHeader(java.lang.String)', - 'okhttp3.logging.HttpLoggingInterceptor#getLevel()', - 'okhttp3.logging.HttpLoggingInterceptor#setLevel(okhttp3.logging.HttpLoggingInterceptor$Level)' - ] } check.dependsOn(japicmp) diff --git a/okhttp-logging-interceptor/src/main/java/okhttp3/logging/HttpLoggingInterceptor.kt b/okhttp-logging-interceptor/src/main/java/okhttp3/logging/HttpLoggingInterceptor.kt index 743b01def..c1a681448 100644 --- a/okhttp-logging-interceptor/src/main/java/okhttp3/logging/HttpLoggingInterceptor.kt +++ b/okhttp-logging-interceptor/src/main/java/okhttp3/logging/HttpLoggingInterceptor.kt @@ -15,6 +15,11 @@ */ package okhttp3.logging +import java.io.IOException +import java.nio.charset.Charset +import java.nio.charset.StandardCharsets.UTF_8 +import java.util.TreeSet +import java.util.concurrent.TimeUnit import okhttp3.Headers import okhttp3.Interceptor import okhttp3.OkHttpClient @@ -23,11 +28,6 @@ import okhttp3.internal.http.promisesBody import okhttp3.internal.platform.Platform import okio.Buffer import okio.GzipSource -import java.io.IOException -import java.nio.charset.Charset -import java.nio.charset.StandardCharsets.UTF_8 -import java.util.TreeSet -import java.util.concurrent.TimeUnit /** * An OkHttp interceptor which logs request and response information. Can be applied as an diff --git a/okhttp-logging-interceptor/src/main/java/okhttp3/logging/LoggingEventListener.kt b/okhttp-logging-interceptor/src/main/java/okhttp3/logging/LoggingEventListener.kt index 35024ed21..de613b393 100644 --- a/okhttp-logging-interceptor/src/main/java/okhttp3/logging/LoggingEventListener.kt +++ b/okhttp-logging-interceptor/src/main/java/okhttp3/logging/LoggingEventListener.kt @@ -15,6 +15,11 @@ */ package okhttp3.logging +import java.io.IOException +import java.net.InetAddress +import java.net.InetSocketAddress +import java.net.Proxy +import java.util.concurrent.TimeUnit import okhttp3.Call import okhttp3.Connection import okhttp3.EventListener @@ -24,11 +29,6 @@ import okhttp3.OkHttpClient import okhttp3.Protocol import okhttp3.Request import okhttp3.Response -import java.io.IOException -import java.net.InetAddress -import java.net.InetSocketAddress -import java.net.Proxy -import java.util.concurrent.TimeUnit /** * An OkHttp EventListener, which logs call events. Can be applied as an diff --git a/okhttp-logging-interceptor/src/main/java/okhttp3/logging/utf8.kt b/okhttp-logging-interceptor/src/main/java/okhttp3/logging/utf8.kt index d8ebe52e1..c4f8916cb 100644 --- a/okhttp-logging-interceptor/src/main/java/okhttp3/logging/utf8.kt +++ b/okhttp-logging-interceptor/src/main/java/okhttp3/logging/utf8.kt @@ -15,8 +15,8 @@ */ package okhttp3.logging -import okio.Buffer import java.io.EOFException +import okio.Buffer /** * Returns true if the body in question probably contains human readable text. Uses a small diff --git a/okhttp-sse/src/main/java/okhttp3/internal/sse/RealEventSource.kt b/okhttp-sse/src/main/java/okhttp3/internal/sse/RealEventSource.kt index 1d72013c2..87cebc5af 100644 --- a/okhttp-sse/src/main/java/okhttp3/internal/sse/RealEventSource.kt +++ b/okhttp-sse/src/main/java/okhttp3/internal/sse/RealEventSource.kt @@ -15,6 +15,7 @@ */ package okhttp3.internal.sse +import java.io.IOException import okhttp3.Call import okhttp3.Callback import okhttp3.EventListener @@ -26,7 +27,6 @@ import okhttp3.internal.EMPTY_RESPONSE import okhttp3.internal.connection.Exchange import okhttp3.sse.EventSource import okhttp3.sse.EventSourceListener -import java.io.IOException class RealEventSource( private val request: Request, diff --git a/okhttp-sse/src/main/java/okhttp3/internal/sse/ServerSentEventReader.kt b/okhttp-sse/src/main/java/okhttp3/internal/sse/ServerSentEventReader.kt index ca2ee2e1e..9f6f343bf 100644 --- a/okhttp-sse/src/main/java/okhttp3/internal/sse/ServerSentEventReader.kt +++ b/okhttp-sse/src/main/java/okhttp3/internal/sse/ServerSentEventReader.kt @@ -15,12 +15,12 @@ */ package okhttp3.internal.sse +import java.io.IOException import okhttp3.internal.toLongOrDefault import okio.Buffer import okio.BufferedSource import okio.ByteString.Companion.encodeUtf8 import okio.Options -import java.io.IOException class ServerSentEventReader( private val source: BufferedSource, diff --git a/okhttp-testing-support/src/main/java/okhttp3/OkHttpClientTestRule.kt b/okhttp-testing-support/src/main/java/okhttp3/OkHttpClientTestRule.kt index 769cc5b2f..4a9dd8b76 100644 --- a/okhttp-testing-support/src/main/java/okhttp3/OkHttpClientTestRule.kt +++ b/okhttp-testing-support/src/main/java/okhttp3/OkHttpClientTestRule.kt @@ -15,15 +15,15 @@ */ package okhttp3 +import java.net.InetAddress +import java.util.concurrent.TimeUnit +import java.util.logging.Logger import okhttp3.internal.concurrent.TaskRunner import okhttp3.testing.Flaky import org.assertj.core.api.Assertions.assertThat import org.junit.rules.TestRule import org.junit.runner.Description import org.junit.runners.model.Statement -import java.net.InetAddress -import java.util.concurrent.TimeUnit -import java.util.logging.Logger /** * Apply this rule to all tests. It adds additional checks for leaked resources and uncaught diff --git a/okhttp-testing-support/src/main/java/okhttp3/OkHttpDebugLogging.kt b/okhttp-testing-support/src/main/java/okhttp3/OkHttpDebugLogging.kt index 1a7eaa274..82134f2f2 100644 --- a/okhttp-testing-support/src/main/java/okhttp3/OkHttpDebugLogging.kt +++ b/okhttp-testing-support/src/main/java/okhttp3/OkHttpDebugLogging.kt @@ -15,8 +15,6 @@ */ package okhttp3 -import okhttp3.internal.concurrent.TaskRunner -import okhttp3.internal.http2.Http2 import java.util.concurrent.CopyOnWriteArraySet import java.util.logging.ConsoleHandler import java.util.logging.Level @@ -24,6 +22,8 @@ import java.util.logging.LogRecord import java.util.logging.Logger import java.util.logging.SimpleFormatter import kotlin.reflect.KClass +import okhttp3.internal.concurrent.TaskRunner +import okhttp3.internal.http2.Http2 object OkHttpDebugLogging { // Keep references to loggers to prevent their configuration from being GC'd. diff --git a/okhttp-testing-support/src/main/java/okhttp3/RecordingEventListener.kt b/okhttp-testing-support/src/main/java/okhttp3/RecordingEventListener.kt index 35fad75f2..a6ce7e44e 100644 --- a/okhttp-testing-support/src/main/java/okhttp3/RecordingEventListener.kt +++ b/okhttp-testing-support/src/main/java/okhttp3/RecordingEventListener.kt @@ -15,6 +15,13 @@ */ package okhttp3 +import java.io.IOException +import java.net.InetAddress +import java.net.InetSocketAddress +import java.net.Proxy +import java.util.Deque +import java.util.concurrent.ConcurrentLinkedDeque +import java.util.concurrent.TimeUnit import okhttp3.CallEvent.CallEnd import okhttp3.CallEvent.CallFailed import okhttp3.CallEvent.CallStart @@ -42,13 +49,6 @@ import okhttp3.CallEvent.SecureConnectStart import org.assertj.core.api.Assertions.assertThat import org.assertj.core.data.Offset import org.junit.Assert.assertTrue -import java.io.IOException -import java.net.InetAddress -import java.net.InetSocketAddress -import java.net.Proxy -import java.util.Deque -import java.util.concurrent.ConcurrentLinkedDeque -import java.util.concurrent.TimeUnit open class RecordingEventListener : EventListener() { val eventSequence: Deque = ConcurrentLinkedDeque() diff --git a/okhttp-testing-support/src/main/java/okhttp3/testing/PlatformRule.kt b/okhttp-testing-support/src/main/java/okhttp3/testing/PlatformRule.kt index 2a5ee2939..d3d8ca042 100644 --- a/okhttp-testing-support/src/main/java/okhttp3/testing/PlatformRule.kt +++ b/okhttp-testing-support/src/main/java/okhttp3/testing/PlatformRule.kt @@ -15,12 +15,13 @@ */ package okhttp3.testing +import com.amazon.corretto.crypto.provider.AmazonCorrettoCryptoProvider +import com.amazon.corretto.crypto.provider.SelfTestStatus +import java.security.Security import okhttp3.internal.platform.ConscryptPlatform import okhttp3.internal.platform.Jdk8WithJettyBootPlatform import okhttp3.internal.platform.Jdk9Platform import okhttp3.internal.platform.OpenJSSEPlatform -import com.amazon.corretto.crypto.provider.AmazonCorrettoCryptoProvider -import com.amazon.corretto.crypto.provider.SelfTestStatus import okhttp3.internal.platform.Platform import org.bouncycastle.jce.provider.BouncyCastleProvider import org.bouncycastle.jsse.provider.BouncyCastleJsseProvider @@ -40,7 +41,6 @@ import org.junit.AssumptionViolatedException import org.junit.rules.TestRule import org.junit.runners.model.Statement import org.openjsse.net.ssl.OpenJSSE -import java.security.Security /** * Marks a test as Platform aware, before the test runs a consistent Platform will be @@ -380,4 +380,4 @@ open class PlatformRule @JvmOverloads constructor( val isCorrettoInstalled: Boolean = isCorrettoSupported && Security.getProviders().first().name == AmazonCorrettoCryptoProvider.PROVIDER_NAME } -} \ No newline at end of file +} diff --git a/okhttp-testing-support/src/main/java/okhttp3/testing/PlatformVersion.kt b/okhttp-testing-support/src/main/java/okhttp3/testing/PlatformVersion.kt index 17870a7ba..943961378 100644 --- a/okhttp-testing-support/src/main/java/okhttp3/testing/PlatformVersion.kt +++ b/okhttp-testing-support/src/main/java/okhttp3/testing/PlatformVersion.kt @@ -26,4 +26,4 @@ object PlatformVersion { fun getJvmSpecVersion(): String { return System.getProperty("java.specification.version", "unknown") } -} \ No newline at end of file +} diff --git a/okhttp-testing-support/src/test/kotlin/okhttp3/testing/PlatformRuleTest.kt b/okhttp-testing-support/src/test/kotlin/okhttp3/testing/PlatformRuleTest.kt index 5fe531cd0..67e634fb8 100644 --- a/okhttp-testing-support/src/test/kotlin/okhttp3/testing/PlatformRuleTest.kt +++ b/okhttp-testing-support/src/test/kotlin/okhttp3/testing/PlatformRuleTest.kt @@ -47,4 +47,4 @@ class PlatformRuleTest { check(false) } -} \ No newline at end of file +} diff --git a/okhttp-tls/build.gradle b/okhttp-tls/build.gradle index 011d8c0ab..28e6d14e9 100644 --- a/okhttp-tls/build.gradle +++ b/okhttp-tls/build.gradle @@ -36,35 +36,5 @@ task japicmp(type: me.champeau.gradle.japicmp.JapicmpTask, dependsOn: 'jar') { packageExcludes = [ 'okhttp3.tls.internal', ] - methodExcludes = [ - // Became 'final' in 4.0.0: - 'okhttp3.tls.HandshakeCertificates#keyManager()', - 'okhttp3.tls.HandshakeCertificates#sslContext()', - 'okhttp3.tls.HandshakeCertificates#sslSocketFactory()', - 'okhttp3.tls.HandshakeCertificates#trustManager()', - 'okhttp3.tls.HandshakeCertificates$Builder#addPlatformTrustedCertificates()', - 'okhttp3.tls.HandshakeCertificates$Builder#addTrustedCertificate(java.security.cert.X509Certificate)', - 'okhttp3.tls.HandshakeCertificates$Builder#build()', - 'okhttp3.tls.HandshakeCertificates$Builder#heldCertificate(okhttp3.tls.HeldCertificate, java.security.cert.X509Certificate\\[\\])', - 'okhttp3.tls.HeldCertificate#certificate()', - 'okhttp3.tls.HeldCertificate#certificatePem()', - 'okhttp3.tls.HeldCertificate#keyPair()', - 'okhttp3.tls.HeldCertificate#privateKeyPkcs1Pem()', - 'okhttp3.tls.HeldCertificate#privateKeyPkcs8Pem()', - 'okhttp3.tls.HeldCertificate$Builder#addSubjectAlternativeName(java.lang.String)', - 'okhttp3.tls.HeldCertificate$Builder#build()', - 'okhttp3.tls.HeldCertificate$Builder#certificateAuthority(int)', - 'okhttp3.tls.HeldCertificate$Builder#commonName(java.lang.String)', - 'okhttp3.tls.HeldCertificate$Builder#duration(long, java.util.concurrent.TimeUnit)', - 'okhttp3.tls.HeldCertificate$Builder#ecdsa256()', - 'okhttp3.tls.HeldCertificate$Builder#keyPair(java.security.KeyPair)', - 'okhttp3.tls.HeldCertificate$Builder#keyPair(java.security.PublicKey, java.security.PrivateKey)', - 'okhttp3.tls.HeldCertificate$Builder#organizationalUnit(java.lang.String)', - 'okhttp3.tls.HeldCertificate$Builder#rsa2048()', - 'okhttp3.tls.HeldCertificate$Builder#serialNumber(java.math.BigInteger)', - 'okhttp3.tls.HeldCertificate$Builder#serialNumber(long)', - 'okhttp3.tls.HeldCertificate$Builder#signedBy(okhttp3.tls.HeldCertificate)', - 'okhttp3.tls.HeldCertificate$Builder#validityInterval(long, long)', - ] } check.dependsOn(japicmp) diff --git a/okhttp-tls/src/main/java/okhttp3/tls/HandshakeCertificates.kt b/okhttp-tls/src/main/java/okhttp3/tls/HandshakeCertificates.kt index a9859a241..9ca08dff2 100644 --- a/okhttp-tls/src/main/java/okhttp3/tls/HandshakeCertificates.kt +++ b/okhttp-tls/src/main/java/okhttp3/tls/HandshakeCertificates.kt @@ -15,10 +15,6 @@ */ package okhttp3.tls -import okhttp3.CertificatePinner -import okhttp3.internal.platform.Platform -import okhttp3.tls.internal.TlsUtil.newKeyManager -import okhttp3.tls.internal.TlsUtil.newTrustManager import java.security.SecureRandom import java.security.cert.X509Certificate import java.util.Collections @@ -28,6 +24,10 @@ import javax.net.ssl.SSLSocketFactory import javax.net.ssl.TrustManager import javax.net.ssl.X509KeyManager import javax.net.ssl.X509TrustManager +import okhttp3.CertificatePinner +import okhttp3.internal.platform.Platform +import okhttp3.tls.internal.TlsUtil.newKeyManager +import okhttp3.tls.internal.TlsUtil.newTrustManager /** * Certificates to identify which peers to trust and also to earn the trust of those peers in kind. diff --git a/okhttp-tls/src/main/java/okhttp3/tls/HeldCertificate.kt b/okhttp-tls/src/main/java/okhttp3/tls/HeldCertificate.kt index e82a9fde1..b460722ce 100644 --- a/okhttp-tls/src/main/java/okhttp3/tls/HeldCertificate.kt +++ b/okhttp-tls/src/main/java/okhttp3/tls/HeldCertificate.kt @@ -15,19 +15,6 @@ */ package okhttp3.tls -import okhttp3.internal.canParseAsIpAddress -import okio.Buffer -import okio.ByteString -import okio.ByteString.Companion.decodeBase64 -import okio.ByteString.Companion.toByteString -import org.bouncycastle.asn1.ASN1Encodable -import org.bouncycastle.asn1.DERSequence -import org.bouncycastle.asn1.pkcs.PrivateKeyInfo -import org.bouncycastle.asn1.x509.BasicConstraints -import org.bouncycastle.asn1.x509.GeneralName -import org.bouncycastle.asn1.x509.X509Extensions -import org.bouncycastle.jce.provider.BouncyCastleProvider -import org.bouncycastle.x509.X509V3CertificateGenerator import java.math.BigInteger import java.security.GeneralSecurityException import java.security.KeyFactory @@ -47,6 +34,19 @@ import java.util.Date import java.util.UUID import java.util.concurrent.TimeUnit import javax.security.auth.x500.X500Principal +import okhttp3.internal.canParseAsIpAddress +import okio.Buffer +import okio.ByteString +import okio.ByteString.Companion.decodeBase64 +import okio.ByteString.Companion.toByteString +import org.bouncycastle.asn1.ASN1Encodable +import org.bouncycastle.asn1.DERSequence +import org.bouncycastle.asn1.pkcs.PrivateKeyInfo +import org.bouncycastle.asn1.x509.BasicConstraints +import org.bouncycastle.asn1.x509.GeneralName +import org.bouncycastle.asn1.x509.X509Extensions +import org.bouncycastle.jce.provider.BouncyCastleProvider +import org.bouncycastle.x509.X509V3CertificateGenerator /** * A certificate and its private key. These are some properties of certificates that are used with diff --git a/okhttp-tls/src/main/java/okhttp3/tls/internal/TlsUtil.kt b/okhttp-tls/src/main/java/okhttp3/tls/internal/TlsUtil.kt index c5bb9d8e0..21ff4646e 100644 --- a/okhttp-tls/src/main/java/okhttp3/tls/internal/TlsUtil.kt +++ b/okhttp-tls/src/main/java/okhttp3/tls/internal/TlsUtil.kt @@ -15,8 +15,6 @@ */ package okhttp3.tls.internal -import okhttp3.tls.HandshakeCertificates -import okhttp3.tls.HeldCertificate import java.io.InputStream import java.net.InetAddress import java.security.KeyStore @@ -26,6 +24,8 @@ import javax.net.ssl.KeyManagerFactory import javax.net.ssl.TrustManagerFactory import javax.net.ssl.X509KeyManager import javax.net.ssl.X509TrustManager +import okhttp3.tls.HandshakeCertificates +import okhttp3.tls.HeldCertificate object TlsUtil { val password = "password".toCharArray() diff --git a/okhttp-urlconnection/src/main/java/okhttp3/JavaNetCookieJar.kt b/okhttp-urlconnection/src/main/java/okhttp3/JavaNetCookieJar.kt index ea8b2fb1b..1ca4a2750 100644 --- a/okhttp-urlconnection/src/main/java/okhttp3/JavaNetCookieJar.kt +++ b/okhttp-urlconnection/src/main/java/okhttp3/JavaNetCookieJar.kt @@ -15,15 +15,15 @@ */ package okhttp3 +import java.io.IOException +import java.net.CookieHandler +import java.net.HttpCookie +import java.util.Collections import okhttp3.internal.cookieToString import okhttp3.internal.delimiterOffset import okhttp3.internal.platform.Platform import okhttp3.internal.platform.Platform.Companion.WARN import okhttp3.internal.trimSubstring -import java.io.IOException -import java.net.CookieHandler -import java.net.HttpCookie -import java.util.Collections /** A cookie jar that delegates to a [java.net.CookieHandler]. */ class JavaNetCookieJar(private val cookieHandler: CookieHandler) : CookieJar { diff --git a/okhttp/build.gradle b/okhttp/build.gradle index e434e7628..9c4c2830d 100644 --- a/okhttp/build.gradle +++ b/okhttp/build.gradle @@ -64,6 +64,18 @@ task japicmp(type: me.champeau.gradle.japicmp.JapicmpTask, dependsOn: 'jar') { includeSynthetic = true packageExcludes = [ 'okhttp3.internal', + 'okhttp3.internal.annotations', + 'okhttp3.internal.cache', + 'okhttp3.internal.cache2', + 'okhttp3.internal.connection', + 'okhttp3.internal.http', + 'okhttp3.internal.http2', + 'okhttp3.internal.io', + 'okhttp3.internal.platform', + 'okhttp3.internal.proxy', + 'okhttp3.internal.publicsuffix', + 'okhttp3.internal.tls', + 'okhttp3.internal.ws', ] classExcludes = [ // Package-private in 3.x, internal in 4.0.0: @@ -71,303 +83,7 @@ task japicmp(type: me.champeau.gradle.japicmp.JapicmpTask, dependsOn: 'jar') { 'okhttp3.RealCall$AsyncCall', ] methodExcludes = [ - // Became 'final' in 4.0.0: - 'okhttp3.Address#certificatePinner()', - 'okhttp3.Address#connectionSpecs()', - 'okhttp3.Address#dns()', - 'okhttp3.Address#hostnameVerifier()', - 'okhttp3.Address#protocols()', - 'okhttp3.Address#proxy()', - 'okhttp3.Address#proxyAuthenticator()', - 'okhttp3.Address#proxySelector()', - 'okhttp3.Address#socketFactory()', - 'okhttp3.Address#sslSocketFactory()', - 'okhttp3.Address#url()', - 'okhttp3.Cache#delete()', - 'okhttp3.Cache#directory()', - 'okhttp3.Cache#evictAll()', - 'okhttp3.Cache#hitCount()', - 'okhttp3.Cache#initialize()', - 'okhttp3.Cache#isClosed()', - 'okhttp3.Cache#maxSize()', - 'okhttp3.Cache#networkCount()', - 'okhttp3.Cache#requestCount()', - 'okhttp3.Cache#size()', - 'okhttp3.Cache#urls()', - 'okhttp3.Cache#writeAbortCount()', - 'okhttp3.Cache#writeSuccessCount()', - 'okhttp3.CacheControl#immutable()', - 'okhttp3.CacheControl#isPrivate()', - 'okhttp3.CacheControl#isPublic()', - 'okhttp3.CacheControl#maxAgeSeconds()', - 'okhttp3.CacheControl#maxStaleSeconds()', - 'okhttp3.CacheControl#minFreshSeconds()', - 'okhttp3.CacheControl#mustRevalidate()', - 'okhttp3.CacheControl#noCache()', - 'okhttp3.CacheControl#noStore()', - 'okhttp3.CacheControl#noTransform()', - 'okhttp3.CacheControl#onlyIfCached()', - 'okhttp3.CacheControl#sMaxAgeSeconds()', - 'okhttp3.CacheControl$Builder#build()', - 'okhttp3.CacheControl$Builder#immutable()', - 'okhttp3.CacheControl$Builder#maxAge(int, java.util.concurrent.TimeUnit)', - 'okhttp3.CacheControl$Builder#maxStale(int, java.util.concurrent.TimeUnit)', - 'okhttp3.CacheControl$Builder#minFresh(int, java.util.concurrent.TimeUnit)', - 'okhttp3.CacheControl$Builder#noCache()', - 'okhttp3.CacheControl$Builder#noStore()', - 'okhttp3.CacheControl$Builder#noTransform()', - 'okhttp3.CacheControl$Builder#onlyIfCached()', - 'okhttp3.CertificatePinner#check(java.lang.String, java.security.cert.Certificate\\[\\])', - 'okhttp3.CertificatePinner#check(java.lang.String, java.util.List)', - 'okhttp3.CertificatePinner$Builder#add(java.lang.String, java.lang.String\\[\\])', - 'okhttp3.CertificatePinner$Builder#build()', - 'okhttp3.CertificatePinner$Pin#matches(java.lang.String)', - 'okhttp3.Challenge#authParams()', - 'okhttp3.Challenge#charset()', - 'okhttp3.Challenge#realm()', - 'okhttp3.Challenge#scheme()', - 'okhttp3.Challenge#withCharset(java.nio.charset.Charset)', - 'okhttp3.CipherSuite#javaName()', - 'okhttp3.ConnectionPool#connectionCount()', - 'okhttp3.ConnectionPool#evictAll()', - 'okhttp3.ConnectionPool#idleConnectionCount()', - 'okhttp3.ConnectionSpec#cipherSuites()', - 'okhttp3.ConnectionSpec#isCompatible(javax.net.ssl.SSLSocket)', - 'okhttp3.ConnectionSpec#isTls()', - 'okhttp3.ConnectionSpec#supportsTlsExtensions()', - 'okhttp3.ConnectionSpec#tlsVersions()', - 'okhttp3.ConnectionSpec$Builder#allEnabledCipherSuites()', - 'okhttp3.ConnectionSpec$Builder#allEnabledTlsVersions()', - 'okhttp3.ConnectionSpec$Builder#build()', - 'okhttp3.ConnectionSpec$Builder#cipherSuites(java.lang.String\\[\\])', - 'okhttp3.ConnectionSpec$Builder#cipherSuites(okhttp3.CipherSuite\\[\\])', - 'okhttp3.ConnectionSpec$Builder#supportsTlsExtensions(boolean)', - 'okhttp3.ConnectionSpec$Builder#tlsVersions(java.lang.String\\[\\])', - 'okhttp3.ConnectionSpec$Builder#tlsVersions(okhttp3.TlsVersion\\[\\])', - 'okhttp3.Cookie#domain()', - 'okhttp3.Cookie#expiresAt()', - 'okhttp3.Cookie#hostOnly()', - 'okhttp3.Cookie#httpOnly()', - 'okhttp3.Cookie#matches(okhttp3.HttpUrl)', - 'okhttp3.Cookie#name()', - 'okhttp3.Cookie#path()', - 'okhttp3.Cookie#persistent()', - 'okhttp3.Cookie#secure()', - 'okhttp3.Cookie#value()', - 'okhttp3.Cookie$Builder#build()', - 'okhttp3.Cookie$Builder#domain(java.lang.String)', - 'okhttp3.Cookie$Builder#expiresAt(long)', - 'okhttp3.Cookie$Builder#hostOnlyDomain(java.lang.String)', - 'okhttp3.Cookie$Builder#httpOnly()', - 'okhttp3.Cookie$Builder#name(java.lang.String)', - 'okhttp3.Cookie$Builder#path(java.lang.String)', - 'okhttp3.Cookie$Builder#secure()', - 'okhttp3.Cookie$Builder#value(java.lang.String)', - 'okhttp3.Dispatcher#cancelAll()', - 'okhttp3.Dispatcher#executorService()', - 'okhttp3.Dispatcher#getMaxRequests()', - 'okhttp3.Dispatcher#getMaxRequestsPerHost()', - 'okhttp3.Dispatcher#queuedCalls()', - 'okhttp3.Dispatcher#queuedCallsCount()', - 'okhttp3.Dispatcher#runningCalls()', - 'okhttp3.Dispatcher#runningCallsCount()', - 'okhttp3.Dispatcher#setIdleCallback(java.lang.Runnable)', - 'okhttp3.Dispatcher#setMaxRequests(int)', - 'okhttp3.Dispatcher#setMaxRequestsPerHost(int)', - 'okhttp3.FormBody#encodedName(int)', - 'okhttp3.FormBody#encodedValue(int)', - 'okhttp3.FormBody#name(int)', - 'okhttp3.FormBody#size()', - 'okhttp3.FormBody#value(int)', - 'okhttp3.FormBody$Builder#add(java.lang.String, java.lang.String)', - 'okhttp3.FormBody$Builder#addEncoded(java.lang.String, java.lang.String)', - 'okhttp3.FormBody$Builder#build()', - 'okhttp3.Handshake#cipherSuite()', - 'okhttp3.Handshake#localCertificates()', - 'okhttp3.Handshake#localPrincipal()', - 'okhttp3.Handshake#peerCertificates()', - 'okhttp3.Handshake#peerPrincipal()', - 'okhttp3.Handshake#tlsVersion()', - 'okhttp3.Headers#byteCount()', - 'okhttp3.Headers#get(java.lang.String)', - 'okhttp3.Headers#getDate(java.lang.String)', - 'okhttp3.Headers#getInstant(java.lang.String)', - 'okhttp3.Headers#name(int)', - 'okhttp3.Headers#names()', - 'okhttp3.Headers#newBuilder()', - 'okhttp3.Headers#size()', - 'okhttp3.Headers#toMultimap()', - 'okhttp3.Headers#value(int)', - 'okhttp3.Headers#values(java.lang.String)', - 'okhttp3.Headers$Builder#add(java.lang.String)', - 'okhttp3.Headers$Builder#add(java.lang.String, java.lang.String)', - 'okhttp3.Headers$Builder#add(java.lang.String, java.time.Instant)', - 'okhttp3.Headers$Builder#add(java.lang.String, java.util.Date)', - 'okhttp3.Headers$Builder#addAll(okhttp3.Headers)', - 'okhttp3.Headers$Builder#addUnsafeNonAscii(java.lang.String, java.lang.String)', - 'okhttp3.Headers$Builder#build()', - 'okhttp3.Headers$Builder#get(java.lang.String)', - 'okhttp3.Headers$Builder#removeAll(java.lang.String)', - 'okhttp3.Headers$Builder#set(java.lang.String, java.lang.String)', - 'okhttp3.Headers$Builder#set(java.lang.String, java.time.Instant)', - 'okhttp3.Headers$Builder#set(java.lang.String, java.util.Date)', - 'okhttp3.HttpUrl#encodedFragment()', - 'okhttp3.HttpUrl#encodedPassword()', - 'okhttp3.HttpUrl#encodedPath()', - 'okhttp3.HttpUrl#encodedPathSegments()', - 'okhttp3.HttpUrl#encodedQuery()', - 'okhttp3.HttpUrl#encodedUsername()', - 'okhttp3.HttpUrl#fragment()', - 'okhttp3.HttpUrl#host()', - 'okhttp3.HttpUrl#isHttps()', - 'okhttp3.HttpUrl#newBuilder()', - 'okhttp3.HttpUrl#newBuilder(java.lang.String)', - 'okhttp3.HttpUrl#password()', - 'okhttp3.HttpUrl#pathSegments()', - 'okhttp3.HttpUrl#pathSize()', - 'okhttp3.HttpUrl#port()', - 'okhttp3.HttpUrl#query()', - 'okhttp3.HttpUrl#queryParameter(java.lang.String)', - 'okhttp3.HttpUrl#queryParameterName(int)', - 'okhttp3.HttpUrl#queryParameterNames()', - 'okhttp3.HttpUrl#queryParameterValue(int)', - 'okhttp3.HttpUrl#queryParameterValues(java.lang.String)', - 'okhttp3.HttpUrl#querySize()', - 'okhttp3.HttpUrl#redact()', - 'okhttp3.HttpUrl#resolve(java.lang.String)', - 'okhttp3.HttpUrl#scheme()', - 'okhttp3.HttpUrl#topPrivateDomain()', - 'okhttp3.HttpUrl#uri()', - 'okhttp3.HttpUrl#url()', - 'okhttp3.HttpUrl#username()', - 'okhttp3.HttpUrl$Builder#addEncodedPathSegment(java.lang.String)', - 'okhttp3.HttpUrl$Builder#addEncodedPathSegments(java.lang.String)', - 'okhttp3.HttpUrl$Builder#addEncodedQueryParameter(java.lang.String, java.lang.String)', - 'okhttp3.HttpUrl$Builder#addPathSegment(java.lang.String)', - 'okhttp3.HttpUrl$Builder#addPathSegments(java.lang.String)', - 'okhttp3.HttpUrl$Builder#addQueryParameter(java.lang.String, java.lang.String)', - 'okhttp3.HttpUrl$Builder#build()', - 'okhttp3.HttpUrl$Builder#encodedFragment(java.lang.String)', - 'okhttp3.HttpUrl$Builder#encodedPassword(java.lang.String)', - 'okhttp3.HttpUrl$Builder#encodedPath(java.lang.String)', - 'okhttp3.HttpUrl$Builder#encodedQuery(java.lang.String)', - 'okhttp3.HttpUrl$Builder#encodedUsername(java.lang.String)', - 'okhttp3.HttpUrl$Builder#fragment(java.lang.String)', - 'okhttp3.HttpUrl$Builder#host(java.lang.String)', - 'okhttp3.HttpUrl$Builder#password(java.lang.String)', - 'okhttp3.HttpUrl$Builder#port(int)', - 'okhttp3.HttpUrl$Builder#query(java.lang.String)', - 'okhttp3.HttpUrl$Builder#removeAllEncodedQueryParameters(java.lang.String)', - 'okhttp3.HttpUrl$Builder#removeAllQueryParameters(java.lang.String)', - 'okhttp3.HttpUrl$Builder#removePathSegment(int)', - 'okhttp3.HttpUrl$Builder#scheme(java.lang.String)', - 'okhttp3.HttpUrl$Builder#setEncodedPathSegment(int, java.lang.String)', - 'okhttp3.HttpUrl$Builder#setEncodedQueryParameter(java.lang.String, java.lang.String)', - 'okhttp3.HttpUrl$Builder#setPathSegment(int, java.lang.String)', - 'okhttp3.HttpUrl$Builder#setQueryParameter(java.lang.String, java.lang.String)', - 'okhttp3.HttpUrl$Builder#username(java.lang.String)', - 'okhttp3.MediaType#charset()', - 'okhttp3.MediaType#charset(java.nio.charset.Charset)', - 'okhttp3.MediaType#subtype()', - 'okhttp3.MediaType#type()', - 'okhttp3.MultipartBody#boundary()', - 'okhttp3.MultipartBody#part(int)', - 'okhttp3.MultipartBody#parts()', - 'okhttp3.MultipartBody#size()', - 'okhttp3.MultipartBody#type()', - 'okhttp3.MultipartBody$Builder#addFormDataPart(java.lang.String, java.lang.String)', - 'okhttp3.MultipartBody$Builder#addFormDataPart(java.lang.String, java.lang.String, okhttp3.RequestBody)', - 'okhttp3.MultipartBody$Builder#addPart(okhttp3.Headers, okhttp3.RequestBody)', - 'okhttp3.MultipartBody$Builder#addPart(okhttp3.MultipartBody$Part)', - 'okhttp3.MultipartBody$Builder#addPart(okhttp3.RequestBody)', - 'okhttp3.MultipartBody$Builder#build()', - 'okhttp3.MultipartBody$Builder#setType(okhttp3.MediaType)', - 'okhttp3.MultipartBody$Part#body()', - 'okhttp3.MultipartBody$Part#headers()', - 'okhttp3.OkHttpClient$Builder#addInterceptor(okhttp3.Interceptor)', - 'okhttp3.OkHttpClient$Builder#addNetworkInterceptor(okhttp3.Interceptor)', - 'okhttp3.OkHttpClient$Builder#authenticator(okhttp3.Authenticator)', - 'okhttp3.OkHttpClient$Builder#build()', - 'okhttp3.OkHttpClient$Builder#cache(okhttp3.Cache)', - 'okhttp3.OkHttpClient$Builder#callTimeout(java.time.Duration)', - 'okhttp3.OkHttpClient$Builder#callTimeout(long, java.util.concurrent.TimeUnit)', - 'okhttp3.OkHttpClient$Builder#certificatePinner(okhttp3.CertificatePinner)', - 'okhttp3.OkHttpClient$Builder#connectTimeout(java.time.Duration)', - 'okhttp3.OkHttpClient$Builder#connectTimeout(long, java.util.concurrent.TimeUnit)', - 'okhttp3.OkHttpClient$Builder#connectionPool(okhttp3.ConnectionPool)', - 'okhttp3.OkHttpClient$Builder#connectionSpecs(java.util.List)', - 'okhttp3.OkHttpClient$Builder#cookieJar(okhttp3.CookieJar)', - 'okhttp3.OkHttpClient$Builder#dispatcher(okhttp3.Dispatcher)', - 'okhttp3.OkHttpClient$Builder#dns(okhttp3.Dns)', - 'okhttp3.OkHttpClient$Builder#eventListener(okhttp3.EventListener)', - 'okhttp3.OkHttpClient$Builder#eventListenerFactory(okhttp3.EventListener$Factory)', - 'okhttp3.OkHttpClient$Builder#followRedirects(boolean)', - 'okhttp3.OkHttpClient$Builder#followSslRedirects(boolean)', - 'okhttp3.OkHttpClient$Builder#hostnameVerifier(javax.net.ssl.HostnameVerifier)', - 'okhttp3.OkHttpClient$Builder#interceptors()', - 'okhttp3.OkHttpClient$Builder#networkInterceptors()', - 'okhttp3.OkHttpClient$Builder#pingInterval(java.time.Duration)', - 'okhttp3.OkHttpClient$Builder#pingInterval(long, java.util.concurrent.TimeUnit)', - 'okhttp3.OkHttpClient$Builder#protocols(java.util.List)', - 'okhttp3.OkHttpClient$Builder#proxy(java.net.Proxy)', - 'okhttp3.OkHttpClient$Builder#proxyAuthenticator(okhttp3.Authenticator)', - 'okhttp3.OkHttpClient$Builder#proxySelector(java.net.ProxySelector)', - 'okhttp3.OkHttpClient$Builder#readTimeout(java.time.Duration)', - 'okhttp3.OkHttpClient$Builder#readTimeout(long, java.util.concurrent.TimeUnit)', - 'okhttp3.OkHttpClient$Builder#retryOnConnectionFailure(boolean)', - 'okhttp3.OkHttpClient$Builder#socketFactory(javax.net.SocketFactory)', - 'okhttp3.OkHttpClient$Builder#sslSocketFactory(javax.net.ssl.SSLSocketFactory)', - 'okhttp3.OkHttpClient$Builder#sslSocketFactory(javax.net.ssl.SSLSocketFactory, javax.net.ssl.X509TrustManager)', - 'okhttp3.OkHttpClient$Builder#writeTimeout(java.time.Duration)', - 'okhttp3.OkHttpClient$Builder#writeTimeout(long, java.util.concurrent.TimeUnit)', - 'okhttp3.RealCall#getResponseWithInterceptorChain()', - 'okhttp3.RealCall#redactedUrl()', - 'okhttp3.RealCall#toLoggableString()', - 'okhttp3.RealCall$AsyncCall#callsPerHost()', - 'okhttp3.RealCall$AsyncCall#executeOn(java.util.concurrent.ExecutorService)', - 'okhttp3.RealCall$AsyncCall#get()', - 'okhttp3.RealCall$AsyncCall#host()', - 'okhttp3.RealCall$AsyncCall#request()', - 'okhttp3.RealCall$AsyncCall#reuseCallsPerHostFrom(okhttp3.RealCall$AsyncCall)', - 'okhttp3.Request#body()', - 'okhttp3.Request#cacheControl()', - 'okhttp3.Request#header(java.lang.String)', - 'okhttp3.Request#headers()', - 'okhttp3.Request#headers(java.lang.String)', - 'okhttp3.Request#isHttps()', - 'okhttp3.Request#method()', - 'okhttp3.Request#newBuilder()', - 'okhttp3.Request#tag()', - 'okhttp3.Request#tag(java.lang.Class)', - 'okhttp3.Request#url()', - 'okhttp3.Response#body()', - 'okhttp3.Response#cacheControl()', - 'okhttp3.Response#cacheResponse()', - 'okhttp3.Response#challenges()', - 'okhttp3.Response#code()', - 'okhttp3.Response#handshake()', - 'okhttp3.Response#header(java.lang.String)', - 'okhttp3.Response#header(java.lang.String, java.lang.String)', - 'okhttp3.Response#headers()', - 'okhttp3.Response#headers(java.lang.String)', - 'okhttp3.Response#isRedirect()', - 'okhttp3.Response#isSuccessful()', - 'okhttp3.Response#message()', - 'okhttp3.Response#networkResponse()', - 'okhttp3.Response#newBuilder()', - 'okhttp3.Response#peekBody(long)', - 'okhttp3.Response#priorResponse()', - 'okhttp3.Response#protocol()', - 'okhttp3.Response#receivedResponseAtMillis()', - 'okhttp3.Response#request()', - 'okhttp3.Response#sentRequestAtMillis()', - 'okhttp3.Response#trailers()', - 'okhttp3.Route#address()', - 'okhttp3.Route#proxy()', - 'okhttp3.Route#requiresTunnel()', - 'okhttp3.Route#socketAddress()', - 'okhttp3.TlsVersion#javaName()', - // Real API change! Became 'final' despite a non-final enclosing class in 4.0.0: + // Became 'final' despite a non-final enclosing class in 4.0.0: 'okhttp3.OkHttpClient#authenticator()', 'okhttp3.OkHttpClient#cache()', 'okhttp3.OkHttpClient#callTimeoutMillis()', diff --git a/okhttp/src/main/java/okhttp3/Address.kt b/okhttp/src/main/java/okhttp3/Address.kt index e09d129e8..1911a42f8 100644 --- a/okhttp/src/main/java/okhttp3/Address.kt +++ b/okhttp/src/main/java/okhttp3/Address.kt @@ -15,13 +15,13 @@ */ package okhttp3 -import okhttp3.internal.toImmutableList import java.net.Proxy import java.net.ProxySelector import java.util.Objects import javax.net.SocketFactory import javax.net.ssl.HostnameVerifier import javax.net.ssl.SSLSocketFactory +import okhttp3.internal.toImmutableList /** * A specification for a connection to an origin server. For simple connections, this is the diff --git a/okhttp/src/main/java/okhttp3/Cache.kt b/okhttp/src/main/java/okhttp3/Cache.kt index 380c04a6f..8a7b80285 100644 --- a/okhttp/src/main/java/okhttp3/Cache.kt +++ b/okhttp/src/main/java/okhttp3/Cache.kt @@ -15,6 +15,16 @@ */ package okhttp3 +import java.io.Closeable +import java.io.File +import java.io.Flushable +import java.io.IOException +import java.security.cert.Certificate +import java.security.cert.CertificateEncodingException +import java.security.cert.CertificateException +import java.security.cert.CertificateFactory +import java.util.NoSuchElementException +import java.util.TreeSet import okhttp3.MediaType.Companion.toMediaTypeOrNull import okhttp3.internal.EMPTY_HEADERS import okhttp3.internal.cache.CacheRequest @@ -38,16 +48,6 @@ import okio.ForwardingSource import okio.Sink import okio.Source import okio.buffer -import java.io.Closeable -import java.io.File -import java.io.Flushable -import java.io.IOException -import java.security.cert.Certificate -import java.security.cert.CertificateEncodingException -import java.security.cert.CertificateException -import java.security.cert.CertificateFactory -import java.util.NoSuchElementException -import java.util.TreeSet /** * Caches HTTP and HTTPS responses to the filesystem so they may be reused, saving time and diff --git a/okhttp/src/main/java/okhttp3/CacheControl.kt b/okhttp/src/main/java/okhttp3/CacheControl.kt index d9e887c57..800ef9a4a 100644 --- a/okhttp/src/main/java/okhttp3/CacheControl.kt +++ b/okhttp/src/main/java/okhttp3/CacheControl.kt @@ -15,9 +15,9 @@ */ package okhttp3 +import java.util.concurrent.TimeUnit import okhttp3.internal.indexOfNonWhitespace import okhttp3.internal.toNonNegativeInt -import java.util.concurrent.TimeUnit /** * A Cache-Control header with cache directives from a server or client. These directives set policy diff --git a/okhttp/src/main/java/okhttp3/Call.kt b/okhttp/src/main/java/okhttp3/Call.kt index 4ea40e96d..6df8da0e9 100644 --- a/okhttp/src/main/java/okhttp3/Call.kt +++ b/okhttp/src/main/java/okhttp3/Call.kt @@ -15,8 +15,8 @@ */ package okhttp3 -import okio.Timeout import java.io.IOException +import okio.Timeout /** * A call is a request that has been prepared for execution. A call can be canceled. As this object diff --git a/okhttp/src/main/java/okhttp3/CertificatePinner.kt b/okhttp/src/main/java/okhttp3/CertificatePinner.kt index 571f49fdf..29549387c 100644 --- a/okhttp/src/main/java/okhttp3/CertificatePinner.kt +++ b/okhttp/src/main/java/okhttp3/CertificatePinner.kt @@ -15,14 +15,14 @@ */ package okhttp3 +import java.security.cert.Certificate +import java.security.cert.X509Certificate +import javax.net.ssl.SSLPeerUnverifiedException import okhttp3.internal.tls.CertificateChainCleaner import okhttp3.internal.toCanonicalHost import okio.ByteString import okio.ByteString.Companion.decodeBase64 import okio.ByteString.Companion.toByteString -import java.security.cert.Certificate -import java.security.cert.X509Certificate -import javax.net.ssl.SSLPeerUnverifiedException /** * Constrains which certificates are trusted. Pinning certificates defends against attacks on diff --git a/okhttp/src/main/java/okhttp3/Challenge.kt b/okhttp/src/main/java/okhttp3/Challenge.kt index 38e5bcc1e..db2662ddd 100644 --- a/okhttp/src/main/java/okhttp3/Challenge.kt +++ b/okhttp/src/main/java/okhttp3/Challenge.kt @@ -115,4 +115,4 @@ class Challenge( } override fun toString() = "$scheme authParams=$authParams" -} \ No newline at end of file +} diff --git a/okhttp/src/main/java/okhttp3/ConnectionPool.kt b/okhttp/src/main/java/okhttp3/ConnectionPool.kt index 4dbcb9514..b37c9aecc 100644 --- a/okhttp/src/main/java/okhttp3/ConnectionPool.kt +++ b/okhttp/src/main/java/okhttp3/ConnectionPool.kt @@ -16,9 +16,9 @@ */ package okhttp3 +import java.util.concurrent.TimeUnit import okhttp3.internal.concurrent.TaskRunner import okhttp3.internal.connection.RealConnectionPool -import java.util.concurrent.TimeUnit /** * Manages reuse of HTTP and HTTP/2 connections for reduced network latency. HTTP requests that diff --git a/okhttp/src/main/java/okhttp3/ConnectionSpec.kt b/okhttp/src/main/java/okhttp3/ConnectionSpec.kt index cd48244d8..b4bdd51fc 100644 --- a/okhttp/src/main/java/okhttp3/ConnectionSpec.kt +++ b/okhttp/src/main/java/okhttp3/ConnectionSpec.kt @@ -15,14 +15,14 @@ */ package okhttp3 +import java.util.Arrays +import java.util.Objects +import javax.net.ssl.SSLSocket import okhttp3.ConnectionSpec.Builder import okhttp3.internal.concat import okhttp3.internal.hasIntersection import okhttp3.internal.indexOf import okhttp3.internal.intersect -import java.util.Arrays -import java.util.Objects -import javax.net.ssl.SSLSocket /** * Specifies configuration for the socket connection that HTTP traffic travels through. For `https:` diff --git a/okhttp/src/main/java/okhttp3/Cookie.kt b/okhttp/src/main/java/okhttp3/Cookie.kt index d56aa593a..b3d61d258 100644 --- a/okhttp/src/main/java/okhttp3/Cookie.kt +++ b/okhttp/src/main/java/okhttp3/Cookie.kt @@ -15,6 +15,12 @@ */ package okhttp3 +import java.util.Calendar +import java.util.Collections +import java.util.Date +import java.util.GregorianCalendar +import java.util.Locale +import java.util.regex.Pattern import okhttp3.internal.UTC import okhttp3.internal.canParseAsIpAddress import okhttp3.internal.delimiterOffset @@ -25,12 +31,6 @@ import okhttp3.internal.publicsuffix.PublicSuffixDatabase import okhttp3.internal.toCanonicalHost import okhttp3.internal.trimSubstring import org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement -import java.util.Calendar -import java.util.Collections -import java.util.Date -import java.util.GregorianCalendar -import java.util.Locale -import java.util.regex.Pattern /** * An [RFC 6265](http://tools.ietf.org/html/rfc6265) Cookie. diff --git a/okhttp/src/main/java/okhttp3/Credentials.kt b/okhttp/src/main/java/okhttp3/Credentials.kt index bb670714c..33f676b52 100644 --- a/okhttp/src/main/java/okhttp3/Credentials.kt +++ b/okhttp/src/main/java/okhttp3/Credentials.kt @@ -15,9 +15,9 @@ */ package okhttp3 -import okio.ByteString.Companion.encode import java.nio.charset.Charset import java.nio.charset.StandardCharsets.ISO_8859_1 +import okio.ByteString.Companion.encode /** Factory for HTTP authorization credentials. */ object Credentials { diff --git a/okhttp/src/main/java/okhttp3/Dispatcher.kt b/okhttp/src/main/java/okhttp3/Dispatcher.kt index 455d4367e..77b1e13e8 100644 --- a/okhttp/src/main/java/okhttp3/Dispatcher.kt +++ b/okhttp/src/main/java/okhttp3/Dispatcher.kt @@ -15,9 +15,6 @@ */ package okhttp3 -import okhttp3.RealCall.AsyncCall -import okhttp3.internal.assertThreadDoesntHoldLock -import okhttp3.internal.threadFactory import java.util.ArrayDeque import java.util.Collections import java.util.Deque @@ -25,6 +22,9 @@ import java.util.concurrent.ExecutorService import java.util.concurrent.SynchronousQueue import java.util.concurrent.ThreadPoolExecutor import java.util.concurrent.TimeUnit +import okhttp3.RealCall.AsyncCall +import okhttp3.internal.assertThreadDoesntHoldLock +import okhttp3.internal.threadFactory /** * Policy on when async requests are executed. diff --git a/okhttp/src/main/java/okhttp3/Dns.kt b/okhttp/src/main/java/okhttp3/Dns.kt index 5c3490230..5348c7205 100644 --- a/okhttp/src/main/java/okhttp3/Dns.kt +++ b/okhttp/src/main/java/okhttp3/Dns.kt @@ -15,9 +15,9 @@ */ package okhttp3 -import okhttp3.Dns.Companion.SYSTEM import java.net.InetAddress import java.net.UnknownHostException +import okhttp3.Dns.Companion.SYSTEM /** * A domain name service that resolves IP addresses for host names. Most applications will use the diff --git a/okhttp/src/main/java/okhttp3/FormBody.kt b/okhttp/src/main/java/okhttp3/FormBody.kt index de55d4427..e266371a7 100644 --- a/okhttp/src/main/java/okhttp3/FormBody.kt +++ b/okhttp/src/main/java/okhttp3/FormBody.kt @@ -15,6 +15,8 @@ */ package okhttp3 +import java.io.IOException +import java.nio.charset.Charset import okhttp3.HttpUrl.Companion.FORM_ENCODE_SET import okhttp3.HttpUrl.Companion.canonicalize import okhttp3.HttpUrl.Companion.percentDecode @@ -22,8 +24,6 @@ import okhttp3.MediaType.Companion.toMediaType import okhttp3.internal.toImmutableList import okio.Buffer import okio.BufferedSink -import java.io.IOException -import java.nio.charset.Charset class FormBody internal constructor( encodedNames: List, diff --git a/okhttp/src/main/java/okhttp3/Handshake.kt b/okhttp/src/main/java/okhttp3/Handshake.kt index 6f6cd561f..0dd80bdbb 100644 --- a/okhttp/src/main/java/okhttp3/Handshake.kt +++ b/okhttp/src/main/java/okhttp3/Handshake.kt @@ -15,14 +15,14 @@ */ package okhttp3 -import okhttp3.internal.immutableListOf -import okhttp3.internal.toImmutableList import java.io.IOException import java.security.Principal import java.security.cert.Certificate import java.security.cert.X509Certificate import javax.net.ssl.SSLPeerUnverifiedException import javax.net.ssl.SSLSession +import okhttp3.internal.immutableListOf +import okhttp3.internal.toImmutableList /** * A record of a TLS handshake. For HTTPS clients, the client is *local* and the remote server is diff --git a/okhttp/src/main/java/okhttp3/Headers.kt b/okhttp/src/main/java/okhttp3/Headers.kt index 40b52296c..db1f36eda 100644 --- a/okhttp/src/main/java/okhttp3/Headers.kt +++ b/okhttp/src/main/java/okhttp3/Headers.kt @@ -17,11 +17,6 @@ package okhttp3 -import okhttp3.Headers.Builder -import okhttp3.internal.format -import okhttp3.internal.http.toHttpDateOrNull -import okhttp3.internal.http.toHttpDateString -import org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement import java.time.Instant import java.util.ArrayList import java.util.Collections @@ -29,6 +24,11 @@ import java.util.Date import java.util.Locale import java.util.TreeMap import java.util.TreeSet +import okhttp3.Headers.Builder +import okhttp3.internal.format +import okhttp3.internal.http.toHttpDateOrNull +import okhttp3.internal.http.toHttpDateString +import org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement /** * The header fields of a single HTTP message. Values are uninterpreted strings; use `Request` and diff --git a/okhttp/src/main/java/okhttp3/HttpUrl.kt b/okhttp/src/main/java/okhttp3/HttpUrl.kt index f1e38946f..43bcd153d 100644 --- a/okhttp/src/main/java/okhttp3/HttpUrl.kt +++ b/okhttp/src/main/java/okhttp3/HttpUrl.kt @@ -15,16 +15,6 @@ */ package okhttp3 -import okhttp3.HttpUrl.Companion.toHttpUrl -import okhttp3.HttpUrl.Companion.toHttpUrlOrNull -import okhttp3.internal.canParseAsIpAddress -import okhttp3.internal.delimiterOffset -import okhttp3.internal.indexOfFirstNonAsciiWhitespace -import okhttp3.internal.indexOfLastNonAsciiWhitespace -import okhttp3.internal.parseHexDigit -import okhttp3.internal.publicsuffix.PublicSuffixDatabase -import okhttp3.internal.toCanonicalHost -import okio.Buffer import java.net.InetAddress import java.net.MalformedURLException import java.net.URI @@ -35,6 +25,16 @@ import java.nio.charset.StandardCharsets.UTF_8 import java.util.ArrayList import java.util.Collections import java.util.LinkedHashSet +import okhttp3.HttpUrl.Companion.toHttpUrl +import okhttp3.HttpUrl.Companion.toHttpUrlOrNull +import okhttp3.internal.canParseAsIpAddress +import okhttp3.internal.delimiterOffset +import okhttp3.internal.indexOfFirstNonAsciiWhitespace +import okhttp3.internal.indexOfLastNonAsciiWhitespace +import okhttp3.internal.parseHexDigit +import okhttp3.internal.publicsuffix.PublicSuffixDatabase +import okhttp3.internal.toCanonicalHost +import okio.Buffer /** * A uniform resource locator (URL) with a scheme of either `http` or `https`. Use this class to diff --git a/okhttp/src/main/java/okhttp3/MultipartBody.kt b/okhttp/src/main/java/okhttp3/MultipartBody.kt index abf62fbe5..856309700 100644 --- a/okhttp/src/main/java/okhttp3/MultipartBody.kt +++ b/okhttp/src/main/java/okhttp3/MultipartBody.kt @@ -15,14 +15,14 @@ */ package okhttp3 +import java.io.IOException +import java.util.UUID import okhttp3.MediaType.Companion.toMediaType import okhttp3.internal.toImmutableList import okio.Buffer import okio.BufferedSink import okio.ByteString import okio.ByteString.Companion.encodeUtf8 -import java.io.IOException -import java.util.UUID /** * An [RFC 2387][rfc_2387]-compliant request body. diff --git a/okhttp/src/main/java/okhttp3/OkHttpClient.kt b/okhttp/src/main/java/okhttp3/OkHttpClient.kt index d77f5d1dd..3649442f9 100644 --- a/okhttp/src/main/java/okhttp3/OkHttpClient.kt +++ b/okhttp/src/main/java/okhttp3/OkHttpClient.kt @@ -15,6 +15,20 @@ */ package okhttp3 +import java.net.Proxy +import java.net.ProxySelector +import java.net.Socket +import java.security.GeneralSecurityException +import java.time.Duration +import java.util.Collections +import java.util.Random +import java.util.concurrent.ExecutorService +import java.util.concurrent.TimeUnit +import javax.net.SocketFactory +import javax.net.ssl.HostnameVerifier +import javax.net.ssl.SSLSocketFactory +import javax.net.ssl.TrustManager +import javax.net.ssl.X509TrustManager import okhttp3.Protocol.HTTP_1_1 import okhttp3.Protocol.HTTP_2 import okhttp3.internal.asFactory @@ -30,20 +44,6 @@ import okhttp3.internal.ws.RealWebSocket import okio.Sink import okio.Source import org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement -import java.net.Proxy -import java.net.ProxySelector -import java.net.Socket -import java.security.GeneralSecurityException -import java.time.Duration -import java.util.Collections -import java.util.Random -import java.util.concurrent.ExecutorService -import java.util.concurrent.TimeUnit -import javax.net.SocketFactory -import javax.net.ssl.HostnameVerifier -import javax.net.ssl.SSLSocketFactory -import javax.net.ssl.TrustManager -import javax.net.ssl.X509TrustManager /** * Factory for [calls][Call], which can be used to send HTTP requests and read their responses. diff --git a/okhttp/src/main/java/okhttp3/RealCall.kt b/okhttp/src/main/java/okhttp3/RealCall.kt index d0fe0ff75..05b1fa072 100644 --- a/okhttp/src/main/java/okhttp3/RealCall.kt +++ b/okhttp/src/main/java/okhttp3/RealCall.kt @@ -15,6 +15,11 @@ */ package okhttp3 +import java.io.IOException +import java.io.InterruptedIOException +import java.util.concurrent.ExecutorService +import java.util.concurrent.RejectedExecutionException +import java.util.concurrent.atomic.AtomicInteger import okhttp3.internal.assertThreadDoesntHoldLock import okhttp3.internal.cache.CacheInterceptor import okhttp3.internal.closeQuietly @@ -28,11 +33,6 @@ import okhttp3.internal.platform.Platform import okhttp3.internal.platform.Platform.Companion.INFO import okhttp3.internal.threadName import okio.Timeout -import java.io.IOException -import java.io.InterruptedIOException -import java.util.concurrent.ExecutorService -import java.util.concurrent.RejectedExecutionException -import java.util.concurrent.atomic.AtomicInteger internal class RealCall private constructor( val client: OkHttpClient, diff --git a/okhttp/src/main/java/okhttp3/Request.kt b/okhttp/src/main/java/okhttp3/Request.kt index 8a0f1e425..015905858 100644 --- a/okhttp/src/main/java/okhttp3/Request.kt +++ b/okhttp/src/main/java/okhttp3/Request.kt @@ -15,11 +15,11 @@ */ package okhttp3 +import java.net.URL import okhttp3.HttpUrl.Companion.toHttpUrl import okhttp3.internal.EMPTY_REQUEST import okhttp3.internal.http.HttpMethod import okhttp3.internal.toImmutableMap -import java.net.URL /** * An HTTP request. Instances of this class are immutable if their [body] is null or itself diff --git a/okhttp/src/main/java/okhttp3/RequestBody.kt b/okhttp/src/main/java/okhttp3/RequestBody.kt index ac32b32fa..55505001b 100644 --- a/okhttp/src/main/java/okhttp3/RequestBody.kt +++ b/okhttp/src/main/java/okhttp3/RequestBody.kt @@ -15,15 +15,15 @@ */ package okhttp3 +import java.io.File +import java.io.IOException +import java.nio.charset.Charset +import kotlin.text.Charsets.UTF_8 import okhttp3.MediaType.Companion.toMediaTypeOrNull import okhttp3.internal.checkOffsetAndCount import okio.BufferedSink import okio.ByteString import okio.source -import java.io.File -import java.io.IOException -import java.nio.charset.Charset -import kotlin.text.Charsets.UTF_8 abstract class RequestBody { diff --git a/okhttp/src/main/java/okhttp3/Response.kt b/okhttp/src/main/java/okhttp3/Response.kt index 9456f93dc..aeff0d66f 100644 --- a/okhttp/src/main/java/okhttp3/Response.kt +++ b/okhttp/src/main/java/okhttp3/Response.kt @@ -15,12 +15,6 @@ */ package okhttp3 -import okhttp3.ResponseBody.Companion.asResponseBody -import okhttp3.internal.connection.Exchange -import okhttp3.internal.http.StatusLine.Companion.HTTP_PERM_REDIRECT -import okhttp3.internal.http.StatusLine.Companion.HTTP_TEMP_REDIRECT -import okhttp3.internal.http.parseChallenges -import okio.Buffer import java.io.Closeable import java.io.IOException import java.net.HttpURLConnection.HTTP_MOVED_PERM @@ -29,6 +23,12 @@ import java.net.HttpURLConnection.HTTP_MULT_CHOICE import java.net.HttpURLConnection.HTTP_PROXY_AUTH import java.net.HttpURLConnection.HTTP_SEE_OTHER import java.net.HttpURLConnection.HTTP_UNAUTHORIZED +import okhttp3.ResponseBody.Companion.asResponseBody +import okhttp3.internal.connection.Exchange +import okhttp3.internal.http.StatusLine.Companion.HTTP_PERM_REDIRECT +import okhttp3.internal.http.StatusLine.Companion.HTTP_TEMP_REDIRECT +import okhttp3.internal.http.parseChallenges +import okio.Buffer /** * An HTTP response. Instances of this class are not immutable: the response body is a one-shot diff --git a/okhttp/src/main/java/okhttp3/ResponseBody.kt b/okhttp/src/main/java/okhttp3/ResponseBody.kt index 04731370d..acdb1471e 100644 --- a/okhttp/src/main/java/okhttp3/ResponseBody.kt +++ b/okhttp/src/main/java/okhttp3/ResponseBody.kt @@ -15,12 +15,6 @@ */ package okhttp3 -import okhttp3.MediaType.Companion.toMediaTypeOrNull -import okhttp3.internal.closeQuietly -import okhttp3.internal.readBomAsCharset -import okio.Buffer -import okio.BufferedSource -import okio.ByteString import java.io.Closeable import java.io.IOException import java.io.InputStream @@ -28,6 +22,12 @@ import java.io.InputStreamReader import java.io.Reader import java.nio.charset.Charset import kotlin.text.Charsets.UTF_8 +import okhttp3.MediaType.Companion.toMediaTypeOrNull +import okhttp3.internal.closeQuietly +import okhttp3.internal.readBomAsCharset +import okio.Buffer +import okio.BufferedSource +import okio.ByteString /** * A one-shot stream from the origin server to the client application with the raw bytes of the diff --git a/okhttp/src/main/java/okhttp3/internal/Util.kt b/okhttp/src/main/java/okhttp3/internal/Util.kt index f588e8156..5b4260f16 100644 --- a/okhttp/src/main/java/okhttp3/internal/Util.kt +++ b/okhttp/src/main/java/okhttp3/internal/Util.kt @@ -17,22 +17,6 @@ package okhttp3.internal -import okhttp3.Call -import okhttp3.EventListener -import okhttp3.Headers -import okhttp3.Headers.Companion.headersOf -import okhttp3.HttpUrl -import okhttp3.OkHttpClient -import okhttp3.RequestBody.Companion.toRequestBody -import okhttp3.Response -import okhttp3.ResponseBody.Companion.toResponseBody -import okhttp3.internal.http2.Header -import okio.Buffer -import okio.BufferedSink -import okio.BufferedSource -import okio.ByteString.Companion.decodeHex -import okio.Options -import okio.Source import java.io.Closeable import java.io.IOException import java.io.InterruptedIOException @@ -53,6 +37,22 @@ import java.util.concurrent.ThreadFactory import java.util.concurrent.TimeUnit import kotlin.text.Charsets.UTF_32BE import kotlin.text.Charsets.UTF_32LE +import okhttp3.Call +import okhttp3.EventListener +import okhttp3.Headers +import okhttp3.Headers.Companion.headersOf +import okhttp3.HttpUrl +import okhttp3.OkHttpClient +import okhttp3.RequestBody.Companion.toRequestBody +import okhttp3.Response +import okhttp3.ResponseBody.Companion.toResponseBody +import okhttp3.internal.http2.Header +import okio.Buffer +import okio.BufferedSink +import okio.BufferedSource +import okio.ByteString.Companion.decodeHex +import okio.Options +import okio.Source @JvmField val EMPTY_BYTE_ARRAY = ByteArray(0) diff --git a/okhttp/src/main/java/okhttp3/internal/cache/CacheInterceptor.kt b/okhttp/src/main/java/okhttp3/internal/cache/CacheInterceptor.kt index 20c615a46..cc8370270 100644 --- a/okhttp/src/main/java/okhttp3/internal/cache/CacheInterceptor.kt +++ b/okhttp/src/main/java/okhttp3/internal/cache/CacheInterceptor.kt @@ -16,6 +16,10 @@ */ package okhttp3.internal.cache +import java.io.IOException +import java.net.HttpURLConnection.HTTP_GATEWAY_TIMEOUT +import java.net.HttpURLConnection.HTTP_NOT_MODIFIED +import java.util.concurrent.TimeUnit.MILLISECONDS import okhttp3.Cache import okhttp3.Headers import okhttp3.Interceptor @@ -32,10 +36,6 @@ import okio.Buffer import okio.Source import okio.Timeout import okio.buffer -import java.io.IOException -import java.net.HttpURLConnection.HTTP_GATEWAY_TIMEOUT -import java.net.HttpURLConnection.HTTP_NOT_MODIFIED -import java.util.concurrent.TimeUnit.MILLISECONDS /** Serves requests from the cache and writes responses to the cache. */ class CacheInterceptor(internal val cache: Cache?) : Interceptor { diff --git a/okhttp/src/main/java/okhttp3/internal/cache/CacheStrategy.kt b/okhttp/src/main/java/okhttp3/internal/cache/CacheStrategy.kt index a1149bec0..6ce080078 100644 --- a/okhttp/src/main/java/okhttp3/internal/cache/CacheStrategy.kt +++ b/okhttp/src/main/java/okhttp3/internal/cache/CacheStrategy.kt @@ -15,11 +15,6 @@ */ package okhttp3.internal.cache -import okhttp3.Request -import okhttp3.Response -import okhttp3.internal.http.StatusLine -import okhttp3.internal.http.toHttpDateOrNull -import okhttp3.internal.toNonNegativeInt import java.net.HttpURLConnection.HTTP_BAD_METHOD import java.net.HttpURLConnection.HTTP_GONE import java.net.HttpURLConnection.HTTP_MOVED_PERM @@ -33,6 +28,11 @@ import java.net.HttpURLConnection.HTTP_OK import java.net.HttpURLConnection.HTTP_REQ_TOO_LONG import java.util.Date import java.util.concurrent.TimeUnit.SECONDS +import okhttp3.Request +import okhttp3.Response +import okhttp3.internal.http.StatusLine +import okhttp3.internal.http.toHttpDateOrNull +import okhttp3.internal.toNonNegativeInt /** * Given a request and cached response, this figures out whether to use the network, the cache, or diff --git a/okhttp/src/main/java/okhttp3/internal/cache/DiskLruCache.kt b/okhttp/src/main/java/okhttp3/internal/cache/DiskLruCache.kt index 2b0d0f68b..aabba10bd 100644 --- a/okhttp/src/main/java/okhttp3/internal/cache/DiskLruCache.kt +++ b/okhttp/src/main/java/okhttp3/internal/cache/DiskLruCache.kt @@ -15,6 +15,15 @@ */ package okhttp3.internal.cache +import java.io.Closeable +import java.io.EOFException +import java.io.File +import java.io.FileNotFoundException +import java.io.Flushable +import java.io.IOException +import java.util.ArrayList +import java.util.LinkedHashMap +import java.util.NoSuchElementException import okhttp3.internal.assertThreadHoldsLock import okhttp3.internal.cache.DiskLruCache.Editor import okhttp3.internal.closeQuietly @@ -28,15 +37,6 @@ import okio.Sink import okio.Source import okio.blackholeSink import okio.buffer -import java.io.Closeable -import java.io.EOFException -import java.io.File -import java.io.FileNotFoundException -import java.io.Flushable -import java.io.IOException -import java.util.ArrayList -import java.util.LinkedHashMap -import java.util.NoSuchElementException /** * A cache that uses a bounded amount of space on a filesystem. Each cache entry has a string key diff --git a/okhttp/src/main/java/okhttp3/internal/cache/FaultHidingSink.kt b/okhttp/src/main/java/okhttp3/internal/cache/FaultHidingSink.kt index 68de64b83..4b4c0491e 100644 --- a/okhttp/src/main/java/okhttp3/internal/cache/FaultHidingSink.kt +++ b/okhttp/src/main/java/okhttp3/internal/cache/FaultHidingSink.kt @@ -15,10 +15,10 @@ */ package okhttp3.internal.cache +import java.io.IOException import okio.Buffer import okio.ForwardingSink import okio.Sink -import java.io.IOException /** A sink that never throws IOExceptions, even if the underlying sink does. */ internal open class FaultHidingSink( diff --git a/okhttp/src/main/java/okhttp3/internal/cache2/FileOperator.kt b/okhttp/src/main/java/okhttp3/internal/cache2/FileOperator.kt index 26e6f5375..dc165ba88 100644 --- a/okhttp/src/main/java/okhttp3/internal/cache2/FileOperator.kt +++ b/okhttp/src/main/java/okhttp3/internal/cache2/FileOperator.kt @@ -15,9 +15,9 @@ */ package okhttp3.internal.cache2 -import okio.Buffer import java.io.IOException import java.nio.channels.FileChannel +import okio.Buffer /** * Read and write a target file. Unlike Okio's built-in `Okio.source(java.io.File file)` and `Okio.sink(java.io.File file)` diff --git a/okhttp/src/main/java/okhttp3/internal/cache2/Relay.kt b/okhttp/src/main/java/okhttp3/internal/cache2/Relay.kt index f51820f35..b321347ee 100644 --- a/okhttp/src/main/java/okhttp3/internal/cache2/Relay.kt +++ b/okhttp/src/main/java/okhttp3/internal/cache2/Relay.kt @@ -15,6 +15,9 @@ */ package okhttp3.internal.cache2 +import java.io.File +import java.io.IOException +import java.io.RandomAccessFile import okhttp3.internal.closeQuietly import okhttp3.internal.notifyAll import okio.Buffer @@ -22,9 +25,6 @@ import okio.ByteString import okio.ByteString.Companion.encodeUtf8 import okio.Source import okio.Timeout -import java.io.File -import java.io.IOException -import java.io.RandomAccessFile /** * Replicates a single upstream source into multiple downstream sources. Each downstream source diff --git a/okhttp/src/main/java/okhttp3/internal/concurrent/TaskQueue.kt b/okhttp/src/main/java/okhttp3/internal/concurrent/TaskQueue.kt index 2f4295ee7..3521cfd6f 100644 --- a/okhttp/src/main/java/okhttp3/internal/concurrent/TaskQueue.kt +++ b/okhttp/src/main/java/okhttp3/internal/concurrent/TaskQueue.kt @@ -15,9 +15,9 @@ */ package okhttp3.internal.concurrent -import okhttp3.internal.assertThreadDoesntHoldLock import java.util.concurrent.CountDownLatch import java.util.concurrent.RejectedExecutionException +import okhttp3.internal.assertThreadDoesntHoldLock /** * A set of tasks that are executed in sequential order. diff --git a/okhttp/src/main/java/okhttp3/internal/concurrent/TaskRunner.kt b/okhttp/src/main/java/okhttp3/internal/concurrent/TaskRunner.kt index 762de1437..be3473efc 100644 --- a/okhttp/src/main/java/okhttp3/internal/concurrent/TaskRunner.kt +++ b/okhttp/src/main/java/okhttp3/internal/concurrent/TaskRunner.kt @@ -15,17 +15,17 @@ */ package okhttp3.internal.concurrent +import java.util.concurrent.SynchronousQueue +import java.util.concurrent.ThreadFactory +import java.util.concurrent.ThreadPoolExecutor +import java.util.concurrent.TimeUnit +import java.util.logging.Logger import okhttp3.internal.addIfAbsent import okhttp3.internal.assertThreadDoesntHoldLock import okhttp3.internal.assertThreadHoldsLock import okhttp3.internal.concurrent.TaskRunner.Companion.INSTANCE import okhttp3.internal.notify import okhttp3.internal.threadFactory -import java.util.concurrent.SynchronousQueue -import java.util.concurrent.ThreadFactory -import java.util.concurrent.ThreadPoolExecutor -import java.util.concurrent.TimeUnit -import java.util.logging.Logger /** * A set of worker threads that are shared among a set of task queues. diff --git a/okhttp/src/main/java/okhttp3/internal/connection/ConnectInterceptor.kt b/okhttp/src/main/java/okhttp3/internal/connection/ConnectInterceptor.kt index 51aa298bc..7a79e08ad 100644 --- a/okhttp/src/main/java/okhttp3/internal/connection/ConnectInterceptor.kt +++ b/okhttp/src/main/java/okhttp3/internal/connection/ConnectInterceptor.kt @@ -16,10 +16,10 @@ */ package okhttp3.internal.connection +import java.io.IOException import okhttp3.Interceptor import okhttp3.Response import okhttp3.internal.http.RealInterceptorChain -import java.io.IOException /** Opens a connection to the target server and proceeds to the next interceptor. */ object ConnectInterceptor : Interceptor { diff --git a/okhttp/src/main/java/okhttp3/internal/connection/ConnectionSpecSelector.kt b/okhttp/src/main/java/okhttp3/internal/connection/ConnectionSpecSelector.kt index 3e9c9af05..96c30f721 100644 --- a/okhttp/src/main/java/okhttp3/internal/connection/ConnectionSpecSelector.kt +++ b/okhttp/src/main/java/okhttp3/internal/connection/ConnectionSpecSelector.kt @@ -15,7 +15,6 @@ */ package okhttp3.internal.connection -import okhttp3.ConnectionSpec import java.io.IOException import java.io.InterruptedIOException import java.net.ProtocolException @@ -25,6 +24,7 @@ import javax.net.ssl.SSLException import javax.net.ssl.SSLHandshakeException import javax.net.ssl.SSLPeerUnverifiedException import javax.net.ssl.SSLSocket +import okhttp3.ConnectionSpec /** * Handles the connection spec fallback strategy: When a secure socket connection fails due to a diff --git a/okhttp/src/main/java/okhttp3/internal/connection/Exchange.kt b/okhttp/src/main/java/okhttp3/internal/connection/Exchange.kt index 0befe846a..6ee2e8f60 100644 --- a/okhttp/src/main/java/okhttp3/internal/connection/Exchange.kt +++ b/okhttp/src/main/java/okhttp3/internal/connection/Exchange.kt @@ -15,6 +15,9 @@ */ package okhttp3.internal.connection +import java.io.IOException +import java.net.ProtocolException +import java.net.SocketException import okhttp3.Call import okhttp3.EventListener import okhttp3.Headers @@ -30,9 +33,6 @@ import okio.ForwardingSource import okio.Sink import okio.Source import okio.buffer -import java.io.IOException -import java.net.ProtocolException -import java.net.SocketException /** * Transmits a single HTTP request and a response pair. This layers connection management and events diff --git a/okhttp/src/main/java/okhttp3/internal/connection/ExchangeFinder.kt b/okhttp/src/main/java/okhttp3/internal/connection/ExchangeFinder.kt index 776e21d6b..b6a40a3cc 100644 --- a/okhttp/src/main/java/okhttp3/internal/connection/ExchangeFinder.kt +++ b/okhttp/src/main/java/okhttp3/internal/connection/ExchangeFinder.kt @@ -15,6 +15,8 @@ */ package okhttp3.internal.connection +import java.io.IOException +import java.net.Socket import okhttp3.Address import okhttp3.Call import okhttp3.EventListener @@ -26,8 +28,6 @@ import okhttp3.internal.assertThreadHoldsLock import okhttp3.internal.canReuseConnectionFor import okhttp3.internal.closeQuietly import okhttp3.internal.http.ExchangeCodec -import java.io.IOException -import java.net.Socket /** * Attempts to find the connections for a sequence of exchanges. This uses the following strategies: diff --git a/okhttp/src/main/java/okhttp3/internal/connection/RealConnection.kt b/okhttp/src/main/java/okhttp3/internal/connection/RealConnection.kt index 300825ee4..81c5af27b 100644 --- a/okhttp/src/main/java/okhttp3/internal/connection/RealConnection.kt +++ b/okhttp/src/main/java/okhttp3/internal/connection/RealConnection.kt @@ -16,6 +16,21 @@ */ package okhttp3.internal.connection +import java.io.IOException +import java.lang.ref.Reference +import java.net.ConnectException +import java.net.HttpURLConnection.HTTP_OK +import java.net.HttpURLConnection.HTTP_PROXY_AUTH +import java.net.ProtocolException +import java.net.Proxy +import java.net.Socket +import java.net.SocketException +import java.net.SocketTimeoutException +import java.net.UnknownServiceException +import java.security.cert.X509Certificate +import java.util.concurrent.TimeUnit.MILLISECONDS +import javax.net.ssl.SSLPeerUnverifiedException +import javax.net.ssl.SSLSocket import okhttp3.Address import okhttp3.Call import okhttp3.CertificatePinner @@ -54,21 +69,6 @@ import okio.BufferedSource import okio.buffer import okio.sink import okio.source -import java.io.IOException -import java.lang.ref.Reference -import java.net.ConnectException -import java.net.HttpURLConnection.HTTP_OK -import java.net.HttpURLConnection.HTTP_PROXY_AUTH -import java.net.ProtocolException -import java.net.Proxy -import java.net.Socket -import java.net.SocketException -import java.net.SocketTimeoutException -import java.net.UnknownServiceException -import java.security.cert.X509Certificate -import java.util.concurrent.TimeUnit.MILLISECONDS -import javax.net.ssl.SSLPeerUnverifiedException -import javax.net.ssl.SSLSocket class RealConnection( val connectionPool: RealConnectionPool, diff --git a/okhttp/src/main/java/okhttp3/internal/connection/RealConnectionPool.kt b/okhttp/src/main/java/okhttp3/internal/connection/RealConnectionPool.kt index faddca618..97da36c88 100644 --- a/okhttp/src/main/java/okhttp3/internal/connection/RealConnectionPool.kt +++ b/okhttp/src/main/java/okhttp3/internal/connection/RealConnectionPool.kt @@ -16,6 +16,10 @@ */ package okhttp3.internal.connection +import java.io.IOException +import java.net.Proxy +import java.util.ArrayDeque +import java.util.concurrent.TimeUnit import okhttp3.Address import okhttp3.ConnectionPool import okhttp3.Route @@ -26,10 +30,6 @@ import okhttp3.internal.concurrent.TaskQueue import okhttp3.internal.concurrent.TaskRunner import okhttp3.internal.connection.Transmitter.TransmitterReference import okhttp3.internal.platform.Platform -import java.io.IOException -import java.net.Proxy -import java.util.ArrayDeque -import java.util.concurrent.TimeUnit class RealConnectionPool( taskRunner: TaskRunner, diff --git a/okhttp/src/main/java/okhttp3/internal/connection/RouteSelector.kt b/okhttp/src/main/java/okhttp3/internal/connection/RouteSelector.kt index a1db48a79..0ba5e4be5 100644 --- a/okhttp/src/main/java/okhttp3/internal/connection/RouteSelector.kt +++ b/okhttp/src/main/java/okhttp3/internal/connection/RouteSelector.kt @@ -15,6 +15,12 @@ */ package okhttp3.internal.connection +import java.io.IOException +import java.net.InetSocketAddress +import java.net.Proxy +import java.net.SocketException +import java.net.UnknownHostException +import java.util.NoSuchElementException import okhttp3.Address import okhttp3.Call import okhttp3.EventListener @@ -22,12 +28,6 @@ import okhttp3.HttpUrl import okhttp3.Route import okhttp3.internal.immutableListOf import okhttp3.internal.toImmutableList -import java.io.IOException -import java.net.InetSocketAddress -import java.net.Proxy -import java.net.SocketException -import java.net.UnknownHostException -import java.util.NoSuchElementException /** * Selects routes to connect to an origin server. Each connection requires a choice of proxy server, diff --git a/okhttp/src/main/java/okhttp3/internal/connection/Transmitter.kt b/okhttp/src/main/java/okhttp3/internal/connection/Transmitter.kt index bcd8c2a40..2ad28636e 100644 --- a/okhttp/src/main/java/okhttp3/internal/connection/Transmitter.kt +++ b/okhttp/src/main/java/okhttp3/internal/connection/Transmitter.kt @@ -15,6 +15,13 @@ */ package okhttp3.internal.connection +import java.io.IOException +import java.io.InterruptedIOException +import java.lang.ref.WeakReference +import java.net.Socket +import java.util.concurrent.TimeUnit.MILLISECONDS +import javax.net.ssl.HostnameVerifier +import javax.net.ssl.SSLSocketFactory import okhttp3.Address import okhttp3.Call import okhttp3.CertificatePinner @@ -25,18 +32,11 @@ import okhttp3.Interceptor import okhttp3.OkHttpClient import okhttp3.Request import okhttp3.internal.assertThreadHoldsLock -import okhttp3.internal.closeQuietly import okhttp3.internal.canReuseConnectionFor +import okhttp3.internal.closeQuietly import okhttp3.internal.platform.Platform import okio.AsyncTimeout import okio.Timeout -import java.io.IOException -import java.io.InterruptedIOException -import java.lang.ref.WeakReference -import java.net.Socket -import java.util.concurrent.TimeUnit.MILLISECONDS -import javax.net.ssl.HostnameVerifier -import javax.net.ssl.SSLSocketFactory /** * Bridge between OkHttp's application and network layers. This class exposes high-level application diff --git a/okhttp/src/main/java/okhttp3/internal/hostnames.kt b/okhttp/src/main/java/okhttp3/internal/hostnames.kt index 611b27339..22a7a951b 100644 --- a/okhttp/src/main/java/okhttp3/internal/hostnames.kt +++ b/okhttp/src/main/java/okhttp3/internal/hostnames.kt @@ -15,11 +15,11 @@ */ package okhttp3.internal -import okio.Buffer import java.net.IDN import java.net.InetAddress import java.util.Arrays import java.util.Locale +import okio.Buffer /** * If this is an IP address, this returns the IP address in canonical form. diff --git a/okhttp/src/main/java/okhttp3/internal/http/BridgeInterceptor.kt b/okhttp/src/main/java/okhttp3/internal/http/BridgeInterceptor.kt index caf6957ab..410273593 100644 --- a/okhttp/src/main/java/okhttp3/internal/http/BridgeInterceptor.kt +++ b/okhttp/src/main/java/okhttp3/internal/http/BridgeInterceptor.kt @@ -21,10 +21,9 @@ import okhttp3.Cookie import okhttp3.CookieJar import okhttp3.Interceptor import okhttp3.Response +import okhttp3.internal.toHostHeader import okhttp3.internal.userAgent import okio.GzipSource - -import okhttp3.internal.toHostHeader import okio.buffer /** diff --git a/okhttp/src/main/java/okhttp3/internal/http/CallServerInterceptor.kt b/okhttp/src/main/java/okhttp3/internal/http/CallServerInterceptor.kt index bcafe5427..cbc66001b 100644 --- a/okhttp/src/main/java/okhttp3/internal/http/CallServerInterceptor.kt +++ b/okhttp/src/main/java/okhttp3/internal/http/CallServerInterceptor.kt @@ -15,12 +15,12 @@ */ package okhttp3.internal.http +import java.io.IOException +import java.net.ProtocolException import okhttp3.Interceptor import okhttp3.Response import okhttp3.internal.EMPTY_RESPONSE import okio.buffer -import java.io.IOException -import java.net.ProtocolException /** This is the last interceptor in the chain. It makes a network call to the server. */ class CallServerInterceptor(private val forWebSocket: Boolean) : Interceptor { diff --git a/okhttp/src/main/java/okhttp3/internal/http/HttpHeaders.kt b/okhttp/src/main/java/okhttp3/internal/http/HttpHeaders.kt index f87da0117..b412724ee 100644 --- a/okhttp/src/main/java/okhttp3/internal/http/HttpHeaders.kt +++ b/okhttp/src/main/java/okhttp3/internal/http/HttpHeaders.kt @@ -17,6 +17,10 @@ package okhttp3.internal.http +import java.io.EOFException +import java.net.HttpURLConnection.HTTP_NOT_MODIFIED +import java.net.HttpURLConnection.HTTP_NO_CONTENT +import java.util.Collections import okhttp3.Challenge import okhttp3.Cookie import okhttp3.CookieJar @@ -29,10 +33,6 @@ import okhttp3.internal.platform.Platform import okhttp3.internal.skipAll import okio.Buffer import okio.ByteString.Companion.encodeUtf8 -import java.io.EOFException -import java.net.HttpURLConnection.HTTP_NOT_MODIFIED -import java.net.HttpURLConnection.HTTP_NO_CONTENT -import java.util.Collections private val QUOTED_STRING_DELIMITERS = "\"\\".encodeUtf8() private val TOKEN_DELIMITERS = "\t ,=".encodeUtf8() diff --git a/okhttp/src/main/java/okhttp3/internal/http/RealInterceptorChain.kt b/okhttp/src/main/java/okhttp3/internal/http/RealInterceptorChain.kt index 157324d66..c399d06d6 100644 --- a/okhttp/src/main/java/okhttp3/internal/http/RealInterceptorChain.kt +++ b/okhttp/src/main/java/okhttp3/internal/http/RealInterceptorChain.kt @@ -15,6 +15,8 @@ */ package okhttp3.internal.http +import java.io.IOException +import java.util.concurrent.TimeUnit import okhttp3.Call import okhttp3.Connection import okhttp3.Interceptor @@ -23,8 +25,6 @@ import okhttp3.Response import okhttp3.internal.checkDuration import okhttp3.internal.connection.Exchange import okhttp3.internal.connection.Transmitter -import java.io.IOException -import java.util.concurrent.TimeUnit /** * A concrete interceptor chain that carries the entire interceptor chain: all application diff --git a/okhttp/src/main/java/okhttp3/internal/http/RequestLine.kt b/okhttp/src/main/java/okhttp3/internal/http/RequestLine.kt index 068c86f50..917607d4d 100644 --- a/okhttp/src/main/java/okhttp3/internal/http/RequestLine.kt +++ b/okhttp/src/main/java/okhttp3/internal/http/RequestLine.kt @@ -15,10 +15,10 @@ */ package okhttp3.internal.http -import okhttp3.HttpUrl -import okhttp3.Request import java.net.HttpURLConnection import java.net.Proxy +import okhttp3.HttpUrl +import okhttp3.Request object RequestLine { diff --git a/okhttp/src/main/java/okhttp3/internal/http/RetryAndFollowUpInterceptor.kt b/okhttp/src/main/java/okhttp3/internal/http/RetryAndFollowUpInterceptor.kt index 8f156b8ea..ec11ac03e 100644 --- a/okhttp/src/main/java/okhttp3/internal/http/RetryAndFollowUpInterceptor.kt +++ b/okhttp/src/main/java/okhttp3/internal/http/RetryAndFollowUpInterceptor.kt @@ -15,18 +15,6 @@ */ package okhttp3.internal.http -import okhttp3.Interceptor -import okhttp3.OkHttpClient -import okhttp3.Request -import okhttp3.Response -import okhttp3.Route -import okhttp3.internal.closeQuietly -import okhttp3.internal.connection.RouteException -import okhttp3.internal.connection.Transmitter -import okhttp3.internal.http.StatusLine.Companion.HTTP_PERM_REDIRECT -import okhttp3.internal.http.StatusLine.Companion.HTTP_TEMP_REDIRECT -import okhttp3.internal.http2.ConnectionShutdownException -import okhttp3.internal.canReuseConnectionFor import java.io.FileNotFoundException import java.io.IOException import java.io.InterruptedIOException @@ -44,6 +32,18 @@ import java.net.SocketTimeoutException import java.security.cert.CertificateException import javax.net.ssl.SSLHandshakeException import javax.net.ssl.SSLPeerUnverifiedException +import okhttp3.Interceptor +import okhttp3.OkHttpClient +import okhttp3.Request +import okhttp3.Response +import okhttp3.Route +import okhttp3.internal.canReuseConnectionFor +import okhttp3.internal.closeQuietly +import okhttp3.internal.connection.RouteException +import okhttp3.internal.connection.Transmitter +import okhttp3.internal.http.StatusLine.Companion.HTTP_PERM_REDIRECT +import okhttp3.internal.http.StatusLine.Companion.HTTP_TEMP_REDIRECT +import okhttp3.internal.http2.ConnectionShutdownException /** * This interceptor recovers from failures and follows redirects as necessary. It may throw an diff --git a/okhttp/src/main/java/okhttp3/internal/http/StatusLine.kt b/okhttp/src/main/java/okhttp3/internal/http/StatusLine.kt index 73679d04f..eaaf44c55 100644 --- a/okhttp/src/main/java/okhttp3/internal/http/StatusLine.kt +++ b/okhttp/src/main/java/okhttp3/internal/http/StatusLine.kt @@ -15,10 +15,10 @@ */ package okhttp3.internal.http -import okhttp3.Protocol -import okhttp3.Response import java.io.IOException import java.net.ProtocolException +import okhttp3.Protocol +import okhttp3.Response /** An HTTP response status line like "HTTP/1.1 200 OK". */ class StatusLine( @@ -101,4 +101,4 @@ class StatusLine( return StatusLine(protocol, code, message) } } -} \ No newline at end of file +} diff --git a/okhttp/src/main/java/okhttp3/internal/http/dates.kt b/okhttp/src/main/java/okhttp3/internal/http/dates.kt index 0b4675830..e62af4dd6 100644 --- a/okhttp/src/main/java/okhttp3/internal/http/dates.kt +++ b/okhttp/src/main/java/okhttp3/internal/http/dates.kt @@ -15,12 +15,12 @@ */ package okhttp3.internal.http -import okhttp3.internal.UTC import java.text.DateFormat import java.text.ParsePosition import java.text.SimpleDateFormat import java.util.Date import java.util.Locale +import okhttp3.internal.UTC /** The last four-digit year: "Fri, 31 Dec 9999 23:59:59 GMT". */ internal const val MAX_DATE = 253402300799999L diff --git a/okhttp/src/main/java/okhttp3/internal/http1/Http1ExchangeCodec.kt b/okhttp/src/main/java/okhttp3/internal/http1/Http1ExchangeCodec.kt index 2f938073e..2eef6eb7a 100644 --- a/okhttp/src/main/java/okhttp3/internal/http1/Http1ExchangeCodec.kt +++ b/okhttp/src/main/java/okhttp3/internal/http1/Http1ExchangeCodec.kt @@ -15,6 +15,10 @@ */ package okhttp3.internal.http1 +import java.io.EOFException +import java.io.IOException +import java.net.ProtocolException +import java.util.concurrent.TimeUnit.MILLISECONDS import okhttp3.Headers import okhttp3.HttpUrl import okhttp3.OkHttpClient @@ -39,10 +43,6 @@ import okio.ForwardingTimeout import okio.Sink import okio.Source import okio.Timeout -import java.io.EOFException -import java.io.IOException -import java.net.ProtocolException -import java.util.concurrent.TimeUnit.MILLISECONDS /** * A socket connection that can be used to send HTTP/1.1 messages. This class strictly enforces the diff --git a/okhttp/src/main/java/okhttp3/internal/http2/Hpack.kt b/okhttp/src/main/java/okhttp3/internal/http2/Hpack.kt index 292db0bba..5788ee231 100644 --- a/okhttp/src/main/java/okhttp3/internal/http2/Hpack.kt +++ b/okhttp/src/main/java/okhttp3/internal/http2/Hpack.kt @@ -15,6 +15,10 @@ */ package okhttp3.internal.http2 +import java.io.IOException +import java.util.Arrays +import java.util.Collections +import java.util.LinkedHashMap import okhttp3.internal.and import okhttp3.internal.http2.Header.Companion.RESPONSE_STATUS import okhttp3.internal.http2.Header.Companion.TARGET_AUTHORITY @@ -26,10 +30,6 @@ import okio.BufferedSource import okio.ByteString import okio.Source import okio.buffer -import java.io.IOException -import java.util.Arrays -import java.util.Collections -import java.util.LinkedHashMap /** * Read and write HPACK v10. diff --git a/okhttp/src/main/java/okhttp3/internal/http2/Http2Connection.kt b/okhttp/src/main/java/okhttp3/internal/http2/Http2Connection.kt index 0a7f49a29..0327eb401 100644 --- a/okhttp/src/main/java/okhttp3/internal/http2/Http2Connection.kt +++ b/okhttp/src/main/java/okhttp3/internal/http2/Http2Connection.kt @@ -15,6 +15,11 @@ */ package okhttp3.internal.http2 +import java.io.Closeable +import java.io.IOException +import java.io.InterruptedIOException +import java.net.Socket +import java.util.concurrent.TimeUnit import okhttp3.internal.EMPTY_BYTE_ARRAY import okhttp3.internal.EMPTY_HEADERS import okhttp3.internal.assertThreadDoesntHoldLock @@ -36,11 +41,6 @@ import okio.ByteString import okio.buffer import okio.sink import okio.source -import java.io.Closeable -import java.io.IOException -import java.io.InterruptedIOException -import java.net.Socket -import java.util.concurrent.TimeUnit /** * A socket connection to a remote peer. A connection hosts streams which can send and receive diff --git a/okhttp/src/main/java/okhttp3/internal/http2/Http2ExchangeCodec.kt b/okhttp/src/main/java/okhttp3/internal/http2/Http2ExchangeCodec.kt index 6b1964e53..f6f8e7e90 100644 --- a/okhttp/src/main/java/okhttp3/internal/http2/Http2ExchangeCodec.kt +++ b/okhttp/src/main/java/okhttp3/internal/http2/Http2ExchangeCodec.kt @@ -15,6 +15,11 @@ */ package okhttp3.internal.http2 +import java.io.IOException +import java.net.ProtocolException +import java.util.ArrayList +import java.util.Locale +import java.util.concurrent.TimeUnit import okhttp3.Headers import okhttp3.Interceptor import okhttp3.OkHttpClient @@ -40,11 +45,6 @@ import okhttp3.internal.http2.Header.Companion.TARGET_SCHEME_UTF8 import okhttp3.internal.immutableListOf import okio.Sink import okio.Source -import java.io.IOException -import java.net.ProtocolException -import java.util.ArrayList -import java.util.Locale -import java.util.concurrent.TimeUnit /** Encode requests and responses using HTTP/2 frames. */ class Http2ExchangeCodec( diff --git a/okhttp/src/main/java/okhttp3/internal/http2/Http2Reader.kt b/okhttp/src/main/java/okhttp3/internal/http2/Http2Reader.kt index cb7ee5735..73a9c6e0d 100644 --- a/okhttp/src/main/java/okhttp3/internal/http2/Http2Reader.kt +++ b/okhttp/src/main/java/okhttp3/internal/http2/Http2Reader.kt @@ -15,8 +15,13 @@ */ package okhttp3.internal.http2 -import okhttp3.internal.format +import java.io.Closeable +import java.io.EOFException +import java.io.IOException +import java.util.logging.Level.FINE +import java.util.logging.Logger import okhttp3.internal.and +import okhttp3.internal.format import okhttp3.internal.http2.Http2.CONNECTION_PREFACE import okhttp3.internal.http2.Http2.FLAG_ACK import okhttp3.internal.http2.Http2.FLAG_COMPRESSED @@ -42,11 +47,6 @@ import okio.BufferedSource import okio.ByteString import okio.Source import okio.Timeout -import java.io.Closeable -import java.io.EOFException -import java.io.IOException -import java.util.logging.Level.FINE -import java.util.logging.Logger /** * Reads HTTP/2 transport frames. diff --git a/okhttp/src/main/java/okhttp3/internal/http2/Http2Stream.kt b/okhttp/src/main/java/okhttp3/internal/http2/Http2Stream.kt index d9969ded4..97ec84fa2 100644 --- a/okhttp/src/main/java/okhttp3/internal/http2/Http2Stream.kt +++ b/okhttp/src/main/java/okhttp3/internal/http2/Http2Stream.kt @@ -15,6 +15,11 @@ */ package okhttp3.internal.http2 +import java.io.EOFException +import java.io.IOException +import java.io.InterruptedIOException +import java.net.SocketTimeoutException +import java.util.ArrayDeque import okhttp3.Headers import okhttp3.internal.EMPTY_HEADERS import okhttp3.internal.assertThreadDoesntHoldLock @@ -27,11 +32,6 @@ import okio.BufferedSource import okio.Sink import okio.Source import okio.Timeout -import java.io.EOFException -import java.io.IOException -import java.io.InterruptedIOException -import java.net.SocketTimeoutException -import java.util.ArrayDeque /** A logical bidirectional stream. */ @Suppress("NAME_SHADOWING") diff --git a/okhttp/src/main/java/okhttp3/internal/http2/Http2Writer.kt b/okhttp/src/main/java/okhttp3/internal/http2/Http2Writer.kt index 64221e766..c7e6cc0be 100644 --- a/okhttp/src/main/java/okhttp3/internal/http2/Http2Writer.kt +++ b/okhttp/src/main/java/okhttp3/internal/http2/Http2Writer.kt @@ -15,6 +15,10 @@ */ package okhttp3.internal.http2 +import java.io.Closeable +import java.io.IOException +import java.util.logging.Level.FINE +import java.util.logging.Logger import okhttp3.internal.format import okhttp3.internal.http2.Http2.CONNECTION_PREFACE import okhttp3.internal.http2.Http2.FLAG_ACK @@ -35,10 +39,6 @@ import okhttp3.internal.http2.Http2.frameLog import okhttp3.internal.writeMedium import okio.Buffer import okio.BufferedSink -import java.io.Closeable -import java.io.IOException -import java.util.logging.Level.FINE -import java.util.logging.Logger /** Writes HTTP/2 transport frames. */ @Suppress("NAME_SHADOWING") diff --git a/okhttp/src/main/java/okhttp3/internal/http2/Huffman.kt b/okhttp/src/main/java/okhttp3/internal/http2/Huffman.kt index 26e3802d8..122d2821e 100644 --- a/okhttp/src/main/java/okhttp3/internal/http2/Huffman.kt +++ b/okhttp/src/main/java/okhttp3/internal/http2/Huffman.kt @@ -15,11 +15,11 @@ */ package okhttp3.internal.http2 +import java.io.IOException import okhttp3.internal.and import okio.BufferedSink import okio.BufferedSource import okio.ByteString -import java.io.IOException /** * This class was originally composed from the following classes in diff --git a/okhttp/src/main/java/okhttp3/internal/internal.kt b/okhttp/src/main/java/okhttp3/internal/internal.kt index 4b6acc336..36480c243 100644 --- a/okhttp/src/main/java/okhttp3/internal/internal.kt +++ b/okhttp/src/main/java/okhttp3/internal/internal.kt @@ -19,13 +19,13 @@ package okhttp3.internal +import javax.net.ssl.SSLSocket import okhttp3.Cache import okhttp3.ConnectionSpec import okhttp3.Cookie import okhttp3.Headers import okhttp3.HttpUrl import okhttp3.Request -import javax.net.ssl.SSLSocket fun parseCookie(currentTimeMillis: Long, url: HttpUrl, setCookie: String): Cookie? = Cookie.parse(currentTimeMillis, url, setCookie) diff --git a/okhttp/src/main/java/okhttp3/internal/io/FileSystem.kt b/okhttp/src/main/java/okhttp3/internal/io/FileSystem.kt index f97ab68ea..6c075e936 100644 --- a/okhttp/src/main/java/okhttp3/internal/io/FileSystem.kt +++ b/okhttp/src/main/java/okhttp3/internal/io/FileSystem.kt @@ -15,14 +15,14 @@ */ package okhttp3.internal.io -import okio.Source -import okio.source -import okio.Sink -import okio.sink -import okio.appendingSink import java.io.File import java.io.FileNotFoundException import java.io.IOException +import okio.Sink +import okio.Source +import okio.appendingSink +import okio.sink +import okio.source /** * Access to read and write files on a hierarchical data store. Most callers should use the diff --git a/okhttp/src/main/java/okhttp3/internal/platform/Android10Platform.kt b/okhttp/src/main/java/okhttp3/internal/platform/Android10Platform.kt index f47d3b230..a6faad08c 100644 --- a/okhttp/src/main/java/okhttp3/internal/platform/Android10Platform.kt +++ b/okhttp/src/main/java/okhttp3/internal/platform/Android10Platform.kt @@ -17,6 +17,9 @@ package okhttp3.internal.platform import android.os.Build import android.security.NetworkSecurityPolicy +import javax.net.ssl.SSLSocket +import javax.net.ssl.SSLSocketFactory +import javax.net.ssl.X509TrustManager import okhttp3.Protocol import okhttp3.internal.platform.AndroidPlatform.Companion.isAndroid import okhttp3.internal.platform.android.Android10CertificateChainCleaner @@ -25,9 +28,6 @@ import okhttp3.internal.platform.android.ConscryptSocketAdapter import okhttp3.internal.platform.android.DeferredSocketAdapter import okhttp3.internal.platform.android.androidLog import okhttp3.internal.tls.CertificateChainCleaner -import javax.net.ssl.SSLSocket -import javax.net.ssl.SSLSocketFactory -import javax.net.ssl.X509TrustManager /** Android 29+. */ class Android10Platform : Platform() { diff --git a/okhttp/src/main/java/okhttp3/internal/platform/AndroidPlatform.kt b/okhttp/src/main/java/okhttp3/internal/platform/AndroidPlatform.kt index 1cc71f1c8..fa1aa2a78 100644 --- a/okhttp/src/main/java/okhttp3/internal/platform/AndroidPlatform.kt +++ b/okhttp/src/main/java/okhttp3/internal/platform/AndroidPlatform.kt @@ -16,16 +16,6 @@ package okhttp3.internal.platform import android.os.Build -import okhttp3.Protocol -import okhttp3.internal.platform.android.AndroidCertificateChainCleaner -import okhttp3.internal.platform.android.CloseGuard -import okhttp3.internal.platform.android.ConscryptSocketAdapter -import okhttp3.internal.platform.android.DeferredSocketAdapter -import okhttp3.internal.platform.android.StandardAndroidSocketAdapter -import okhttp3.internal.platform.android.androidLog -import okhttp3.internal.tls.BasicTrustRootIndex -import okhttp3.internal.tls.CertificateChainCleaner -import okhttp3.internal.tls.TrustRootIndex import java.io.IOException import java.lang.reflect.InvocationTargetException import java.lang.reflect.Method @@ -36,6 +26,16 @@ import java.security.cert.X509Certificate import javax.net.ssl.SSLSocket import javax.net.ssl.SSLSocketFactory import javax.net.ssl.X509TrustManager +import okhttp3.Protocol +import okhttp3.internal.platform.android.AndroidCertificateChainCleaner +import okhttp3.internal.platform.android.CloseGuard +import okhttp3.internal.platform.android.ConscryptSocketAdapter +import okhttp3.internal.platform.android.DeferredSocketAdapter +import okhttp3.internal.platform.android.StandardAndroidSocketAdapter +import okhttp3.internal.platform.android.androidLog +import okhttp3.internal.tls.BasicTrustRootIndex +import okhttp3.internal.tls.CertificateChainCleaner +import okhttp3.internal.tls.TrustRootIndex /** Android 5+. */ class AndroidPlatform : Platform() { diff --git a/okhttp/src/main/java/okhttp3/internal/platform/ConscryptPlatform.kt b/okhttp/src/main/java/okhttp3/internal/platform/ConscryptPlatform.kt index 12362828c..f4b0991e7 100644 --- a/okhttp/src/main/java/okhttp3/internal/platform/ConscryptPlatform.kt +++ b/okhttp/src/main/java/okhttp3/internal/platform/ConscryptPlatform.kt @@ -15,14 +15,14 @@ */ package okhttp3.internal.platform -import okhttp3.Protocol -import okhttp3.internal.readFieldOrNull -import org.conscrypt.Conscrypt import java.security.Provider import javax.net.ssl.SSLContext import javax.net.ssl.SSLSocket import javax.net.ssl.SSLSocketFactory import javax.net.ssl.X509TrustManager +import okhttp3.Protocol +import okhttp3.internal.readFieldOrNull +import org.conscrypt.Conscrypt /** * Platform using Conscrypt (conscrypt.org) if installed as the first Security Provider. diff --git a/okhttp/src/main/java/okhttp3/internal/platform/Jdk8WithJettyBootPlatform.kt b/okhttp/src/main/java/okhttp3/internal/platform/Jdk8WithJettyBootPlatform.kt index 8bb36f3fd..8d59af4b0 100644 --- a/okhttp/src/main/java/okhttp3/internal/platform/Jdk8WithJettyBootPlatform.kt +++ b/okhttp/src/main/java/okhttp3/internal/platform/Jdk8WithJettyBootPlatform.kt @@ -15,12 +15,12 @@ */ package okhttp3.internal.platform -import okhttp3.Protocol import java.lang.reflect.InvocationHandler import java.lang.reflect.InvocationTargetException import java.lang.reflect.Method import java.lang.reflect.Proxy import javax.net.ssl.SSLSocket +import okhttp3.Protocol /** OpenJDK 8 with `org.mortbay.jetty.alpn:alpn-boot` in the boot class path. */ class Jdk8WithJettyBootPlatform( diff --git a/okhttp/src/main/java/okhttp3/internal/platform/Jdk9Platform.kt b/okhttp/src/main/java/okhttp3/internal/platform/Jdk9Platform.kt index 1368cb86b..5b2860a0a 100644 --- a/okhttp/src/main/java/okhttp3/internal/platform/Jdk9Platform.kt +++ b/okhttp/src/main/java/okhttp3/internal/platform/Jdk9Platform.kt @@ -15,10 +15,10 @@ */ package okhttp3.internal.platform -import okhttp3.Protocol import javax.net.ssl.SSLSocket import javax.net.ssl.SSLSocketFactory import javax.net.ssl.X509TrustManager +import okhttp3.Protocol /** OpenJDK 9+. */ open class Jdk9Platform : Platform() { diff --git a/okhttp/src/main/java/okhttp3/internal/platform/OpenJSSEPlatform.kt b/okhttp/src/main/java/okhttp3/internal/platform/OpenJSSEPlatform.kt index ae9cf5e05..122d2a07b 100644 --- a/okhttp/src/main/java/okhttp3/internal/platform/OpenJSSEPlatform.kt +++ b/okhttp/src/main/java/okhttp3/internal/platform/OpenJSSEPlatform.kt @@ -15,7 +15,6 @@ */ package okhttp3.internal.platform -import okhttp3.Protocol import java.security.KeyStore import java.security.Provider import javax.net.ssl.SSLContext @@ -23,6 +22,7 @@ import javax.net.ssl.SSLSocket import javax.net.ssl.SSLSocketFactory import javax.net.ssl.TrustManagerFactory import javax.net.ssl.X509TrustManager +import okhttp3.Protocol /** * Platform using OpenJSSE (https://github.com/openjsse/openjsse) if installed as the first diff --git a/okhttp/src/main/java/okhttp3/internal/platform/Platform.kt b/okhttp/src/main/java/okhttp3/internal/platform/Platform.kt index e318e9a34..9976455c6 100644 --- a/okhttp/src/main/java/okhttp3/internal/platform/Platform.kt +++ b/okhttp/src/main/java/okhttp3/internal/platform/Platform.kt @@ -16,14 +16,6 @@ */ package okhttp3.internal.platform -import okhttp3.OkHttpClient -import okhttp3.Protocol -import okhttp3.internal.readFieldOrNull -import okhttp3.internal.tls.BasicCertificateChainCleaner -import okhttp3.internal.tls.BasicTrustRootIndex -import okhttp3.internal.tls.CertificateChainCleaner -import okhttp3.internal.tls.TrustRootIndex -import okio.Buffer import java.io.IOException import java.net.InetSocketAddress import java.net.Socket @@ -36,6 +28,14 @@ import javax.net.ssl.SSLSocket import javax.net.ssl.SSLSocketFactory import javax.net.ssl.TrustManagerFactory import javax.net.ssl.X509TrustManager +import okhttp3.OkHttpClient +import okhttp3.Protocol +import okhttp3.internal.readFieldOrNull +import okhttp3.internal.tls.BasicCertificateChainCleaner +import okhttp3.internal.tls.BasicTrustRootIndex +import okhttp3.internal.tls.CertificateChainCleaner +import okhttp3.internal.tls.TrustRootIndex +import okio.Buffer /** * Access to platform-specific features. diff --git a/okhttp/src/main/java/okhttp3/internal/platform/android/Android10CertificateChainCleaner.kt b/okhttp/src/main/java/okhttp3/internal/platform/android/Android10CertificateChainCleaner.kt index 7fa4a087d..a2b0f8aaf 100644 --- a/okhttp/src/main/java/okhttp3/internal/platform/android/Android10CertificateChainCleaner.kt +++ b/okhttp/src/main/java/okhttp3/internal/platform/android/Android10CertificateChainCleaner.kt @@ -16,13 +16,13 @@ package okhttp3.internal.platform.android import android.net.http.X509TrustManagerExtensions -import okhttp3.internal.tls.CertificateChainCleaner import java.lang.IllegalArgumentException import java.security.cert.Certificate import java.security.cert.CertificateException import java.security.cert.X509Certificate import javax.net.ssl.SSLPeerUnverifiedException import javax.net.ssl.X509TrustManager +import okhttp3.internal.tls.CertificateChainCleaner /** * Android Q+ implementation of CertificateChainCleaner using direct Android API calls. @@ -68,4 +68,4 @@ internal class Android10CertificateChainCleaner( } } } -} \ No newline at end of file +} diff --git a/okhttp/src/main/java/okhttp3/internal/platform/android/Android10SocketAdapter.kt b/okhttp/src/main/java/okhttp3/internal/platform/android/Android10SocketAdapter.kt index d5687a2f3..5979e99dc 100644 --- a/okhttp/src/main/java/okhttp3/internal/platform/android/Android10SocketAdapter.kt +++ b/okhttp/src/main/java/okhttp3/internal/platform/android/Android10SocketAdapter.kt @@ -17,12 +17,12 @@ package okhttp3.internal.platform.android import android.net.SSLCertificateSocketFactory import android.os.Build -import okhttp3.Protocol -import okhttp3.internal.platform.AndroidPlatform.Companion.isAndroid -import okhttp3.internal.platform.Platform import javax.net.ssl.SSLSocket import javax.net.ssl.SSLSocketFactory import javax.net.ssl.X509TrustManager +import okhttp3.Protocol +import okhttp3.internal.platform.AndroidPlatform.Companion.isAndroid +import okhttp3.internal.platform.Platform /** * Simple non-reflection SocketAdapter for Android Q. diff --git a/okhttp/src/main/java/okhttp3/internal/platform/android/AndroidCertificateChainCleaner.kt b/okhttp/src/main/java/okhttp3/internal/platform/android/AndroidCertificateChainCleaner.kt index 5e24c571d..a497d2a7a 100644 --- a/okhttp/src/main/java/okhttp3/internal/platform/android/AndroidCertificateChainCleaner.kt +++ b/okhttp/src/main/java/okhttp3/internal/platform/android/AndroidCertificateChainCleaner.kt @@ -15,13 +15,13 @@ */ package okhttp3.internal.platform.android -import okhttp3.internal.tls.CertificateChainCleaner import java.lang.reflect.InvocationTargetException import java.lang.reflect.Method import java.security.cert.Certificate import java.security.cert.X509Certificate import javax.net.ssl.SSLPeerUnverifiedException import javax.net.ssl.X509TrustManager +import okhttp3.internal.tls.CertificateChainCleaner /** * Legacy Android implementation of CertificateChainCleaner relying on reflection. @@ -68,4 +68,4 @@ internal class AndroidCertificateChainCleaner( null } } -} \ No newline at end of file +} diff --git a/okhttp/src/main/java/okhttp3/internal/platform/android/AndroidSocketAdapter.kt b/okhttp/src/main/java/okhttp3/internal/platform/android/AndroidSocketAdapter.kt index a4463e8b6..f5d8fcdf1 100644 --- a/okhttp/src/main/java/okhttp3/internal/platform/android/AndroidSocketAdapter.kt +++ b/okhttp/src/main/java/okhttp3/internal/platform/android/AndroidSocketAdapter.kt @@ -15,15 +15,15 @@ */ package okhttp3.internal.platform.android -import okhttp3.Protocol -import okhttp3.internal.platform.AndroidPlatform -import okhttp3.internal.platform.Platform import java.lang.reflect.InvocationTargetException import java.lang.reflect.Method import java.nio.charset.StandardCharsets import javax.net.ssl.SSLSocket import javax.net.ssl.SSLSocketFactory import javax.net.ssl.X509TrustManager +import okhttp3.Protocol +import okhttp3.internal.platform.AndroidPlatform +import okhttp3.internal.platform.Platform /** * Modern reflection based SocketAdapter for Conscrypt class SSLSockets. diff --git a/okhttp/src/main/java/okhttp3/internal/platform/android/ConscryptSocketAdapter.kt b/okhttp/src/main/java/okhttp3/internal/platform/android/ConscryptSocketAdapter.kt index 99fadf2b9..14bcefb7b 100644 --- a/okhttp/src/main/java/okhttp3/internal/platform/android/ConscryptSocketAdapter.kt +++ b/okhttp/src/main/java/okhttp3/internal/platform/android/ConscryptSocketAdapter.kt @@ -15,13 +15,13 @@ */ package okhttp3.internal.platform.android +import javax.net.ssl.SSLSocket +import javax.net.ssl.SSLSocketFactory +import javax.net.ssl.X509TrustManager import okhttp3.Protocol import okhttp3.internal.platform.ConscryptPlatform import okhttp3.internal.platform.Platform import org.conscrypt.Conscrypt -import javax.net.ssl.SSLSocket -import javax.net.ssl.SSLSocketFactory -import javax.net.ssl.X509TrustManager /** * Simple non-reflection SocketAdapter for Conscrypt. diff --git a/okhttp/src/main/java/okhttp3/internal/platform/android/DeferredSocketAdapter.kt b/okhttp/src/main/java/okhttp3/internal/platform/android/DeferredSocketAdapter.kt index d720f286f..86b54c7e2 100644 --- a/okhttp/src/main/java/okhttp3/internal/platform/android/DeferredSocketAdapter.kt +++ b/okhttp/src/main/java/okhttp3/internal/platform/android/DeferredSocketAdapter.kt @@ -15,11 +15,11 @@ */ package okhttp3.internal.platform.android -import okhttp3.Protocol -import okhttp3.internal.platform.Platform import javax.net.ssl.SSLSocket import javax.net.ssl.SSLSocketFactory import javax.net.ssl.X509TrustManager +import okhttp3.Protocol +import okhttp3.internal.platform.Platform /** * Deferred implementation of SocketAdapter that can only work by observing the socket diff --git a/okhttp/src/main/java/okhttp3/internal/platform/android/SocketAdapter.kt b/okhttp/src/main/java/okhttp3/internal/platform/android/SocketAdapter.kt index bc7ba79d1..3bb45dc22 100644 --- a/okhttp/src/main/java/okhttp3/internal/platform/android/SocketAdapter.kt +++ b/okhttp/src/main/java/okhttp3/internal/platform/android/SocketAdapter.kt @@ -15,10 +15,10 @@ */ package okhttp3.internal.platform.android -import okhttp3.Protocol import javax.net.ssl.SSLSocket import javax.net.ssl.SSLSocketFactory import javax.net.ssl.X509TrustManager +import okhttp3.Protocol interface SocketAdapter { fun isSupported(): Boolean diff --git a/okhttp/src/main/java/okhttp3/internal/platform/android/StandardAndroidSocketAdapter.kt b/okhttp/src/main/java/okhttp3/internal/platform/android/StandardAndroidSocketAdapter.kt index 4974b2308..e5c0610ca 100644 --- a/okhttp/src/main/java/okhttp3/internal/platform/android/StandardAndroidSocketAdapter.kt +++ b/okhttp/src/main/java/okhttp3/internal/platform/android/StandardAndroidSocketAdapter.kt @@ -15,11 +15,11 @@ */ package okhttp3.internal.platform.android -import okhttp3.internal.platform.Platform -import okhttp3.internal.readFieldOrNull import javax.net.ssl.SSLSocket import javax.net.ssl.SSLSocketFactory import javax.net.ssl.X509TrustManager +import okhttp3.internal.platform.Platform +import okhttp3.internal.readFieldOrNull /** * Base Android reflection based SocketAdapter for the built in Android SSLSocket. diff --git a/okhttp/src/main/java/okhttp3/internal/platform/android/util.kt b/okhttp/src/main/java/okhttp3/internal/platform/android/util.kt index 71a701232..b8f40dfc5 100644 --- a/okhttp/src/main/java/okhttp3/internal/platform/android/util.kt +++ b/okhttp/src/main/java/okhttp3/internal/platform/android/util.kt @@ -41,4 +41,4 @@ internal fun androidLog(level: Int, message: String, t: Throwable?) { } while (i < newline) i++ } -} \ No newline at end of file +} diff --git a/okhttp/src/main/java/okhttp3/internal/publicsuffix/PublicSuffixDatabase.kt b/okhttp/src/main/java/okhttp3/internal/publicsuffix/PublicSuffixDatabase.kt index 8e4a4c367..589436c21 100644 --- a/okhttp/src/main/java/okhttp3/internal/publicsuffix/PublicSuffixDatabase.kt +++ b/okhttp/src/main/java/okhttp3/internal/publicsuffix/PublicSuffixDatabase.kt @@ -15,17 +15,17 @@ */ package okhttp3.internal.publicsuffix -import okhttp3.internal.and -import okhttp3.internal.platform.Platform -import okio.GzipSource -import okio.buffer -import okio.source import java.io.IOException import java.io.InterruptedIOException import java.net.IDN import java.nio.charset.StandardCharsets.UTF_8 import java.util.concurrent.CountDownLatch import java.util.concurrent.atomic.AtomicBoolean +import okhttp3.internal.and +import okhttp3.internal.platform.Platform +import okio.GzipSource +import okio.buffer +import okio.source /** * A database of public suffixes provided by [publicsuffix.org][publicsuffix_org]. diff --git a/okhttp/src/main/java/okhttp3/internal/tls/CertificateChainCleaner.kt b/okhttp/src/main/java/okhttp3/internal/tls/CertificateChainCleaner.kt index 43f225a66..c7080a458 100644 --- a/okhttp/src/main/java/okhttp3/internal/tls/CertificateChainCleaner.kt +++ b/okhttp/src/main/java/okhttp3/internal/tls/CertificateChainCleaner.kt @@ -16,11 +16,11 @@ */ package okhttp3.internal.tls -import okhttp3.internal.platform.Platform import java.security.cert.Certificate import java.security.cert.X509Certificate import javax.net.ssl.SSLPeerUnverifiedException import javax.net.ssl.X509TrustManager +import okhttp3.internal.platform.Platform /** * Computes the effective certificate chain from the raw array returned by Java's built in TLS APIs. diff --git a/okhttp/src/main/java/okhttp3/internal/tls/OkHostnameVerifier.kt b/okhttp/src/main/java/okhttp3/internal/tls/OkHostnameVerifier.kt index df3ee9b1c..4b0954cca 100644 --- a/okhttp/src/main/java/okhttp3/internal/tls/OkHostnameVerifier.kt +++ b/okhttp/src/main/java/okhttp3/internal/tls/OkHostnameVerifier.kt @@ -16,13 +16,13 @@ */ package okhttp3.internal.tls -import okhttp3.internal.canParseAsIpAddress import java.security.cert.CertificateParsingException import java.security.cert.X509Certificate import java.util.Locale import javax.net.ssl.HostnameVerifier import javax.net.ssl.SSLException import javax.net.ssl.SSLSession +import okhttp3.internal.canParseAsIpAddress /** * A HostnameVerifier consistent with [RFC 2818][rfc_2818]. diff --git a/okhttp/src/main/java/okhttp3/internal/ws/RealWebSocket.kt b/okhttp/src/main/java/okhttp3/internal/ws/RealWebSocket.kt index 5febac244..a245ce142 100644 --- a/okhttp/src/main/java/okhttp3/internal/ws/RealWebSocket.kt +++ b/okhttp/src/main/java/okhttp3/internal/ws/RealWebSocket.kt @@ -15,6 +15,14 @@ */ package okhttp3.internal.ws +import java.io.Closeable +import java.io.IOException +import java.net.ProtocolException +import java.net.SocketTimeoutException +import java.util.ArrayDeque +import java.util.Random +import java.util.concurrent.TimeUnit +import java.util.concurrent.TimeUnit.MILLISECONDS import okhttp3.Call import okhttp3.Callback import okhttp3.EventListener @@ -41,14 +49,6 @@ import okio.ByteString import okio.ByteString.Companion.encodeUtf8 import okio.ByteString.Companion.toByteString import okio.buffer -import java.io.Closeable -import java.io.IOException -import java.net.ProtocolException -import java.net.SocketTimeoutException -import java.util.ArrayDeque -import java.util.Random -import java.util.concurrent.TimeUnit -import java.util.concurrent.TimeUnit.MILLISECONDS class RealWebSocket( taskRunner: TaskRunner, diff --git a/okhttp/src/main/java/okhttp3/internal/ws/WebSocketReader.kt b/okhttp/src/main/java/okhttp3/internal/ws/WebSocketReader.kt index 17abe3dcd..63ce42bdb 100644 --- a/okhttp/src/main/java/okhttp3/internal/ws/WebSocketReader.kt +++ b/okhttp/src/main/java/okhttp3/internal/ws/WebSocketReader.kt @@ -15,6 +15,9 @@ */ package okhttp3.internal.ws +import java.io.IOException +import java.net.ProtocolException +import java.util.concurrent.TimeUnit import okhttp3.internal.and import okhttp3.internal.toHexString import okhttp3.internal.ws.WebSocketProtocol.B0_FLAG_FIN @@ -39,9 +42,6 @@ import okhttp3.internal.ws.WebSocketProtocol.toggleMask import okio.Buffer import okio.BufferedSource import okio.ByteString -import java.io.IOException -import java.net.ProtocolException -import java.util.concurrent.TimeUnit /** * An [RFC 6455][rfc_6455]-compatible WebSocket frame reader. diff --git a/okhttp/src/main/java/okhttp3/internal/ws/WebSocketWriter.kt b/okhttp/src/main/java/okhttp3/internal/ws/WebSocketWriter.kt index 60d88210d..8961efe20 100644 --- a/okhttp/src/main/java/okhttp3/internal/ws/WebSocketWriter.kt +++ b/okhttp/src/main/java/okhttp3/internal/ws/WebSocketWriter.kt @@ -15,6 +15,8 @@ */ package okhttp3.internal.ws +import java.io.IOException +import java.util.Random import okhttp3.internal.ws.WebSocketProtocol.B0_FLAG_FIN import okhttp3.internal.ws.WebSocketProtocol.B1_FLAG_MASK import okhttp3.internal.ws.WebSocketProtocol.OPCODE_CONTINUATION @@ -32,8 +34,6 @@ import okio.BufferedSink import okio.ByteString import okio.Sink import okio.Timeout -import java.io.IOException -import java.util.Random /** * An [RFC 6455][rfc_6455]-compatible WebSocket frame writer. diff --git a/okhttp/src/test/java/okhttp3/BouncyCastleTest.kt b/okhttp/src/test/java/okhttp3/BouncyCastleTest.kt index 55ba5eb8a..1eed03c7a 100644 --- a/okhttp/src/test/java/okhttp3/BouncyCastleTest.kt +++ b/okhttp/src/test/java/okhttp3/BouncyCastleTest.kt @@ -15,6 +15,7 @@ */ package okhttp3 +import java.net.InetAddress import okhttp3.TestUtil.assumeNetwork import okhttp3.mockwebserver.MockResponse import okhttp3.mockwebserver.MockWebServer @@ -29,7 +30,6 @@ import org.junit.Rule import org.junit.Test import org.openjsse.sun.security.ssl.SSLSocketFactoryImpl import org.openjsse.sun.security.ssl.SSLSocketImpl -import java.net.InetAddress class BouncyCastleTest { @JvmField @Rule var platform = PlatformRule() diff --git a/okhttp/src/test/java/okhttp3/CallKotlinTest.kt b/okhttp/src/test/java/okhttp3/CallKotlinTest.kt index f70e6c46a..7b4096779 100644 --- a/okhttp/src/test/java/okhttp3/CallKotlinTest.kt +++ b/okhttp/src/test/java/okhttp3/CallKotlinTest.kt @@ -15,6 +15,9 @@ */ package okhttp3 +import java.io.IOException +import java.security.cert.X509Certificate +import java.util.concurrent.TimeUnit import okhttp3.MediaType.Companion.toMediaType import okhttp3.mockwebserver.MockResponse import okhttp3.mockwebserver.MockWebServer @@ -28,9 +31,6 @@ import org.junit.Rule import org.junit.Test import org.junit.rules.TestRule import org.junit.rules.Timeout -import java.io.IOException -import java.security.cert.X509Certificate -import java.util.concurrent.TimeUnit class CallKotlinTest { @JvmField @Rule val platform = PlatformRule() diff --git a/okhttp/src/test/java/okhttp3/HandshakeTest.kt b/okhttp/src/test/java/okhttp3/HandshakeTest.kt index 80e6bcc03..4f6fbac05 100644 --- a/okhttp/src/test/java/okhttp3/HandshakeTest.kt +++ b/okhttp/src/test/java/okhttp3/HandshakeTest.kt @@ -15,13 +15,13 @@ */ package okhttp3 +import java.io.IOException +import java.security.cert.Certificate import okhttp3.Handshake.Companion.handshake import okhttp3.tls.HeldCertificate import org.assertj.core.api.Assertions.assertThat import org.junit.Assert.fail import org.junit.Test -import java.io.IOException -import java.security.cert.Certificate class HandshakeTest { val serverRoot = HeldCertificate.Builder() diff --git a/okhttp/src/test/java/okhttp3/HeadersKotlinTest.kt b/okhttp/src/test/java/okhttp3/HeadersKotlinTest.kt index 73b54ff1d..dc6ded82e 100644 --- a/okhttp/src/test/java/okhttp3/HeadersKotlinTest.kt +++ b/okhttp/src/test/java/okhttp3/HeadersKotlinTest.kt @@ -15,11 +15,11 @@ */ package okhttp3 +import java.time.Instant +import java.util.Date import okhttp3.Headers.Companion.headersOf import org.assertj.core.api.Assertions.assertThat import org.junit.Test -import java.time.Instant -import java.util.Date class HeadersKotlinTest { @Test fun getOperator() { diff --git a/okhttp/src/test/java/okhttp3/KotlinDeprecationErrorTest.kt b/okhttp/src/test/java/okhttp3/KotlinDeprecationErrorTest.kt index 551a0d6f6..ad0b79f34 100644 --- a/okhttp/src/test/java/okhttp3/KotlinDeprecationErrorTest.kt +++ b/okhttp/src/test/java/okhttp3/KotlinDeprecationErrorTest.kt @@ -15,19 +15,6 @@ */ package okhttp3 -import okhttp3.internal.proxy.NullProxySelector -import okhttp3.logging.HttpLoggingInterceptor -import okhttp3.mockwebserver.MockResponse -import okhttp3.mockwebserver.MockWebServer -import okhttp3.mockwebserver.PushPromise -import okhttp3.mockwebserver.RecordedRequest -import okhttp3.mockwebserver.SocketPolicy -import okhttp3.tls.HandshakeCertificates -import okhttp3.tls.HeldCertificate -import okhttp3.tls.internal.TlsUtil.localhost -import okio.Buffer -import org.junit.Ignore -import org.junit.Test import java.io.File import java.net.InetSocketAddress import java.net.Proxy @@ -47,6 +34,19 @@ import javax.net.ssl.SSLSocket import javax.net.ssl.SSLSocketFactory import javax.net.ssl.X509KeyManager import javax.net.ssl.X509TrustManager +import okhttp3.internal.proxy.NullProxySelector +import okhttp3.logging.HttpLoggingInterceptor +import okhttp3.mockwebserver.MockResponse +import okhttp3.mockwebserver.MockWebServer +import okhttp3.mockwebserver.PushPromise +import okhttp3.mockwebserver.RecordedRequest +import okhttp3.mockwebserver.SocketPolicy +import okhttp3.tls.HandshakeCertificates +import okhttp3.tls.HeldCertificate +import okhttp3.tls.internal.TlsUtil.localhost +import okio.Buffer +import org.junit.Ignore +import org.junit.Test /** * Access every declaration that is deprecated with [DeprecationLevel.ERROR]. Although new Kotlin diff --git a/okhttp/src/test/java/okhttp3/KotlinSourceModernTest.kt b/okhttp/src/test/java/okhttp3/KotlinSourceModernTest.kt index 2d76da8ed..a687975a9 100644 --- a/okhttp/src/test/java/okhttp3/KotlinSourceModernTest.kt +++ b/okhttp/src/test/java/okhttp3/KotlinSourceModernTest.kt @@ -15,38 +15,6 @@ */ package okhttp3 -import okhttp3.Handshake.Companion.handshake -import okhttp3.Headers.Companion.headersOf -import okhttp3.Headers.Companion.toHeaders -import okhttp3.HttpUrl.Companion.toHttpUrl -import okhttp3.HttpUrl.Companion.toHttpUrlOrNull -import okhttp3.MediaType.Companion.toMediaType -import okhttp3.MediaType.Companion.toMediaTypeOrNull -import okhttp3.RequestBody.Companion.toRequestBody -import okhttp3.RequestBody.Companion.asRequestBody -import okhttp3.ResponseBody.Companion.toResponseBody -import okhttp3.ResponseBody.Companion.asResponseBody -import okhttp3.internal.http2.Settings -import okhttp3.internal.proxy.NullProxySelector -import okhttp3.internal.tls.OkHostnameVerifier -import okhttp3.logging.HttpLoggingInterceptor -import okhttp3.logging.LoggingEventListener -import okhttp3.mockwebserver.MockResponse -import okhttp3.mockwebserver.MockWebServer -import okhttp3.mockwebserver.PushPromise -import okhttp3.mockwebserver.QueueDispatcher -import okhttp3.mockwebserver.RecordedRequest -import okhttp3.mockwebserver.SocketPolicy -import okhttp3.tls.HandshakeCertificates -import okhttp3.tls.HeldCertificate -import okhttp3.tls.internal.TlsUtil.localhost -import okio.Buffer -import okio.BufferedSink -import okio.BufferedSource -import okio.ByteString -import okio.Timeout -import org.junit.Ignore -import org.junit.Test import java.io.File import java.io.IOException import java.math.BigInteger @@ -78,6 +46,38 @@ import javax.net.ssl.SSLSocket import javax.net.ssl.SSLSocketFactory import javax.net.ssl.X509KeyManager import javax.net.ssl.X509TrustManager +import okhttp3.Handshake.Companion.handshake +import okhttp3.Headers.Companion.headersOf +import okhttp3.Headers.Companion.toHeaders +import okhttp3.HttpUrl.Companion.toHttpUrl +import okhttp3.HttpUrl.Companion.toHttpUrlOrNull +import okhttp3.MediaType.Companion.toMediaType +import okhttp3.MediaType.Companion.toMediaTypeOrNull +import okhttp3.RequestBody.Companion.asRequestBody +import okhttp3.RequestBody.Companion.toRequestBody +import okhttp3.ResponseBody.Companion.asResponseBody +import okhttp3.ResponseBody.Companion.toResponseBody +import okhttp3.internal.http2.Settings +import okhttp3.internal.proxy.NullProxySelector +import okhttp3.internal.tls.OkHostnameVerifier +import okhttp3.logging.HttpLoggingInterceptor +import okhttp3.logging.LoggingEventListener +import okhttp3.mockwebserver.MockResponse +import okhttp3.mockwebserver.MockWebServer +import okhttp3.mockwebserver.PushPromise +import okhttp3.mockwebserver.QueueDispatcher +import okhttp3.mockwebserver.RecordedRequest +import okhttp3.mockwebserver.SocketPolicy +import okhttp3.tls.HandshakeCertificates +import okhttp3.tls.HeldCertificate +import okhttp3.tls.internal.TlsUtil.localhost +import okio.Buffer +import okio.BufferedSink +import okio.BufferedSource +import okio.ByteString +import okio.Timeout +import org.junit.Ignore +import org.junit.Test /** * Access every type, function, and property from Kotlin to defend against unexpected regressions in diff --git a/okhttp/src/test/java/okhttp3/OpenJSSETest.kt b/okhttp/src/test/java/okhttp3/OpenJSSETest.kt index 8b4ac7392..21015a27a 100644 --- a/okhttp/src/test/java/okhttp3/OpenJSSETest.kt +++ b/okhttp/src/test/java/okhttp3/OpenJSSETest.kt @@ -15,6 +15,7 @@ */ package okhttp3 +import java.net.InetAddress import okhttp3.TestUtil.assumeNetwork import okhttp3.internal.platform.OpenJSSEPlatform import okhttp3.mockwebserver.MockResponse @@ -30,7 +31,6 @@ import org.junit.Rule import org.junit.Test import org.openjsse.sun.security.ssl.SSLSocketFactoryImpl import org.openjsse.sun.security.ssl.SSLSocketImpl -import java.net.InetAddress class OpenJSSETest { @JvmField @Rule var platform = PlatformRule() diff --git a/okhttp/src/test/java/okhttp3/RecordingExecutor.kt b/okhttp/src/test/java/okhttp3/RecordingExecutor.kt index 3b57f1564..b2719a38d 100644 --- a/okhttp/src/test/java/okhttp3/RecordingExecutor.kt +++ b/okhttp/src/test/java/okhttp3/RecordingExecutor.kt @@ -15,10 +15,10 @@ */ package okhttp3 -import org.assertj.core.api.Assertions.assertThat import java.util.concurrent.AbstractExecutorService import java.util.concurrent.RejectedExecutionException import java.util.concurrent.TimeUnit +import org.assertj.core.api.Assertions.assertThat internal class RecordingExecutor( private val dispatcherTest: DispatcherTest diff --git a/okhttp/src/test/java/okhttp3/internal/UtilTest.kt b/okhttp/src/test/java/okhttp3/internal/UtilTest.kt index 6e9d05f7a..bde87b4c3 100644 --- a/okhttp/src/test/java/okhttp3/internal/UtilTest.kt +++ b/okhttp/src/test/java/okhttp3/internal/UtilTest.kt @@ -15,10 +15,10 @@ */ package okhttp3.internal +import java.util.LinkedHashMap import org.assertj.core.api.Assertions.assertThat import org.junit.Assert.fail import org.junit.Test -import java.util.LinkedHashMap class UtilTest { @Test fun immutableMap() { diff --git a/okhttp/src/test/java/okhttp3/internal/concurrent/TaskFaker.kt b/okhttp/src/test/java/okhttp3/internal/concurrent/TaskFaker.kt index 7e8565303..4e0c49052 100644 --- a/okhttp/src/test/java/okhttp3/internal/concurrent/TaskFaker.kt +++ b/okhttp/src/test/java/okhttp3/internal/concurrent/TaskFaker.kt @@ -15,12 +15,12 @@ */ package okhttp3.internal.concurrent +import java.util.concurrent.Executors import okhttp3.internal.assertThreadDoesntHoldLock import okhttp3.internal.assertThreadHoldsLock import okhttp3.internal.notify import okhttp3.internal.wait import org.assertj.core.api.Assertions.assertThat -import java.util.concurrent.Executors /** * Runs a [TaskRunner] in a controlled environment so that everything is sequential and diff --git a/okhttp/src/test/java/okhttp3/internal/concurrent/TaskRunnerRealBackendTest.kt b/okhttp/src/test/java/okhttp3/internal/concurrent/TaskRunnerRealBackendTest.kt index a04cf5c45..f920f0758 100644 --- a/okhttp/src/test/java/okhttp3/internal/concurrent/TaskRunnerRealBackendTest.kt +++ b/okhttp/src/test/java/okhttp3/internal/concurrent/TaskRunnerRealBackendTest.kt @@ -15,14 +15,14 @@ */ package okhttp3.internal.concurrent -import org.assertj.core.api.Assertions.assertThat -import org.assertj.core.data.Offset -import org.junit.After -import org.junit.Test import java.lang.Thread.UncaughtExceptionHandler import java.util.concurrent.LinkedBlockingDeque import java.util.concurrent.ThreadFactory import java.util.concurrent.TimeUnit +import org.assertj.core.api.Assertions.assertThat +import org.assertj.core.data.Offset +import org.junit.After +import org.junit.Test /** * Integration test to confirm that [TaskRunner] works with a real backend. Business logic is all diff --git a/okhttp/src/test/java/okhttp3/internal/concurrent/TaskRunnerTest.kt b/okhttp/src/test/java/okhttp3/internal/concurrent/TaskRunnerTest.kt index 36cd743e5..fb0ab02b1 100644 --- a/okhttp/src/test/java/okhttp3/internal/concurrent/TaskRunnerTest.kt +++ b/okhttp/src/test/java/okhttp3/internal/concurrent/TaskRunnerTest.kt @@ -15,12 +15,12 @@ */ package okhttp3.internal.concurrent +import java.util.concurrent.RejectedExecutionException import okhttp3.TestLogHandler import org.assertj.core.api.Assertions.assertThat import org.junit.Assert.fail import org.junit.Rule import org.junit.Test -import java.util.concurrent.RejectedExecutionException class TaskRunnerTest { @Rule @JvmField val testLogHandler = TestLogHandler(TaskRunner::class.java) diff --git a/okhttp/src/test/java/okhttp3/internal/http/HttpDateTest.kt b/okhttp/src/test/java/okhttp3/internal/http/HttpDateTest.kt index a1c5dbd54..825dec64e 100644 --- a/okhttp/src/test/java/okhttp3/internal/http/HttpDateTest.kt +++ b/okhttp/src/test/java/okhttp3/internal/http/HttpDateTest.kt @@ -15,12 +15,12 @@ */ package okhttp3.internal.http +import java.util.Date +import java.util.TimeZone import org.assertj.core.api.Assertions.assertThat import org.junit.After import org.junit.Before import org.junit.Test -import java.util.Date -import java.util.TimeZone class HttpDateTest { diff --git a/okhttp/src/test/java/okhttp3/internal/http2/HttpOverHttp2Test.java b/okhttp/src/test/java/okhttp3/internal/http2/HttpOverHttp2Test.java index 528f3cc75..8ad69c405 100644 --- a/okhttp/src/test/java/okhttp3/internal/http2/HttpOverHttp2Test.java +++ b/okhttp/src/test/java/okhttp3/internal/http2/HttpOverHttp2Test.java @@ -33,6 +33,7 @@ import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicReference; import java.util.logging.Logger; import javax.annotation.Nullable; +import javax.net.ssl.SSLException; import okhttp3.Cache; import okhttp3.Call; import okhttp3.Callback; @@ -1337,7 +1338,7 @@ public final class HttpOverHttp2Test { try { call1.execute(); fail(); - } catch (SocketTimeoutException expected) { + } catch (SocketTimeoutException | SSLException expected) { } // The second call times out because it uses the same bad connection. diff --git a/okhttp/src/test/java/okhttp3/internal/platform/android/AndroidSocketAdapterTest.kt b/okhttp/src/test/java/okhttp3/internal/platform/android/AndroidSocketAdapterTest.kt index f23cc7024..fe91f3d49 100644 --- a/okhttp/src/test/java/okhttp3/internal/platform/android/AndroidSocketAdapterTest.kt +++ b/okhttp/src/test/java/okhttp3/internal/platform/android/AndroidSocketAdapterTest.kt @@ -15,6 +15,9 @@ */ package okhttp3.internal.platform.android +import java.security.Provider +import javax.net.ssl.SSLContext +import javax.net.ssl.SSLSocket import okhttp3.DelegatingSSLSocket import okhttp3.DelegatingSSLSocketFactory import okhttp3.Protocol.HTTP_1_1 @@ -31,9 +34,6 @@ import org.junit.Rule import org.junit.Test import org.junit.runner.RunWith import org.junit.runners.Parameterized -import java.security.Provider -import javax.net.ssl.SSLContext -import javax.net.ssl.SSLSocket @RunWith(Parameterized::class) class AndroidSocketAdapterTest(private val adapter: SocketAdapter) { diff --git a/okhttp/src/test/java/okhttp3/internal/ws/WebSocketWriterTest.java b/okhttp/src/test/java/okhttp3/internal/ws/WebSocketWriterTest.java index 0d3cbe917..2e12a4233 100644 --- a/okhttp/src/test/java/okhttp3/internal/ws/WebSocketWriterTest.java +++ b/okhttp/src/test/java/okhttp3/internal/ws/WebSocketWriterTest.java @@ -106,11 +106,11 @@ public final class WebSocketWriterTest { BufferedSink sink = Okio.buffer(serverWriter.newMessageSink(OPCODE_TEXT, length)); Buffer body = bytes.clone(); - sink.write(body.readByteString(20_000)); - sink.write(body.readByteString(20_000)); - sink.write(body.readByteString(20_000)); - sink.write(body.readByteString(20_000)); - sink.write(body.readByteString(20_000)); + sink.write(body.readByteString(20_000).toByteArray()); + sink.write(body.readByteString(20_000).toByteArray()); + sink.write(body.readByteString(20_000).toByteArray()); + sink.write(body.readByteString(20_000).toByteArray()); + sink.write(body.readByteString(20_000).toByteArray()); sink.close(); assertData("017e4000"); diff --git a/samples/guide/src/main/java/okhttp3/recipes/kt/AccessHeaders.kt b/samples/guide/src/main/java/okhttp3/recipes/kt/AccessHeaders.kt index ca9a94661..076b41595 100644 --- a/samples/guide/src/main/java/okhttp3/recipes/kt/AccessHeaders.kt +++ b/samples/guide/src/main/java/okhttp3/recipes/kt/AccessHeaders.kt @@ -15,9 +15,9 @@ */ package okhttp3.recipes.kt +import java.io.IOException import okhttp3.OkHttpClient import okhttp3.Request -import java.io.IOException class AccessHeaders { private val client = OkHttpClient() diff --git a/samples/guide/src/main/java/okhttp3/recipes/kt/AsynchronousGet.kt b/samples/guide/src/main/java/okhttp3/recipes/kt/AsynchronousGet.kt index ca35b3906..3418fc806 100644 --- a/samples/guide/src/main/java/okhttp3/recipes/kt/AsynchronousGet.kt +++ b/samples/guide/src/main/java/okhttp3/recipes/kt/AsynchronousGet.kt @@ -15,12 +15,12 @@ */ package okhttp3.recipes.kt +import java.io.IOException import okhttp3.Call import okhttp3.Callback import okhttp3.OkHttpClient import okhttp3.Request import okhttp3.Response -import java.io.IOException class AsynchronousGet { private val client = OkHttpClient() diff --git a/samples/guide/src/main/java/okhttp3/recipes/kt/Authenticate.kt b/samples/guide/src/main/java/okhttp3/recipes/kt/Authenticate.kt index 7a56b425c..91abc3793 100644 --- a/samples/guide/src/main/java/okhttp3/recipes/kt/Authenticate.kt +++ b/samples/guide/src/main/java/okhttp3/recipes/kt/Authenticate.kt @@ -15,13 +15,13 @@ */ package okhttp3.recipes.kt +import java.io.IOException import okhttp3.Authenticator import okhttp3.Credentials import okhttp3.OkHttpClient import okhttp3.Request import okhttp3.Response import okhttp3.Route -import java.io.IOException class Authenticate { private val client = OkHttpClient.Builder() diff --git a/samples/guide/src/main/java/okhttp3/recipes/kt/CacheResponse.kt b/samples/guide/src/main/java/okhttp3/recipes/kt/CacheResponse.kt index b700690f8..f5038a9e8 100644 --- a/samples/guide/src/main/java/okhttp3/recipes/kt/CacheResponse.kt +++ b/samples/guide/src/main/java/okhttp3/recipes/kt/CacheResponse.kt @@ -15,11 +15,11 @@ */ package okhttp3.recipes.kt +import java.io.File +import java.io.IOException import okhttp3.Cache import okhttp3.OkHttpClient import okhttp3.Request -import java.io.File -import java.io.IOException class CacheResponse(cacheDirectory: File) { private val client: OkHttpClient = OkHttpClient.Builder() diff --git a/samples/guide/src/main/java/okhttp3/recipes/kt/CancelCall.kt b/samples/guide/src/main/java/okhttp3/recipes/kt/CancelCall.kt index b1932a3c3..a8cc36659 100644 --- a/samples/guide/src/main/java/okhttp3/recipes/kt/CancelCall.kt +++ b/samples/guide/src/main/java/okhttp3/recipes/kt/CancelCall.kt @@ -15,11 +15,11 @@ */ package okhttp3.recipes.kt -import okhttp3.OkHttpClient -import okhttp3.Request import java.io.IOException import java.util.concurrent.Executors import java.util.concurrent.TimeUnit +import okhttp3.OkHttpClient +import okhttp3.Request class CancelCall { private val executor = Executors.newScheduledThreadPool(1) diff --git a/samples/guide/src/main/java/okhttp3/recipes/kt/CertificatePinning.kt b/samples/guide/src/main/java/okhttp3/recipes/kt/CertificatePinning.kt index e7ca5612f..0716b5ca5 100644 --- a/samples/guide/src/main/java/okhttp3/recipes/kt/CertificatePinning.kt +++ b/samples/guide/src/main/java/okhttp3/recipes/kt/CertificatePinning.kt @@ -15,10 +15,10 @@ */ package okhttp3.recipes.kt +import java.io.IOException import okhttp3.CertificatePinner import okhttp3.OkHttpClient import okhttp3.Request -import java.io.IOException class CertificatePinning { private val client = OkHttpClient.Builder() diff --git a/samples/guide/src/main/java/okhttp3/recipes/kt/ConfigureTimeouts.kt b/samples/guide/src/main/java/okhttp3/recipes/kt/ConfigureTimeouts.kt index 4ffeeab97..366a8e0c1 100644 --- a/samples/guide/src/main/java/okhttp3/recipes/kt/ConfigureTimeouts.kt +++ b/samples/guide/src/main/java/okhttp3/recipes/kt/ConfigureTimeouts.kt @@ -15,9 +15,9 @@ */ package okhttp3.recipes.kt +import java.util.concurrent.TimeUnit import okhttp3.OkHttpClient import okhttp3.Request -import java.util.concurrent.TimeUnit class ConfigureTimeouts { private val client: OkHttpClient = OkHttpClient.Builder() diff --git a/samples/guide/src/main/java/okhttp3/recipes/kt/CustomTrust.kt b/samples/guide/src/main/java/okhttp3/recipes/kt/CustomTrust.kt index 0f01a58b7..4617c08c1 100644 --- a/samples/guide/src/main/java/okhttp3/recipes/kt/CustomTrust.kt +++ b/samples/guide/src/main/java/okhttp3/recipes/kt/CustomTrust.kt @@ -15,10 +15,6 @@ */ package okhttp3.recipes.kt -import okhttp3.CertificatePinner -import okhttp3.OkHttpClient -import okhttp3.Request -import okio.Buffer import java.io.IOException import java.io.InputStream import java.security.KeyStore @@ -29,6 +25,10 @@ import javax.net.ssl.SSLContext import javax.net.ssl.TrustManager import javax.net.ssl.TrustManagerFactory import javax.net.ssl.X509TrustManager +import okhttp3.CertificatePinner +import okhttp3.OkHttpClient +import okhttp3.Request +import okio.Buffer class CustomTrust { private val client: OkHttpClient diff --git a/samples/guide/src/main/java/okhttp3/recipes/kt/ParseResponseWithMoshi.kt b/samples/guide/src/main/java/okhttp3/recipes/kt/ParseResponseWithMoshi.kt index a5a8ac463..cf18735a3 100644 --- a/samples/guide/src/main/java/okhttp3/recipes/kt/ParseResponseWithMoshi.kt +++ b/samples/guide/src/main/java/okhttp3/recipes/kt/ParseResponseWithMoshi.kt @@ -17,9 +17,9 @@ package okhttp3.recipes.kt import com.squareup.moshi.JsonClass import com.squareup.moshi.Moshi +import java.io.IOException import okhttp3.OkHttpClient import okhttp3.Request -import java.io.IOException class ParseResponseWithMoshi { private val client = OkHttpClient() diff --git a/samples/guide/src/main/java/okhttp3/recipes/kt/PerCallSettings.kt b/samples/guide/src/main/java/okhttp3/recipes/kt/PerCallSettings.kt index 4ff5f5a02..90247ad82 100644 --- a/samples/guide/src/main/java/okhttp3/recipes/kt/PerCallSettings.kt +++ b/samples/guide/src/main/java/okhttp3/recipes/kt/PerCallSettings.kt @@ -15,10 +15,10 @@ */ package okhttp3.recipes.kt -import okhttp3.OkHttpClient -import okhttp3.Request import java.io.IOException import java.util.concurrent.TimeUnit +import okhttp3.OkHttpClient +import okhttp3.Request class PerCallSettings { private val client = OkHttpClient() diff --git a/samples/guide/src/main/java/okhttp3/recipes/kt/PostFile.kt b/samples/guide/src/main/java/okhttp3/recipes/kt/PostFile.kt index cfb983a02..8e2d89a3e 100644 --- a/samples/guide/src/main/java/okhttp3/recipes/kt/PostFile.kt +++ b/samples/guide/src/main/java/okhttp3/recipes/kt/PostFile.kt @@ -15,12 +15,12 @@ */ package okhttp3.recipes.kt +import java.io.File +import java.io.IOException import okhttp3.MediaType.Companion.toMediaType import okhttp3.OkHttpClient import okhttp3.Request import okhttp3.RequestBody.Companion.asRequestBody -import java.io.File -import java.io.IOException class PostFile { private val client = OkHttpClient() diff --git a/samples/guide/src/main/java/okhttp3/recipes/kt/PostForm.kt b/samples/guide/src/main/java/okhttp3/recipes/kt/PostForm.kt index 189c6f1d7..21f0fdc08 100644 --- a/samples/guide/src/main/java/okhttp3/recipes/kt/PostForm.kt +++ b/samples/guide/src/main/java/okhttp3/recipes/kt/PostForm.kt @@ -15,10 +15,10 @@ */ package okhttp3.recipes.kt +import java.io.IOException import okhttp3.FormBody import okhttp3.OkHttpClient import okhttp3.Request -import java.io.IOException class PostForm { private val client = OkHttpClient() diff --git a/samples/guide/src/main/java/okhttp3/recipes/kt/PostMultipart.kt b/samples/guide/src/main/java/okhttp3/recipes/kt/PostMultipart.kt index 7a56bd3a7..2dacbbd76 100644 --- a/samples/guide/src/main/java/okhttp3/recipes/kt/PostMultipart.kt +++ b/samples/guide/src/main/java/okhttp3/recipes/kt/PostMultipart.kt @@ -15,13 +15,13 @@ */ package okhttp3.recipes.kt +import java.io.File +import java.io.IOException import okhttp3.MediaType.Companion.toMediaType import okhttp3.MultipartBody import okhttp3.OkHttpClient import okhttp3.Request import okhttp3.RequestBody.Companion.asRequestBody -import java.io.File -import java.io.IOException class PostMultipart { private val client = OkHttpClient() diff --git a/samples/guide/src/main/java/okhttp3/recipes/kt/PostStreaming.kt b/samples/guide/src/main/java/okhttp3/recipes/kt/PostStreaming.kt index 5cfcd96a0..f861db491 100644 --- a/samples/guide/src/main/java/okhttp3/recipes/kt/PostStreaming.kt +++ b/samples/guide/src/main/java/okhttp3/recipes/kt/PostStreaming.kt @@ -15,12 +15,12 @@ */ package okhttp3.recipes.kt +import java.io.IOException import okhttp3.MediaType.Companion.toMediaType import okhttp3.OkHttpClient import okhttp3.Request import okhttp3.RequestBody import okio.BufferedSink -import java.io.IOException class PostStreaming { private val client = OkHttpClient() diff --git a/samples/guide/src/main/java/okhttp3/recipes/kt/PostString.kt b/samples/guide/src/main/java/okhttp3/recipes/kt/PostString.kt index d77fda90f..c50a77741 100644 --- a/samples/guide/src/main/java/okhttp3/recipes/kt/PostString.kt +++ b/samples/guide/src/main/java/okhttp3/recipes/kt/PostString.kt @@ -15,11 +15,11 @@ */ package okhttp3.recipes.kt +import java.io.IOException import okhttp3.MediaType.Companion.toMediaType import okhttp3.OkHttpClient import okhttp3.Request import okhttp3.RequestBody.Companion.toRequestBody -import java.io.IOException class PostString { private val client = OkHttpClient() diff --git a/samples/guide/src/main/java/okhttp3/recipes/kt/SynchronousGet.kt b/samples/guide/src/main/java/okhttp3/recipes/kt/SynchronousGet.kt index d5e0634d1..36fcb6234 100644 --- a/samples/guide/src/main/java/okhttp3/recipes/kt/SynchronousGet.kt +++ b/samples/guide/src/main/java/okhttp3/recipes/kt/SynchronousGet.kt @@ -15,9 +15,9 @@ */ package okhttp3.recipes.kt +import java.io.IOException import okhttp3.OkHttpClient import okhttp3.Request -import java.io.IOException class SynchronousGet { private val client = OkHttpClient() diff --git a/samples/guide/src/test/kotlin/okhttp3/AllMainsTest.kt b/samples/guide/src/test/kotlin/okhttp3/AllMainsTest.kt index 6014e4b36..a7dee01dc 100644 --- a/samples/guide/src/test/kotlin/okhttp3/AllMainsTest.kt +++ b/samples/guide/src/test/kotlin/okhttp3/AllMainsTest.kt @@ -15,12 +15,12 @@ */ package okhttp3 +import java.io.File +import java.lang.reflect.InvocationTargetException import org.junit.Ignore import org.junit.Test import org.junit.runner.RunWith import org.junit.runners.Parameterized -import java.io.File -import java.lang.reflect.InvocationTargetException @RunWith(Parameterized::class) @Ignore