unregister method
This unregisters a procedure by its registrationId
. Use the Registered.registrationId
to unregister.
Implementation
Future<void> unregister(int registrationId) async {
var unregister = Unregister(nextUnregisterId++, registrationId);
_transport.send(unregister);
await _openSessionStreamController.stream.where((message) {
if (message is Unregistered &&
message.unregisterRequestId == unregister.requestId) {
return true;
}
if (message is Error &&
message.requestTypeId == MessageTypes.codeUnregister &&
message.requestId == unregister.requestId) {
throw message;
}
return false;
}).first;
registrations.remove(registrationId);
}