subscribe method
Request a ClientSubscription to the desired eventName
from the server.
Implementation
@override
Future<ClientSubscription> subscribe(String eventName) {
return _whenConnected<ClientSubscription>(() {
var c = Completer<Map>();
var requestId = _uuid.v4();
_requests[requestId] = c;
serverSendPort.send(MessageHandler().encodeSubscriptionRequestMessage(
_id, requestId, clientId, eventName));
return c.future.then<ClientSubscription>((result) {
var (subcriptionId, clientId) = MessageHandler()
.decodeSubscriptionResponseMessage(result as Map<String, Object?>);
_clientId = clientId;
var s = _IsolateClientSubscription(eventName, subcriptionId, this);
_subscriptions.add(s);
return s;
});
});
}