dispose method
Implementation
Future<void> dispose() async {
await _streamSub.cancel();
_outstandingRequests.forEach((id, request) {
request._completer.completeError(RPCError(
request.method,
RPCErrorKind.kServerError.code,
'Service connection disposed',
));
});
_outstandingRequests.clear();
final handler = _disposeHandler;
if (handler != null) {
await handler();
}
if (!_onDoneCompleter.isCompleted) {
_onDoneCompleter.complete();
}
}