From fa2279791fb8639cd0931aa93572ef0d1d14becb Mon Sep 17 00:00:00 2001 From: Harsh Shandilya Date: Fri, 1 Jan 2021 23:03:13 +0530 Subject: Revert "Refactor GitCommandExecutor (#1255)" (#1267) This breaks propagation of errors to the UI layer This reverts commit c34d08b094e80e2fd683e988f5e7ac98ad254e81. --- .../aps/util/git/operation/GitOperation.kt | 30 +++++----------------- 1 file changed, 7 insertions(+), 23 deletions(-) (limited to 'app/src/main/java/dev/msfjarvis/aps/util/git/operation') diff --git a/app/src/main/java/dev/msfjarvis/aps/util/git/operation/GitOperation.kt b/app/src/main/java/dev/msfjarvis/aps/util/git/operation/GitOperation.kt index 1ef168e4..44292fc6 100644 --- a/app/src/main/java/dev/msfjarvis/aps/util/git/operation/GitOperation.kt +++ b/app/src/main/java/dev/msfjarvis/aps/util/git/operation/GitOperation.kt @@ -25,10 +25,6 @@ import dev.msfjarvis.aps.util.git.sshj.SshKey import dev.msfjarvis.aps.util.git.sshj.SshjSessionFactory import dev.msfjarvis.aps.util.auth.BiometricAuthenticator import dev.msfjarvis.aps.data.repo.PasswordRepository -import dev.msfjarvis.aps.util.extensions.snackbar -import dev.msfjarvis.aps.util.git.GitResult -import com.github.michaelbull.result.get -import com.google.android.material.snackbar.Snackbar import kotlin.coroutines.resume import kotlin.coroutines.suspendCoroutine import kotlinx.coroutines.Dispatchers @@ -123,14 +119,12 @@ abstract class GitOperation(protected val callingActivity: FragmentActivity) { if (!preExecute()) { return Ok(Unit) } - val snackbar = callingActivity.snackbar( - message = callingActivity.resources.getString(R.string.git_operation_running), - length = Snackbar.LENGTH_INDEFINITE, - ) - val operationResult = GitCommandExecutor(this).execute() - snackbar.dismiss() - postExecute(operationResult) - return Ok(Unit) + val operationResult = GitCommandExecutor( + callingActivity, + this, + ).execute() + postExecute() + return operationResult } private fun onMissingSshKeyFile() { @@ -206,17 +200,7 @@ abstract class GitOperation(protected val callingActivity: FragmentActivity) { */ open fun preExecute() = true - private suspend fun postExecute(result: Result) { - when (result.get()) { - GitResult.OK -> {} - GitResult.AlreadyUpToDate -> { - Toast.makeText( - callingActivity, - callingActivity.getString(R.string.git_push_up_to_date), - Toast.LENGTH_SHORT - ).show() - } - } + private suspend fun postExecute() { withContext(Dispatchers.IO) { sshSessionFactory?.close() } -- cgit v1.2.3