From 80ce7aff91fdc8ab51f70ef1fd12e397bb439427 Mon Sep 17 00:00:00 2001 From: AN12345 Date: Wed, 23 Nov 2022 17:32:44 -0500 Subject: [PATCH] fix(architecture): fix execute method on error handler. (#38) --- .../lib/src/domain/usecases/usecase.dart | 31 +++++++++---------- 1 file changed, 14 insertions(+), 17 deletions(-) diff --git a/packages/wyatt_architecture/lib/src/domain/usecases/usecase.dart b/packages/wyatt_architecture/lib/src/domain/usecases/usecase.dart index ee6a2c26..893e962b 100644 --- a/packages/wyatt_architecture/lib/src/domain/usecases/usecase.dart +++ b/packages/wyatt_architecture/lib/src/domain/usecases/usecase.dart @@ -43,23 +43,20 @@ abstract class UseCase /// Supports the result of the main scenario and integrates /// some alternative scenarios if necessary. @override - FutureOrResult execute(Parameters? parameters) => - Result.tryCatchAsync( - () async { - await onStart(parameters); - final response = await call(parameters); - if (response.isErr) { - await onError(response.err); - } else if (response.isOk && response.ok != null) { - await _onSuccess(response.ok as ReturnType); - } - - return response.ok!; - }, - (error) => ClientException( - error.toString(), - ), - ); + FutureOrResult execute(Parameters? parameters) async { + try { + await onStart(parameters); + final response = await call(parameters); + if (response.isErr) { + await onError(response.err); + } else if (response.isOk && response.ok != null) { + await _onSuccess(response.ok as ReturnType); + } + return response; + } catch (e) { + return Err(ClientException(e.toString())); + } + } } /// Abtstract classic usecase.