simpliest version of content upload
This commit is contained in:
client/src
commonMain
kotlin
dev
inmo
postssystem
client
ui
jsMain
kotlin
dev
inmo
postssystem
client
features
common
common
src
jsMain
kotlin
dev
inmo
postssystem
features
common
content
common
src
commonMain
kotlin
dev
inmo
postssystem
features
content
common
server/src/main
java
dev
inmo
postssystem
resources
services/posts/client/src
commonMain
kotlin
dev
inmo
postssystem
services
posts
client
jsMain
kotlin
dev
inmo
postssystem
services
posts
client
@ -1,14 +1,16 @@
|
||||
package dev.inmo.postssystem.features.common.common
|
||||
|
||||
import dev.inmo.micro_utils.common.MPPFile
|
||||
import dev.inmo.micro_utils.common.bytes
|
||||
import io.ktor.utils.io.core.ByteReadPacket
|
||||
import io.ktor.utils.io.core.Input
|
||||
import kotlinx.serialization.Serializable
|
||||
|
||||
@Serializable(SimpleInputProviderSerializer::class)
|
||||
actual class FileBasedInputProvider internal constructor(
|
||||
actual val file: MPPFile,
|
||||
private val bytes: ByteArray
|
||||
actual val file: MPPFile
|
||||
) : SimpleInputProvider {
|
||||
override fun invoke(): Input = ByteReadPacket(bytes)
|
||||
override fun invoke(): Input = error("Files inputs must not be used directly")
|
||||
}
|
||||
|
||||
fun MPPFile.inputProvider() = FileBasedInputProvider(this)
|
||||
|
@ -1,6 +1,7 @@
|
||||
package dev.inmo.postssystem.features.content.common
|
||||
|
||||
import dev.inmo.micro_utils.common.FileName
|
||||
import dev.inmo.micro_utils.common.MPPFile
|
||||
import dev.inmo.micro_utils.mime_types.MimeType
|
||||
import dev.inmo.postssystem.features.common.common.SimpleInputProvider
|
||||
import kotlinx.serialization.PolymorphicSerializer
|
||||
|
Reference in New Issue
Block a user