2 using System.Collections.Generic;
14 private HashSet<Action<TPayload>> subscribers =
new HashSet<Action<TPayload>>();
21 internal void Subscribe(Action<TPayload> subscriber)
23 subscribers.Add(subscriber);
31 internal void Unsubcsribe(Action<TPayload> subscriber)
33 subscribers.Remove(subscriber);
39 internal void Publish(TPayload payload)
41 foreach (Action<TPayload> subscriber
in subscribers)
56 private HashSet<Action<TPayload, TPayload2>> subscribers =
new HashSet<Action<TPayload, TPayload2>>();
63 internal void Subscribe(Action<TPayload, TPayload2> subscriber)
65 subscribers.Add(subscriber);
73 internal void Unsubcsribe(Action<TPayload, TPayload2> subscriber)
75 subscribers.Remove(subscriber);
81 internal void Publish(TPayload payload, TPayload2 payload2)
83 foreach (Action<TPayload, TPayload2> subscriber
in subscribers)
85 subscriber(payload, payload2);
Class representing message with payload.
Base class for message to be used by messenger.