public void Monitor() { IsMonitoring = !IsMonitoring; if (IsMonitoring) { ListenersData.Clear(); // To have last 30 minutes of data visible in the data grid ListenersData.MaxSize = 1800 / TimeInterval; _dataReceiver.TimeInterval = TimeInterval; _dataReceiver.StatsUrl = StatsUrl; _dataReceiver.Start(); // Update config _configService.Update("StatsUrl", StatsUrl); _configService.Update("TimeInterval", TimeInterval); _configService.Update("MonitorWithAppStart", MonitorWithAppStart); } else { _dataReceiver.Stop(); } }
/// <summary> /// Adds the listener. /// </summary> /// <param name="Sender">Monobehaiviour of listener.</param> /// <param name="eventAction">Method to invoke.</param> /// <param name="_eventListenerName">Event listener name.</param> public void AddListener(Component Sender, Action <EventData> eventAction, string _eventListenerName) { // Check event name exist if not create it. if (!ListenerComponents.ContainsKey(_eventListenerName)) { ListenerComponents.Add(_eventListenerName, new List <ListenersData>()); } // Loop throw all listeners for (int i = 0, count = ListenerComponents[_eventListenerName].Count; i < count; i++) { // Check for not to duplicate listener call if (ListenerComponents[_eventListenerName][i].ListenerObject == Sender) { return; } } // Set new listener data ListenersData senderData = new ListenersData(); senderData.ListenerObject = Sender; senderData.ListenerEvent = eventAction; // add data of new listener ListenerComponents[_eventListenerName].Add(senderData); //Clean list for any duplicates RemoveRedundancies(); }
/// <summary> /// Adds the listener. /// </summary> /// <param name="Sender">Monobehaiviour of listener.</param> /// <param name="eventAction">Method to invoke.</param> /// <param name="_eventListenerName">Event listener name.</param> public void AddListener(Component Sender, Action<EventData> eventAction, string _eventListenerName) { // Check event name exist if not create it. if(!ListenerComponents.ContainsKey (_eventListenerName)) ListenerComponents.Add (_eventListenerName, new List<ListenersData>()); // Loop throw all listeners for (int i = 0, count = ListenerComponents[_eventListenerName].Count; i < count; i++) { // Check for not to duplicate listener call if (ListenerComponents[_eventListenerName][i].ListenerObject == Sender) return; } // Set new listener data ListenersData senderData = new ListenersData (); senderData.ListenerObject = Sender; senderData.ListenerEvent = eventAction; // add data of new listener ListenerComponents[_eventListenerName].Add(senderData); //Clean list for any duplicates RemoveRedundancies(); }
/// <inheritdoc /> public void Handle(ListenerData data) { ListenersData.Push(data); }