execute method
void
execute({
- OnPreExecute? onPreExecute,
- DoInBackground<
Param, Result> ? doInBackground, - OnProgressUpdate<
Progress> ? onProgressUpdate, - OnPostExecute<
Result> ? onPostExecute, - OnCompleted? onCompleted,
- List<
Param> ? values,
Implementation
void execute({
OnPreExecute? onPreExecute,
DoInBackground<Param, Result>? doInBackground,
OnProgressUpdate<Progress>? onProgressUpdate,
OnPostExecute<Result>? onPostExecute,
OnCompleted? onCompleted,
List<Param>? values,
}) {
_onPreExecute = onPreExecute ?? _onPreExecute;
_doInBackground = doInBackground ?? _doInBackground;
_onProgressUpdate = onProgressUpdate ?? _onProgressUpdate;
_onPostExecute = onPostExecute ?? _onPostExecute;
_onCompleted = onCompleted ?? _onCompleted;
if (_onPostExecute != null)
operation.value.then((value) => _onPostExecute!(result: value));
if (_onCompleted != null) operation.value.whenComplete(_onCompleted!);
if (_onPreExecute != null) _onPreExecute!();
complete(Future(() => _doInBackground!(values: values)));
}