/// <see cref="IActionSubscriber.SubscribeToAction{TAction}(object, Action{TAction})"/> public void SubscribeToAction <TAction>(Action <TAction> callback) { ActionSubscriber.SubscribeToAction <TAction>(this, action => { if (!Disposed) { callback(action); } }); }
protected virtual void Dispose(bool disposing) { if (!Disposed) { Disposed = true; if (disposing) { if (StateSubscription == null) { throw new NullReferenceException(ErrorMessages.ForgottenToCallBaseOnInitialized); } StateSubscription.Dispose(); ActionSubscriber?.UnsubscribeFromAllActions(this); } } }
static EventAggregator() { var subscriber = new ActionSubscriber <object>((o, o1) => { }); EmptyMessage = new MessageSenderCache(subscriber, subscriber, subscriber, 0); }
public void Setup() { GC.Collect(); GC.WaitForPendingFinalizers(); ActionSubscriber.ResetCount(); }