From 7f78c8f5ed00a3474f5545c25249503bc317aa31 Mon Sep 17 00:00:00 2001 From: Ian VanSchooten Date: Tue, 10 Dec 2024 15:12:56 -0500 Subject: [PATCH] Revert "Do not save site if there are errors" This reverts commit 3cea52a15f0eae3e4c040585e6010bba6b1edccc. --- .../net/defined/mobile_nebula/MainActivity.kt | 29 +++++-------------- 1 file changed, 7 insertions(+), 22 deletions(-) diff --git a/android/app/src/main/kotlin/net/defined/mobile_nebula/MainActivity.kt b/android/app/src/main/kotlin/net/defined/mobile_nebula/MainActivity.kt index e061293..a78be8d 100644 --- a/android/app/src/main/kotlin/net/defined/mobile_nebula/MainActivity.kt +++ b/android/app/src/main/kotlin/net/defined/mobile_nebula/MainActivity.kt @@ -189,10 +189,7 @@ class MainActivity: FlutterActivity() { return result.error("unhandled_error", err.message, null) } - val validationResult = validateOrDeleteSite(siteDir); - if (validationResult is ValidationResult.FailureReason) { - return result.error("failure", validationResult.value, null) - } else if (validationResult is ValidationResult.BooleanResult && !validationResult.value) { + if (!validateOrDeleteSite(siteDir)) { return result.error("failure", "Enrollment failed due to invalid config", null) } @@ -228,10 +225,7 @@ class MainActivity: FlutterActivity() { return result.error("failure", err.toString(), null) } - val validationResult = validateOrDeleteSite(siteDir); - if (validationResult is ValidationResult.FailureReason) { - return result.error("failure", validationResult.value, null) - } else if (validationResult is ValidationResult.BooleanResult && !validationResult.value) { + if (!validateOrDeleteSite(siteDir)) { return result.error("failure", "Site config was incomplete, please review and try again", null) } @@ -240,28 +234,19 @@ class MainActivity: FlutterActivity() { result.success(null) } - sealed class ValidationResult { - data class FailureReason(val value: String) : ValidationResult() - data class BooleanResult(val value: Boolean) : ValidationResult() - } - - private fun validateOrDeleteSite(siteDir: File): ValidationResult { + private fun validateOrDeleteSite(siteDir: File): Boolean { try { // Try to render a full site, if this fails the config was bad somehow - val site = Site(context, siteDir); - if (site.errors.isNotEmpty()) { - // Return the first error, so the user can at least know one thing to solve - return ValidationResult.FailureReason(site.errors[0]) - } + Site(context, siteDir) } catch(err: java.io.FileNotFoundException) { Log.e(TAG, "Site not found at $siteDir") - return ValidationResult.BooleanResult(false) + return false } catch(err: Exception) { Log.e(TAG, "Deleting site at $siteDir due to error: $err") siteDir.deleteRecursively() - return ValidationResult.BooleanResult(false) + return false } - return ValidationResult.BooleanResult(true) + return true } private fun startSite(call: MethodCall, result: MethodChannel.Result) {