feat: add onStrippingFailed callback to upload orchestrators
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -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,
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
+16
@@ -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)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user