1
0
mirror of https://github.com/InsanusMokrassar/TelegramBotAPI.git synced 2025-09-16 13:49:26 +00:00

files downloading improvements

This commit is contained in:
2021-08-09 19:55:08 +06:00
parent 8dbdbdee13
commit abc0457a36
5 changed files with 72 additions and 5 deletions

View File

@@ -5,8 +5,7 @@ import dev.inmo.tgbotapi.types.FileUniqueId
import dev.inmo.tgbotapi.types.fileUniqueIdField
import dev.inmo.tgbotapi.types.files.abstracts.*
import dev.inmo.tgbotapi.utils.*
import kotlinx.serialization.SerialName
import kotlinx.serialization.Serializable
import kotlinx.serialization.*
@Serializable
data class PathedFile(
@@ -18,8 +17,14 @@ data class PathedFile(
val filePath: String,
@SerialName(fileSizeField)
override val fileSize: Long? = null
): TelegramMediaFile
): TelegramMediaFile {
@Transient
val fileName: FileName by lazy(LazyThreadSafetyMode.PUBLICATION) {
filePath.filenameFromUrl
}
}
@Deprecated("Use fileName property instead", ReplaceWith("fileName"))
val PathedFile.filename: FileName
get() = filePath.filenameFromUrl
fun TelegramAPIUrlsKeeper.resolveFileURL(file: PathedFile): String = "$fileBaseUrl/${file.filePath}"