private static void processClearedEvents(object source, ElapsedEventArgs e) { lock (eventDataStore){ foreach (EventData eventData in eventDataStore.getAllEventData()) { DateTime publicationTime = eventData.getPublicationTime(); bool isClear = false; SituationRecord situationRecord = eventData.getEventData().situationRecord[0]; LifeCycleManagement lifeCycleManagement; if (situationRecord.management != null) { lifeCycleManagement = situationRecord.management.lifeCycleManagement; } else { lifeCycleManagement = null; } if (lifeCycleManagement != null && (lifeCycleManagement.cancel || lifeCycleManagement.end)) { isClear = true; } DateTime currentTime = DateTime.Now; DateTime expireTime = publicationTime.AddSeconds(expireClearedEventsAfterMins * SECONDS_IN_MINUTE); if (isClear && currentTime.CompareTo(expireTime) >= 0) { eventDataStore.removeData(eventData.getEventIdentifier()); logWrapper.Info("Removed Expired Event: " + eventData.getEventIdentifier()); } } } }
public IHttpActionResult eventDataCount() { EventDataStore eventDataStore = (EventDataStore)DataStoreFactory.GetInstance().GetDataStore(DataStoreFactory.DATA_STORES.EVENT_DATA_STORE); return(Json(eventDataStore.getAllEventData().Count, new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore, Converters = { new StringEnumConverter { } } })); }