refactor: wrap with try finally

This commit is contained in:
2026-06-10 16:54:53 +02:00
parent 8be9d8ea43
commit f9ddebac8a
@@ -103,6 +103,7 @@ class NwcViewModel(
Timber.d("[$TAG] createConnection description='$description' permissions=$permissions")
viewModelScope.launch {
_isCreating.value = true
try {
runCatching {
val keypair = NwcKeyGenerator.generate()
Timber.d("[$TAG] generated keypair pubkey=${keypair.pubKeyHex.take(16)}")
@@ -114,7 +115,6 @@ class NwcViewModel(
}
Timber.d("[$TAG] generated keypair pubkey=${keypair.pubKeyHex.take(16)}… (${keypair.pubKeyHex.length} chars)")
Timber.d("[$TAG] REGISTERING pubkey=${keypair.pubKeyHex}")
Timber.d("[$TAG] PAIRING secret=${keypair.privKeyHex}")
repo.registerNwcKey(
pubkey = keypair.pubKeyHex,
@@ -140,7 +140,9 @@ class NwcViewModel(
Timber.e(e, "[$TAG] createConnection failed")
_uiState.value = NwcUiState.Error(e.message ?: "Failed to create connection")
}
.also { _isCreating.value = false }
} finally {
_isCreating.value = false
}
}
}
@@ -154,12 +156,12 @@ class NwcViewModel(
fun deleteConnection(pubkey: String) {
Timber.d("[$TAG] deleteConnection pubkey=${pubkey.take(16)}")
_isDeleting.value = true
viewModelScope.launch {
_isDeleting.value = true
try {
runCatching { repo.deleteNwcKey(pubkey) }
.onSuccess {
Timber.i("[$TAG] deleted connection pubkey=${pubkey.take(16)}… ✓")
// Remove locally for instant feedback, then reload to sync
val current = _uiState.value
if (current is NwcUiState.Success) {
_uiState.value = NwcUiState.Success(
@@ -174,9 +176,12 @@ class NwcViewModel(
e.message ?: "Failed to delete connection"
)
}
.also { _isDeleting.value = false }
} finally {
_isDeleting.value = false
}
}
}
fun loadConnectionDetail(pubkey: String) {
Timber.d("[$TAG] loadConnectionDetail pubkey=${pubkey.take(16)}")