fix(architecture): fix execute method on error handler. (#38)
This commit is contained in:
parent
37d9ab748d
commit
8bb0dbb6b7
@ -43,23 +43,20 @@ abstract class UseCase<Parameters, ReturnType>
|
||||
/// Supports the result of the main scenario and integrates
|
||||
/// some alternative scenarios if necessary.
|
||||
@override
|
||||
FutureOrResult<ReturnType> 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<ReturnType> 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.
|
||||
|
Loading…
x
Reference in New Issue
Block a user