1
0
mirror of https://github.com/InsanusMokrassar/TelegramBotAPI.git synced 2024-06-03 00:15:27 +00:00
This commit is contained in:
InsanusMokrassar 2021-08-10 16:50:50 +06:00
parent 9a14932511
commit f42cf78969

View File

@ -1,5 +1,6 @@
package dev.inmo.tgbotapi.bot.Ktor.base package dev.inmo.tgbotapi.bot.Ktor.base
import dev.inmo.micro_utils.coroutines.launchSafelyWithoutExceptions
import dev.inmo.tgbotapi.bot.Ktor.KtorCallFactory import dev.inmo.tgbotapi.bot.Ktor.KtorCallFactory
import dev.inmo.tgbotapi.requests.DownloadFileStream import dev.inmo.tgbotapi.requests.DownloadFileStream
import dev.inmo.tgbotapi.requests.abstracts.Request import dev.inmo.tgbotapi.requests.abstracts.Request
@ -26,10 +27,10 @@ object DownloadFileChannelRequestCallFactory : KtorCallFactory {
ByteReadChannelAllocator { ByteReadChannelAllocator {
val scope = CoroutineScope(coroutineContext) val scope = CoroutineScope(coroutineContext)
val outChannel = ByteChannel() val outChannel = ByteChannel()
scope.launch { scope.launchSafelyWithoutExceptions {
client.get<HttpStatement>(fullUrl).execute { httpResponse -> client.get<HttpStatement>(fullUrl).execute { httpResponse ->
val channel: ByteReadChannel = httpResponse.receive() val channel: ByteReadChannel = httpResponse.receive()
channel.copyTo(outChannel) channel.copyAndClose(outChannel)
} }
} }
outChannel outChannel