From 7c0475085dceeaf42abf317378cb5e0859f6183a Mon Sep 17 00:00:00 2001
From: Kamal Bramwell <kamal@elixxir.io>
Date: Wed, 2 Nov 2022 10:08:46 -0400
Subject: [PATCH] Updated parsing of raw data

---
 .../java/io/elixxir/xxclient/utils/Bindings.kt     | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/xxclient/src/main/java/io/elixxir/xxclient/utils/Bindings.kt b/xxclient/src/main/java/io/elixxir/xxclient/utils/Bindings.kt
index 999119a..55c99d5 100644
--- a/xxclient/src/main/java/io/elixxir/xxclient/utils/Bindings.kt
+++ b/xxclient/src/main/java/io/elixxir/xxclient/utils/Bindings.kt
@@ -17,11 +17,15 @@ inline fun <reified T: BindingsModel> parseModel(data: ByteArray?, error: Except
 }
 
 fun parseData(rawData: ByteArray?, error: Exception?): Result<ByteArray> {
-    return parseDataArray(rawData, error).run {
-        getOrNull()?.let {
-            Result.success(it.firstOrNull() ?: byteArrayOf())
-        } ?: Result.failure(exceptionOrNull() ?: InvalidDataException())
-    }
+    return error?.let {
+        Result.failure(it)
+    } ?: rawData?.let {
+        if (it.isNotEmpty()) {
+            Result.success(
+                it.decodeToString().fromBase64toByteArray()
+            )
+        } else Result.success(byteArrayOf())
+    } ?: Result.failure(InvalidDataException())
 }
 
 fun parseDataArray(dataArray: ByteArray?, error: Exception?): Result<List<ByteArray>> {
-- 
GitLab