feat(sync): перевёл группы синхронизации на Room и добавил контроль совместимости
This commit is contained in:
@@ -13,6 +13,7 @@ interface IUnlockManager {
|
||||
* Хранилища, для которых есть ключ шифрования
|
||||
*/
|
||||
val openedStorages: StateFlow<Map<UUID, IStorage>>
|
||||
fun getOpenedStorageKey(uuid: UUID): EncryptKey?
|
||||
|
||||
suspend fun open(storage: IStorage, key: EncryptKey, rememberPassword: Boolean = true): IStorage
|
||||
suspend fun close(storage: IStorage)
|
||||
|
||||
@@ -2,9 +2,18 @@ package com.github.nullptroma.wallenc.domain.interfaces
|
||||
|
||||
import java.util.UUID
|
||||
|
||||
enum class StorageSyncGroupEncryptionKind {
|
||||
UNSET,
|
||||
NONE,
|
||||
PASSWORD,
|
||||
}
|
||||
|
||||
data class StorageSyncGroup(
|
||||
val id: String,
|
||||
val storageUuids: Set<UUID>,
|
||||
val encryptionKind: StorageSyncGroupEncryptionKind = StorageSyncGroupEncryptionKind.UNSET,
|
||||
/** Локально сохранённый секрет группы для сопоставления совместимости (не уходит наружу). */
|
||||
val encryptionSecret: String? = null,
|
||||
)
|
||||
|
||||
interface IStorageSyncGroupStore {
|
||||
|
||||
Reference in New Issue
Block a user