add storing of content
This commit is contained in:
client/src/commonMain/kotlin/dev/inmo/postssystem/client
features
content
binary
server
server
text
server
files
client
src
commonMain
kotlin
dev
inmo
postssystem
features
files
common
src
commonMain
kotlin
dev
inmo
postssystem
features
files
jvmMain
kotlin
dev
inmo
postssystem
features
files
common
server
src
jvmMain
kotlin
dev
inmo
postssystem
features
files
server/src/main/java/dev/inmo/postssystem/server
@ -1,9 +1,8 @@
|
||||
package dev.inmo.postssystem.features.files.common.storage
|
||||
|
||||
import dev.inmo.postssystem.features.files.common.*
|
||||
import dev.inmo.micro_utils.repos.ReadCRUDRepo
|
||||
interface FilesStorage : ReadFilesStorage, WriteFilesStorage
|
||||
|
||||
interface FilesStorage : ReadCRUDRepo<MetaFileInfoStorageWrapper, FileId> {
|
||||
suspend fun getBytes(id: FileId): ByteArray
|
||||
suspend fun getFullFileInfo(id: FileId): FullFileInfoStorageWrapper?
|
||||
}
|
||||
class DefaultFilesStorage(
|
||||
filesStorage: ReadFilesStorage,
|
||||
writeFilesStorage: WriteFilesStorage
|
||||
) : FilesStorage, ReadFilesStorage by filesStorage, WriteFilesStorage by writeFilesStorage
|
||||
|
@ -1,8 +0,0 @@
|
||||
package dev.inmo.postssystem.features.files.common.storage
|
||||
|
||||
interface FullFilesStorage : FilesStorage, WriteFilesStorage
|
||||
|
||||
class DefaultFullFilesStorage(
|
||||
filesStorage: FilesStorage,
|
||||
writeFilesStorage: WriteFilesStorage
|
||||
) : FullFilesStorage, FilesStorage by filesStorage, WriteFilesStorage by writeFilesStorage
|
9
features/files/common/src/commonMain/kotlin/dev/inmo/postssystem/features/files/common/storage/ReadFilesStorage.kt
Normal file
9
features/files/common/src/commonMain/kotlin/dev/inmo/postssystem/features/files/common/storage/ReadFilesStorage.kt
Normal file
@ -0,0 +1,9 @@
|
||||
package dev.inmo.postssystem.features.files.common.storage
|
||||
|
||||
import dev.inmo.postssystem.features.files.common.*
|
||||
import dev.inmo.micro_utils.repos.ReadCRUDRepo
|
||||
|
||||
interface ReadFilesStorage : ReadCRUDRepo<MetaFileInfoStorageWrapper, FileId> {
|
||||
suspend fun getBytes(id: FileId): ByteArray
|
||||
suspend fun getFullFileInfo(id: FileId): FullFileInfoStorageWrapper?
|
||||
}
|
@ -1,14 +1,14 @@
|
||||
package dev.inmo.postssystem.features.files.common
|
||||
|
||||
import dev.inmo.postssystem.features.files.common.storage.FilesStorage
|
||||
import dev.inmo.postssystem.features.files.common.storage.ReadFilesStorage
|
||||
import dev.inmo.micro_utils.pagination.*
|
||||
import dev.inmo.micro_utils.repos.ReadKeyValueRepo
|
||||
import java.io.File
|
||||
|
||||
class DiskFilesStorage(
|
||||
class DiskReadFilesStorage(
|
||||
private val filesFolder: File,
|
||||
private val metasKeyValueRepo: ReadKeyValueRepo<FileId, MetaFileInfo>
|
||||
) : FilesStorage {
|
||||
) : ReadFilesStorage {
|
||||
private val FileId.file
|
||||
get() = File(filesFolder, string)
|
||||
|
Reference in New Issue
Block a user