Completer<T> - интерфейс Completer<T>

A Completer is used to produce Futures and supply their value when it becomes available.

A service that provides values to callers, and wants to return Futures can use a Completer as follows:

Completer completer = new Completer(); // send future object back to client... return completer.future; ...

// later when value is available, call: completer.complete(value);

// alternatively, if the service cannot produce the value, it // can provide an exception: completer.completeException(exception);