AssetRepository
Functions
Link copied to clipboard
abstract suspend fun deleteAsset(assetId: String, assetDomain: String?, assetToken: String?): Either<CoreFailure, Unit>
Method used to delete asset locally and externally
Link copied to clipboard
Method used to delete asset only locally
Link copied to clipboard
abstract suspend fun downloadPublicAsset(assetId: String, assetDomain: String?): Either<CoreFailure, FetchedAssetData>
Method used to download and persist to local memory a public asset
Link copied to clipboard
Link copied to clipboard
abstract suspend fun fetchPrivateDecodedAsset(assetId: String, assetDomain: String?, assetName: String, mimeType: String?, assetToken: String?, encryptionKey: AES256Key, assetSHA256Key: SHA256Key, downloadIfNeeded: Boolean = true): Either<CoreFailure, FetchedAssetData>
Method used to fetch the Path of a decoded private asset
Link copied to clipboard
abstract suspend fun persistAsset(assetId: String, assetDomain: String?, decodedDataPath: Path, assetDataSize: Long, extension: String?): Either<CoreFailure, Path>
Method used to persist to local memory the decoded asset
Link copied to clipboard
abstract suspend fun uploadAndPersistPrivateAsset(mimeType: String, assetDataPath: Path, otrKey: AES256Key, extension: String?, conversationId: ConversationId? = null, filename: String? = null, filetype: String? = null): Either<CoreFailure, Pair<UploadedAssetId, SHA256Key>>
Method used to upload the encrypted data and persist to local memory the already decoded asset
Link copied to clipboard
abstract suspend fun uploadAndPersistPublicAsset(mimeType: String, assetDataPath: Path, assetDataSize: Long, conversationId: ConversationId? = null, filename: String? = null, filetype: String? = null): Either<CoreFailure, UploadedAssetId>
Method used to upload and persist to local memory a public asset