public void Unsubscribe(Type eventType, ILocalEventHandler handler) { GetOrCreateHandlerFactories(eventType) .Locking(factories => { factories.RemoveAll( factory => factory is SingleInstanceHandlerFactory && (factory as SingleInstanceHandlerFactory).HandlerInstance == handler ); }); }
/// <inheritdoc/> public virtual IDisposable Subscribe <TEvent>(ILocalEventHandler <TEvent> handler) where TEvent : class { return(Subscribe(typeof(TEvent), handler)); }
/// <inheritdoc/> public virtual void Unsubscribe <TEvent>(ILocalEventHandler <TEvent> handler) where TEvent : class { Unsubscribe(typeof(TEvent), handler); }
public void Unsubscribe <TEvent> (ILocalEventHandler <TEvent> handler) where TEvent : class { _localEventBus.Unsubscribe(handler); }
public IDisposable Subscribe <TEvent> (ILocalEventHandler <TEvent> handler) where TEvent : class { return(_localEventBus.Subscribe(handler)); }
public void Unsubscribe <TEvent>(ILocalEventHandler <TEvent> handler) where TEvent : class { }
public IDisposable Subscribe <TEvent>(ILocalEventHandler <TEvent> handler) where TEvent : class { return(NullDisposable.Instance); }
public EventHandlerDisposeWrapper(ILocalEventHandler eventHandler, Action disposeAction = null) { _disposeAction = disposeAction; EventHandler = eventHandler; }
/// <inheritdoc/> public virtual IDisposable Subscribe(Type eventType, ILocalEventHandler handler) { return(Subscribe(eventType, new SingleInstanceHandlerFactory(handler))); }
/// <summary> /// /// </summary> /// <param name="handler"></param> public SingleInstanceHandlerFactory(ILocalEventHandler handler) { HandlerInstance = handler; }
public void Unsubscribe(Type eventType, ILocalEventHandler handler) { }
public IDisposable Subscribe(Type eventType, ILocalEventHandler handler) { return(NullDisposable.Instance); }