Bug with setting BaseStream in interaction module solved

This commit is contained in:
2025-04-09 14:04:04 +03:00
parent e2012dc2d3
commit 2e1be7b7e8
2 changed files with 11 additions and 6 deletions
@@ -47,16 +47,17 @@ namespace mROA.Implementation.Frontend
{ {
Reconnect(); Reconnect();
}; };
_ = _interactionModule.PostMessageAsync(new NetworkMessageHeader(_serialization, new ClientConnect()));
var welcomeMessage = _interactionModule.GetNextMessageReceiving().GetAwaiter().GetResult(); _interactionModule.PostMessageAsync(new NetworkMessageHeader(_serialization, new ClientConnect())).Wait();
if (welcomeMessage.MessageType != EMessageType.IdAssigning) var idMessage = _interactionModule.GetNextMessageReceiving(false).GetAwaiter().GetResult();
if (idMessage.MessageType != EMessageType.IdAssigning)
{ {
throw new Exception( throw new Exception(
$"Incorrect message type. Must be IdAssigning, current : {welcomeMessage.MessageType.ToString()}"); $"Incorrect message type. Must be IdAssigning, current : {idMessage.MessageType.ToString()}");
} }
var assignment = _serialization.Deserialize<IdAssignment>(welcomeMessage.Data)!; var assignment = _serialization.Deserialize<IdAssignment>(idMessage.Data)!;
_interactionModule.ConnectionId = -assignment.Id; _interactionModule.ConnectionId = -assignment.Id;
TransmissionConfig.OwnershipRepository = new StaticOwnershipRepository(assignment.Id); TransmissionConfig.OwnershipRepository = new StaticOwnershipRepository(assignment.Id);
} }
@@ -26,7 +26,11 @@ namespace mROA.Implementation
} }
public int ConnectionId { get; set; } public int ConnectionId { get; set; }
public Stream? BaseStream { get; set; }
public Stream? BaseStream
{
get => _baseStream; set => _baseStream = value;
}
public void Inject<T>(T dependency) public void Inject<T>(T dependency)