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(); }); } } } }
/// <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; }