using System; using System.Collections.Generic; using System.Linq; using AsbCloudApp.Services; namespace AsbCloudInfrastructure.Services { public class TelemetryTracker : ITelemetryTracker { private IDictionary _requests = new Dictionary(); public void SaveRequest(string id) { _requests[id] = DateTime.Now; DeleteOldRequests(); } public void DeleteOldRequests(int minutes = 6) { _requests = _requests.Where(dValue => (DateTime.Now - dValue.Value).Minutes < minutes).ToDictionary(dValue => dValue.Key, dValue => dValue.Value); } public IEnumerable GetRequests() { DeleteOldRequests(); return _requests.Keys; } } }