private static void MapActorToMessage(InternalRouteRegistration routeRegistration, Bcl.IDictionary <ReceiverIdentifier, Bcl.HashSet <MessageIdentifier> > actorMessages, MessageContract messageContract) { if (!actorMessages.TryGetValue(routeRegistration.ReceiverIdentifier, out var messages)) { messages = new Bcl.HashSet <MessageIdentifier>(); actorMessages[routeRegistration.ReceiverIdentifier] = messages; } messages.Add(messageContract.Message); }
private void MapMessageToActor(InternalRouteRegistration routeRegistration, MessageContract messageContract) { if (!messageToActorMap.TryGetValue(messageContract.Message, out var actors)) { actors = new HashedLinkedList <ReceiverIdentifier>(); messageToActorMap[messageContract.Message] = actors; } if (!actors.Contains(routeRegistration.ReceiverIdentifier)) { var registration = new ReceiverIdentifierRegistration(routeRegistration.ReceiverIdentifier, messageContract.KeepRegistrationLocal); actors.InsertLast(registration); } }