aboutsummaryrefslogtreecommitdiffstats
path: root/app/src/main/java/com/zeapo/pwdstore/git/GitServerConfigActivity.kt
diff options
context:
space:
mode:
authorFabian Henneke <FabianHenneke@users.noreply.github.com>2020-09-03 10:48:14 +0200
committerGitHub <noreply@github.com>2020-09-03 14:18:14 +0530
commit3840f43fa0026b06b15913379761c1bf6b6a1c68 (patch)
tree41a5d47c3ed3ef06430d2d045876301d4db416ad /app/src/main/java/com/zeapo/pwdstore/git/GitServerConfigActivity.kt
parent258ccc601605f3112d9310043b9a34bf6ca3c9e0 (diff)
downloadHardenedPass-3840f43fa0026b06b15913379761c1bf6b6a1c68.tar.gz
HardenedPass-3840f43fa0026b06b15913379761c1bf6b6a1c68.zip
Refactor Git operations and auth (#1066)
Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>
Diffstat (limited to 'app/src/main/java/com/zeapo/pwdstore/git/GitServerConfigActivity.kt')
-rw-r--r--app/src/main/java/com/zeapo/pwdstore/git/GitServerConfigActivity.kt13
1 files changed, 11 insertions, 2 deletions
diff --git a/app/src/main/java/com/zeapo/pwdstore/git/GitServerConfigActivity.kt b/app/src/main/java/com/zeapo/pwdstore/git/GitServerConfigActivity.kt
index 5aa34201..27cd6379 100644
--- a/app/src/main/java/com/zeapo/pwdstore/git/GitServerConfigActivity.kt
+++ b/app/src/main/java/com/zeapo/pwdstore/git/GitServerConfigActivity.kt
@@ -9,6 +9,7 @@ import android.os.Handler
import android.view.View
import androidx.core.os.postDelayed
import androidx.lifecycle.lifecycleScope
+import com.github.michaelbull.result.fold
import com.google.android.material.dialog.MaterialAlertDialogBuilder
import com.google.android.material.snackbar.Snackbar
import com.zeapo.pwdstore.R
@@ -122,7 +123,10 @@ class GitServerConfigActivity : BaseGitActivity() {
localDir.deleteRecursively()
}
snackbar.dismiss()
- launchGitOperation(REQUEST_CLONE)
+ launchGitOperation(REQUEST_CLONE).fold(
+ success = ::finishOnSuccessHandler,
+ failure = ::finishAfterPromptOnErrorHandler,
+ )
}
} catch (e: IOException) {
// TODO Handle the exception correctly if we are unable to delete the directory...
@@ -153,7 +157,12 @@ class GitServerConfigActivity : BaseGitActivity() {
e.printStackTrace()
MaterialAlertDialogBuilder(this).setMessage(e.message).show()
}
- lifecycleScope.launch { launchGitOperation(REQUEST_CLONE) }
+ lifecycleScope.launch {
+ launchGitOperation(REQUEST_CLONE).fold(
+ success = ::finishOnSuccessHandler,
+ failure = ::finishAfterPromptOnErrorHandler,
+ )
+ }
}
}
}