INNER CODE UNIT · Kotlin

AppleHttpLoader

kittinunf/fuel · fuel/src/appleMain/kotlin/fuel/AppleHttpLoader.kt:6

public class AppleHttpLoader(
    sessionConfiguration: NSURLSessionConfiguration,
) : HttpLoader {
    private val fetcher by lazy { HttpUrlFetcher(sessionConfiguration) }

    public override suspend fun get(request: Request.Builder.() -> Unit): HttpResponse {
        val requestBuilder = Request.Builder().apply(request).build()
        return fetcher.fetch("GET", requestBuilder)
    }

    public override suspend fun post(request: Request.Builder.() -> Unit): HttpResponse {
        val requestBuilder = Request.Builder().apply(request).build()
        requireNotNull(requestBuilder.body) { "body for method POST should not be null" }
        return fetcher.fetch("POST", requestBuilder)
    }

    public override suspend fun put(request: Request.Builder.() -> Unit): HttpResponse {
        val requestBuilder = Request.Builder().apply(request).build()

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…