performOptimisticUpdate
inline suspend fun <R> performOptimisticUpdate( begin: () -> Unit, commit: () -> Unit, crossinline rollback: suspend () -> Unit, noinline onSuccess: suspend () -> Unit? = null, noinline onError: suspend (Exception) -> Unit? = null, noinline onCanceled: suspend () -> Unit? = null, noinline onFinished: suspend () -> Unit? = null, block: () -> R): R
Content copied to clipboard
Executes begin and then block. If an operation succeed than commit is executed, otherwise rollback is executed. onSuccess, onError, onCanceled, onFinished are optional callbacks for additional actions.