Additional disconnection handling
This commit is contained in:
@@ -80,7 +80,10 @@ namespace mROA.Implementation.Frontend
|
||||
var eventRequest =
|
||||
_representationModule!.GetMessageAsync<DefaultCallRequest>(
|
||||
messageType: EMessageType.EventRequest, token: token);
|
||||
Task.WaitAny(defaultRequest, cancelRequest, eventRequest);
|
||||
var disconnectRequest =
|
||||
_representationModule!.GetMessageAsync<ClientDisconnect>(
|
||||
messageType: EMessageType.ClientDisconnect, token:token);
|
||||
Task.WaitAny(defaultRequest, cancelRequest, eventRequest, disconnectRequest);
|
||||
#if TRACE
|
||||
Console.WriteLine("Request received");
|
||||
sw.Restart();
|
||||
@@ -96,9 +99,12 @@ namespace mROA.Implementation.Frontend
|
||||
{
|
||||
HandleCallRequest(tokenSource, defaultRequest.Result);
|
||||
}
|
||||
else
|
||||
else if(eventRequest.IsCompleted)
|
||||
{
|
||||
HandleEventRequest(tokenSource, eventRequest.Result);
|
||||
}else if (disconnectRequest.IsCompleted)
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -92,9 +92,6 @@ namespace mROA.Implementation
|
||||
throw new NullReferenceException("Interaction toolkit is not initialized");
|
||||
if (_serialization == null)
|
||||
throw new NullReferenceException("Serialization toolkit is not initialized");
|
||||
#if TRACE
|
||||
Console.WriteLine($"{DateTime.Now.TimeOfDay} Posting message: {id} - {messageType} to {Id}");
|
||||
#endif
|
||||
|
||||
var serialized = _serialization.Serialize(payload, payloadType);
|
||||
await _interaction.PostMessageAsync(new NetworkMessageHeader
|
||||
|
||||
Reference in New Issue
Block a user