public static void remove_Message(Connection that, Action <MessageEvent> value) { if (MessageFixup.ContainsKey(value)) { CommonExtensions.RemoveDelegate(that, MessageFixup[value], MessageEvent.MESSAGE); MessageFixup.Remove(value); } }
public static void add_Message(Connection that, Action <MessageEvent> value) { if (!MessageFixup.ContainsKey(value)) { MessageFixup[value] = i => value(MessageEvent.CloneFrom(i)); } CommonExtensions.CombineDelegate(that, MessageFixup[value], MessageEvent.MESSAGE); }