Asynchronous completion task allowing asynchronous query execution
through {@link AsyncCompletionQuery}.
This is a final class and all the logic must be defined
in an implementation of {@link AsyncCompletionQuery} that must
be passed to constructor of this task.