Ejemplo n.º 1
0
 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);
     }
 }
Ejemplo n.º 3
0
        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);
        }