public StreamJob(IStreamSender sender, IPlanner planner, ILog log, TimeSpan requestTimeout) { this.log = log; this.sender = sender; this.planner = planner; this.requestTimeout = requestTimeout; }
/// <summary> /// /// </summary> /// <param name="connectionId"></param> /// <param name="sender"></param> public virtual void RemoveSender(string connectionId, IStreamSender sender) { sender.Track.Stop(); sender.SetSender(connectionId, null); if (ExistConnection(connectionId)) { RemoveTrack(connectionId, sender.Track); } }
public void TestSetup() { sender = Substitute.For <IStreamSender>(); sender .SendAsync(Arg.Any <TimeSpan>(), Arg.Any <CancellationToken>()) .Returns(SendResult(HerculesStatus.Success)); planner = Substitute.For <IPlanner>(); planner .WaitForNextSendAsync(Arg.Any <StreamSendResult>(), Arg.Any <CancellationToken>()) .Returns(Task.CompletedTask); log = new SynchronousConsoleLog(); job = new StreamJob(sender, planner, log, RequestTimeout); }
/// <summary> /// /// </summary> /// <param name="connectionId"></param> /// <param name="sender"></param> /// <returns></returns> public virtual void AddSender(string connectionId, IStreamSender sender) { var transceiver = m_handler.AddSenderTrack(connectionId, sender.Track); sender.SetSender(connectionId, transceiver.Sender); }