protected override IObservable <MM.Message> GetMessagingSource() { return(from b in UpstreamMessaging.Buffer(MaxWait, MaxSize) select new MM.Batch { Messages = b.ToList() }); }
protected override IObservable <MM.Message> GetMessagingSource() { if (By > 0) { return(from b in UpstreamMessaging.Skip(By) select b); } else if (While != null) { return(from b in UpstreamMessaging.SkipWhile(msg => WhileCondition(msg)) select b); } throw new InvalidOperationException("Either 'By' or 'While' must be set"); }
protected override IObservable <Message> GetMessagingSource() { return(UpstreamMessaging.Distinct(b => SelectValue(b))); }