public IPCMessage GetMessage(Guid messageId) { if (!MessageLog.ContainsKey(messageId)) { return(null); } return(MessageLog[messageId]); }
/// <summary> /// Used by clients to send messages /// </summary> /// <param name="message"></param> public Guid SendMessage(IPCMessage message) { if (MessageLog.ContainsKey(message.Id)) { // Repeated message IPCMessage lastMessage = MessageLog[message.Id]; return(lastMessage.ResponseId); } message.ResponseId = Guid.NewGuid(); MessageLog.Add(message.Id, message); OnMessageReceived?.Invoke(message); return(message.ResponseId); }