executeAsync method

Future<void> executeAsync(
  1. Future<T> operation(), {
  2. String? successMessage,
  3. bool emitLoadingState = true,
})

Implementation

Future<void> executeAsync(
  Future<T> Function() operation, {
  String? successMessage,
  bool emitLoadingState = true,
}) async {
  try {
    if (emitLoadingState) setLoading();
    final result = await operation();
    setSuccess(result, message: successMessage);
  } catch (e) {
    setError(e is Exception ? e : Exception(e.toString()));
  }
}