public void DetachChannel(ITelemetryTestChannel channel)
 {
     if (telemetrySession != null)
     {
         TelemetrySession obj = telemetrySession;
         obj.RawTelemetryEventReceived = (EventHandler <TelemetryTestChannelEventArgs>)Delegate.Remove(obj.RawTelemetryEventReceived, new EventHandler <TelemetryTestChannelEventArgs>(channel.OnPostEvent));
     }
     this.channel = null;
 }
        public void AttachChannel(ITelemetryTestChannel channel)
        {
            this.channel = channel;
            if (telemetrySession == null)
            {
                telemetrySession = TelemetryService.DefaultSession;
            }
            TelemetrySession obj = telemetrySession;

            obj.RawTelemetryEventReceived = (EventHandler <TelemetryTestChannelEventArgs>)Delegate.Combine(obj.RawTelemetryEventReceived, new EventHandler <TelemetryTestChannelEventArgs>(channel.OnPostEvent));
        }
 private void DetachChannel()
 {
     lock (lockObject)
     {
         if (channel != null)
         {
             provider.DetachChannel(channel);
             channel = null;
             cancellationTokenSource.Cancel();
             EventNewItemAvailableForNotification.Set();
         }
     }
 }
 private void AttachChannel()
 {
     lock (lockObject)
     {
         if (channel == null)
         {
             channel = new NotificationTelemetryChannel(OnPostEvent);
             provider.AttachChannel(channel);
             if (cancellationTokenSource == null || cancellationTokenSource.IsCancellationRequested)
             {
                 cancellationTokenSource = new CancellationTokenSource();
                 Task.Run(async delegate
                 {
                     await ListenForEventsInQueue();
                 });
             }
         }
     }
 }
示例#5
0
 /// <summary>
 /// Detach test channel
 /// </summary>
 /// <param name="channel"></param>
 public static void DetachTestChannel(ITelemetryTestChannel channel)
 {
     CodeContract.RequiresArgumentNotNull <ITelemetryTestChannel>(channel, "channel");
     GlobalTelemetryTestChannel.Instance.EventPosted -= channel.OnPostEvent;
 }