/// <inheritdoc />
 public void Unload()
 {
     collector.Detach();
     // remove session specific data
     RemoveAdditionalData(SessionData);
     collector.Dispatcher      = null;
     collector                 = null;
     playerMonitor.MediaPlayer = null;
     playerMonitor             = null;
 }
        /// <inheritdoc />
        public void Load()
        {
            // by default, we always add the collector as a logging source
            collector            = new AnalyticsCollector(AnalyticsConfig);
            collector.Dispatcher = Dispatcher;
            // add session specific data
            AddAdditionalData(SessionData);
            LoggingService.Current.LoggingSources.Add(collector);

            // initialize the collector. The AnalyticsCollector relies on other objects to pass it info.
            playerMonitor = new MediaPlayerAdapter(MediaPlayer);
            AddAdditionalData(MediaData);
            collector.Attach(playerMonitor, AdaptiveMonitor, EnvironmentMonitor, EdgeServerMonitor);
        }
 /// <inheritdoc /> 
 public void Unload()
 {
     collector.Detach();
     // remove session specific data
     RemoveAdditionalData(SessionData);
     collector.Dispatcher = null;
     collector = null;
     playerMonitor.MediaPlayer = null;
     playerMonitor = null;
 }
        /// <inheritdoc /> 
        public void Load()
        {
            // by default, we always add the collector as a logging source
            collector = new AnalyticsCollector(AnalyticsConfig);
            collector.Dispatcher = Dispatcher;
            // add session specific data
            AddAdditionalData(SessionData);
            LoggingService.Current.LoggingSources.Add(collector);

            // initialize the collector. The AnalyticsCollector relies on other objects to pass it info.
            playerMonitor = new MediaPlayerAdapter(MediaPlayer);
            AddAdditionalData(MediaData);
            collector.Attach(playerMonitor, AdaptiveMonitor, EnvironmentMonitor, EdgeServerMonitor);
        }