executeAsync method
Implementation
Future<T> executeAsync() async {
if (_state == CommandState.running) {
return _value;
}
_state = CommandState.running;
_errorWrapper = null;
_notifyListeners();
try {
this.validate(_value);
final rersult = await this.action(_value);
_value = rersult;
_state = CommandState.completed;
return _value;
} catch (error, stackTrace) {
_errorWrapper = ErrorWrapper(error, stackTrace);
_state = CommandState.error;
throw _errorWrapper!;
} finally {
_notifyListeners();
}
}