feat: add onStrippingFailed callback to upload orchestrators

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
davotoula
2026-03-18 10:51:30 +01:00
parent 9ce1ff3e63
commit c0632e17bd
2 changed files with 20 additions and 0 deletions
@@ -60,6 +60,7 @@ class MultiOrchestrator(
context: Context,
useH265: Boolean = false,
stripMetadata: Boolean = true,
onStrippingFailed: suspend () -> Boolean = { true },
): Result {
coroutineScope {
val jobs =
@@ -76,6 +77,7 @@ class MultiOrchestrator(
context,
useH265,
stripMetadata,
onStrippingFailed,
)
}
}
@@ -96,6 +98,7 @@ class MultiOrchestrator(
context: Context,
useH265: Boolean = false,
stripMetadata: Boolean = true,
onStrippingFailed: suspend () -> Boolean = { true },
): Result {
coroutineScope {
val jobs =
@@ -113,6 +116,7 @@ class MultiOrchestrator(
context,
useH265,
stripMetadata,
onStrippingFailed,
)
}
}
@@ -320,8 +320,16 @@ class UploadOrchestrator {
context: Context,
useH265: Boolean = false,
stripMetadata: Boolean = true,
onStrippingFailed: suspend () -> Boolean = { true },
): UploadingFinalState {
val strippingResult = stripMetadataIfNeeded(uri, mimeType, stripMetadata, compressionQuality, context)
if (stripMetadata && !strippingResult.stripped) {
if (!onStrippingFailed()) {
return error(R.string.upload_cancelled)
}
}
val compressed = compressIfNeeded(strippingResult.uri, mimeType, compressionQuality, context, useH265)
return when (server.type) {
@@ -343,8 +351,16 @@ class UploadOrchestrator {
context: Context,
useH265: Boolean = false,
stripMetadata: Boolean = true,
onStrippingFailed: suspend () -> Boolean = { true },
): UploadingFinalState {
val strippingResult = stripMetadataIfNeeded(uri, mimeType, stripMetadata, compressionQuality, context)
if (stripMetadata && !strippingResult.stripped) {
if (!onStrippingFailed()) {
return error(R.string.upload_cancelled)
}
}
val compressed = compressIfNeeded(strippingResult.uri, mimeType, compressionQuality, context, useH265)
val encrypted = EncryptFiles().encryptFile(context, compressed.uri, encrypt)