From c260d32ac57b1acbbf8cb01d0b6fe4da777dd557 Mon Sep 17 00:00:00 2001 From: Mikkel ALMONTE--RINGAUD Date: Sat, 12 Oct 2024 11:39:13 +0200 Subject: [PATCH] chore: revert to okhttp --- gradle/libs.versions.toml | 2 +- library/build.gradle.kts | 6 +++--- .../kotlin/ink/literate/pawnote/api/geolocation.kt | 3 +-- .../commonMain/kotlin/ink/literate/pawnote/api/instance.kt | 3 +-- .../kotlin/ink/literate/pawnote/api/session-information.kt | 3 +-- .../kotlin/ink/literate/pawnote/models/SessionHandle.kt | 3 +-- .../kotlin/ink/literate/pawnote/core/request-function.kt | 3 +-- 7 files changed, 9 insertions(+), 14 deletions(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 3c82a62..154d3c5 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -10,7 +10,7 @@ kotlinx-datetime = "0.6.1" [libraries] kotlin-test = { module = "org.jetbrains.kotlin:kotlin-test-junit", version.ref = "kotlin" } ktor-client-core = { module = "io.ktor:ktor-client-core", version.ref = "ktor" } -ktor-client-cio = { module = "io.ktor:ktor-client-cio", version.ref = "ktor" } +ktor-client-okhttp = { module = "io.ktor:ktor-client-okhttp", version.ref= "ktor" } kotlinx-serialization-core = { module = "org.jetbrains.kotlinx:kotlinx-serialization-core", version.ref = "kotlinx-serialization" } kotlinx-serialization-json = { module = "org.jetbrains.kotlinx:kotlinx-serialization-json", version.ref = "kotlinx-serialization" } kotlinx-datetime = { module = "org.jetbrains.kotlinx:kotlinx-datetime", version.ref = "kotlinx-datetime" } diff --git a/library/build.gradle.kts b/library/build.gradle.kts index 6792e88..3741454 100644 --- a/library/build.gradle.kts +++ b/library/build.gradle.kts @@ -25,7 +25,7 @@ kotlin { val commonMain by getting { dependencies { implementation(libs.ktor.client.core) - implementation(libs.ktor.client.cio) + implementation(libs.ktor.client.okhttp) implementation(libs.kotlinx.serialization.json) implementation(libs.kotlinx.serialization.core) @@ -40,13 +40,13 @@ kotlin { } val jvmMain by getting { dependencies { - implementation(libs.ktor.client.cio) + implementation(libs.ktor.client.okhttp) implementation(libs.kotlin.test) } } val androidMain by getting { dependencies { - implementation(libs.ktor.client.cio) + implementation(libs.ktor.client.okhttp) } } } diff --git a/library/src/commonMain/kotlin/ink/literate/pawnote/api/geolocation.kt b/library/src/commonMain/kotlin/ink/literate/pawnote/api/geolocation.kt index c789f23..c95e36c 100644 --- a/library/src/commonMain/kotlin/ink/literate/pawnote/api/geolocation.kt +++ b/library/src/commonMain/kotlin/ink/literate/pawnote/api/geolocation.kt @@ -4,7 +4,6 @@ import ink.literate.pawnote.decoders.decodeGeolocatedInstance import ink.literate.pawnote.models.GeolocatedInstance import ink.literate.pawnote.models.Position import io.ktor.client.* -import io.ktor.client.engine.cio.CIO import io.ktor.client.request.forms.* import io.ktor.client.statement.* import io.ktor.http.* @@ -14,7 +13,7 @@ import kotlinx.serialization.json.jsonObject suspend fun geolocation( position: Position, - httpClient: HttpClient = HttpClient(CIO) + httpClient: HttpClient = HttpClient() ): List { val res = httpClient.submitForm( diff --git a/library/src/commonMain/kotlin/ink/literate/pawnote/api/instance.kt b/library/src/commonMain/kotlin/ink/literate/pawnote/api/instance.kt index 97c392b..de38e66 100644 --- a/library/src/commonMain/kotlin/ink/literate/pawnote/api/instance.kt +++ b/library/src/commonMain/kotlin/ink/literate/pawnote/api/instance.kt @@ -4,13 +4,12 @@ import ink.literate.pawnote.api.helpers.clearURL import ink.literate.pawnote.decoders.decodeInstance import ink.literate.pawnote.models.Instance import io.ktor.client.* -import io.ktor.client.engine.cio.CIO import io.ktor.client.request.* import io.ktor.client.statement.* import kotlinx.serialization.json.Json import kotlinx.serialization.json.jsonObject -suspend fun instance(url: String, httpClient: HttpClient = HttpClient(CIO)): Instance { +suspend fun instance(url: String, httpClient: HttpClient = HttpClient()): Instance { var cleanedURL = clearURL(url) cleanedURL += "/infoMobileApp.json?id=0D264427-EEFC-4810-A9E9-346942A862A4" diff --git a/library/src/commonMain/kotlin/ink/literate/pawnote/api/session-information.kt b/library/src/commonMain/kotlin/ink/literate/pawnote/api/session-information.kt index 1c20b0d..6b446c1 100644 --- a/library/src/commonMain/kotlin/ink/literate/pawnote/api/session-information.kt +++ b/library/src/commonMain/kotlin/ink/literate/pawnote/api/session-information.kt @@ -8,7 +8,6 @@ import ink.literate.pawnote.models.errors.BusyPageError import ink.literate.pawnote.models.errors.PageUnavailableError import ink.literate.pawnote.models.errors.SuspendedIPError import io.ktor.client.* -import io.ktor.client.engine.cio.CIO import io.ktor.client.request.* import io.ktor.client.statement.* import io.ktor.http.* @@ -24,7 +23,7 @@ data class SessionInfoParams( suspend fun sessionInformation( options: SessionInfoParams, - httpClient: HttpClient = HttpClient (CIO) { followRedirects = false } + httpClient: HttpClient = HttpClient { followRedirects = false } ): SessionInformation { val url = Url(options.base + "/" + encodeAccountKindToPath(options.kind)) diff --git a/library/src/commonMain/kotlin/ink/literate/pawnote/models/SessionHandle.kt b/library/src/commonMain/kotlin/ink/literate/pawnote/models/SessionHandle.kt index d68264d..a669cae 100644 --- a/library/src/commonMain/kotlin/ink/literate/pawnote/models/SessionHandle.kt +++ b/library/src/commonMain/kotlin/ink/literate/pawnote/models/SessionHandle.kt @@ -1,7 +1,6 @@ package ink.literate.pawnote.models import io.ktor.client.* -import io.ktor.client.engine.cio.CIO /** Equivalent of a PRONOTE session. Contains metadata, AES keys, RSA modulus, and more. */ data class SessionHandle( @@ -10,5 +9,5 @@ data class SessionHandle( var instance: InstanceParameters, var user: UserParameters, var userResource: UserResource, - val client: HttpClient = HttpClient(CIO) + val client: HttpClient = HttpClient() ) diff --git a/library/src/jvmMain/kotlin/ink/literate/pawnote/core/request-function.kt b/library/src/jvmMain/kotlin/ink/literate/pawnote/core/request-function.kt index e783ad9..2516ab5 100644 --- a/library/src/jvmMain/kotlin/ink/literate/pawnote/core/request-function.kt +++ b/library/src/jvmMain/kotlin/ink/literate/pawnote/core/request-function.kt @@ -5,7 +5,6 @@ import ink.literate.pawnote.api.private.Keys import ink.literate.pawnote.api.private.aesKeys import ink.literate.pawnote.models.SessionInformation import io.ktor.client.* -import io.ktor.client.engine.cio.CIO import io.ktor.client.request.* import io.ktor.client.statement.* import io.ktor.http.* @@ -81,7 +80,7 @@ actual constructor( } val response = - HttpClient(CIO).request(payload.url) { + HttpClient().request(payload.url) { method = HttpMethod.Post header("Content-Type", "application/json") setBody(Json.encodeToString(requestData))