From 66b0d74611fe02dff328a7e3eb5e361593359654 Mon Sep 17 00:00:00 2001 From: Quentin Gliosca Date: Tue, 23 Jul 2024 12:04:21 +0200 Subject: [PATCH 1/2] Fix PSPDFKit error mapping --- .../pspdfkit/document/PsPdfKitDocument.kt | 18 ++-------- .../pspdfkit/document/ResourceDataProvider.kt | 35 +++++++------------ 2 files changed, 14 insertions(+), 39 deletions(-) diff --git a/readium/adapters/pspdfkit/document/src/main/java/org/readium/adapter/pspdfkit/document/PsPdfKitDocument.kt b/readium/adapters/pspdfkit/document/src/main/java/org/readium/adapter/pspdfkit/document/PsPdfKitDocument.kt index 0ece69bba6..24bb056394 100644 --- a/readium/adapters/pspdfkit/document/src/main/java/org/readium/adapter/pspdfkit/document/PsPdfKitDocument.kt +++ b/readium/adapters/pspdfkit/document/src/main/java/org/readium/adapter/pspdfkit/document/PsPdfKitDocument.kt @@ -47,26 +47,12 @@ public class PsPdfKitDocumentFactory(context: Context) : PdfDocumentFactory) - ?: return null - - return throwableCause.throwable as? IllegalStateException - } } public class PsPdfKitDocument( diff --git a/readium/adapters/pspdfkit/document/src/main/java/org/readium/adapter/pspdfkit/document/ResourceDataProvider.kt b/readium/adapters/pspdfkit/document/src/main/java/org/readium/adapter/pspdfkit/document/ResourceDataProvider.kt index bd05e4d714..ed6256f042 100644 --- a/readium/adapters/pspdfkit/document/src/main/java/org/readium/adapter/pspdfkit/document/ResourceDataProvider.kt +++ b/readium/adapters/pspdfkit/document/src/main/java/org/readium/adapter/pspdfkit/document/ResourceDataProvider.kt @@ -9,7 +9,6 @@ package org.readium.adapter.pspdfkit.document import com.pspdfkit.document.providers.DataProvider import java.util.UUID import kotlinx.coroutines.runBlocking -import org.readium.r2.shared.util.ThrowableError import org.readium.r2.shared.util.data.ReadError import org.readium.r2.shared.util.getOrElse import org.readium.r2.shared.util.resource.Resource @@ -30,17 +29,12 @@ internal class ResourceDataProvider( private val length by lazy { runBlocking { - try { - resource.length() - .getOrElse { - error = it - onResourceError(it) - DataProvider.FILE_SIZE_UNKNOWN.toLong() - } - } catch (e: Exception) { - error = ReadError.UnsupportedOperation(ThrowableError(IllegalStateException(e))) - DataProvider.FILE_SIZE_UNKNOWN.toLong() - } + resource.length() + .getOrElse { + error = it + onResourceError(it) + DataProvider.FILE_SIZE_UNKNOWN.toLong() + } } } @@ -57,17 +51,12 @@ internal class ResourceDataProvider( override fun read(size: Long, offset: Long): ByteArray = runBlocking { val range = offset until (offset + size) - try { - resource.read(range) - .getOrElse { - error = it - onResourceError(it) - DataProvider.NO_DATA_AVAILABLE - } - } catch (e: Exception) { - error = ReadError.UnsupportedOperation(ThrowableError(IllegalStateException(e))) - DataProvider.NO_DATA_AVAILABLE - } + resource.read(range) + .getOrElse { + error = it + onResourceError(it) + DataProvider.NO_DATA_AVAILABLE + } } override fun release() { From ff29a2a753c2c4ad6ba9b7f1952843b0023397ce Mon Sep 17 00:00:00 2001 From: Quentin Gliosca Date: Tue, 23 Jul 2024 14:08:29 +0200 Subject: [PATCH 2/2] Cosmetic change --- .../readium/adapter/pspdfkit/document/PsPdfKitDocument.kt | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/readium/adapters/pspdfkit/document/src/main/java/org/readium/adapter/pspdfkit/document/PsPdfKitDocument.kt b/readium/adapters/pspdfkit/document/src/main/java/org/readium/adapter/pspdfkit/document/PsPdfKitDocument.kt index 24bb056394..764a7bf4ff 100644 --- a/readium/adapters/pspdfkit/document/src/main/java/org/readium/adapter/pspdfkit/document/PsPdfKitDocument.kt +++ b/readium/adapters/pspdfkit/document/src/main/java/org/readium/adapter/pspdfkit/document/PsPdfKitDocument.kt @@ -21,7 +21,6 @@ import kotlin.reflect.KClass import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.withContext import org.readium.r2.shared.publication.ReadingProgression -import org.readium.r2.shared.util.ThrowableError import org.readium.r2.shared.util.Try import org.readium.r2.shared.util.data.ReadError import org.readium.r2.shared.util.data.ReadTry @@ -43,9 +42,9 @@ public class PsPdfKitDocumentFactory(context: Context) : PdfDocumentFactory