public ReputationManager(IPeerRepository peerRepository, ILogger logger, IScheduler scheduler = null) { var observableScheduler = scheduler ?? Scheduler.Default; _logger = logger; PeerRepository = peerRepository; ReputationEvent = new ReplaySubject <IPeerReputationChange>(0, observableScheduler); ReputationEventStream.Subscribe(OnNext, OnError, OnCompleted); }
public ReputationManager(IPeerRepository peerRepository, ILogger logger) { _logger = logger; PeerRepository = peerRepository; ReputationEvent = new ReplaySubject <IPeerReputationChange>(0); ReputationEventStream .SubscribeOn(NewThreadScheduler.Default) .Subscribe(OnNext, OnError, OnCompleted); }
/// <summary> /// Allows passing a reputation streams to merge with the MasterReputationEventStream /// </summary> /// <param name="reputationChangeStream"></param> /// <exception cref="System.NotImplementedException"></exception> public void MergeReputationStream(IObservable <IPeerReputationChange> reputationChangeStream) { MergedEventStream = ReputationEventStream.Merge(reputationChangeStream); }