SauceNaoAPI/src/main/kotlin/com/github/insanusmokrassar/SauceNaoAPI/Launcher.kt

31 lines
814 B
Kotlin

package com.github.insanusmokrassar.SauceNaoAPI
import io.ktor.http.ContentType
import io.ktor.utils.io.streams.asInput
import kotlinx.coroutines.*
import java.io.File
import java.nio.file.Files
suspend fun main(vararg args: String) {
val (key, requestSubject) = args
val scope = CoroutineScope(Dispatchers.Default)
val api = SauceNaoAPI(key, scope = scope)
api.use { _ ->
println(
when {
requestSubject.startsWith("/") -> File(requestSubject).let {
api.request(
it.inputStream().asInput(),
ContentType.parse(Files.probeContentType(it.toPath()))
)
}
else -> api.request(requestSubject)
}
)
}
scope.cancel()
}