public WeakReferenceDecorator( IMessageHandler <TMessageType> handler, IChainBuilderNotifier builderNotifier, IWeakReferenceGarbageCollector weakReferenceGarbageCollector) { this.weakReferenceMessageHandler = new WeakReference <IMessageHandler <TMessageType> >(handler); builderNotifier.AddNotification(chain => this.chain = chain); weakReferenceGarbageCollector?.Add(this); }
public TakeDecorator(Func <TMessageType, CancellationToken, Task> handlerFunc, int numberOfMessages, IChainBuilderNotifier builderNotifier) { this.handlerFunc = handlerFunc; this.count = numberOfMessages; builderNotifier.AddNotification(this.SetChain); }