protected override IEnumerable <ISubscription> OnSubscribe() { var baseSubscription = base.OnSubscribe(); _subscription = Params._source.Subscribe(this); return(baseSubscription.Concat(new ISubscription[] { _subscription })); }
protected override void SubscriptionStart(long sequenceId, Subscription subscription) { if (_externalSubscription != null) { throw new InvalidOperationException("Input edge subscription can be started only once."); } _externalSubscription = CreateExternalSubscription(); _externalSubscription.Start(sequenceId); base.SubscriptionStart(sequenceId, subscription); _task = new ProcessingTask(this); _scheduler.Schedule(_task); }
protected override IEnumerable <ISubscription> OnSubscribe() { _subscription = Params._source.Subscribe(this); return(new ISubscription[] { _subscription }); }
public override void Start() { base.Start(); _externalSubscription = CreateExternalSubscription(); }