private void UpdateLedConfigSyncCollection() { //if (string.IsNullOrEmpty(AppDataConfig.CurrentMAC)) //{ // return; //} for (int screenIndex = 0; screenIndex < LedList.Count; screenIndex++) { string id = GetScreenId(AppDataConfig.CurrentMAC, LedList[screenIndex].SerialNumber); if (_syncInformationManager.ContainsScreen(id)) { continue; } else { foreach (int type in Enum.GetValues(typeof(SyncType))) { var summary = new SyncSummary(); summary.SyncMark = "-1"; summary.Type = (SyncType)Enum.Parse(typeof(SyncType), type.ToString()); var syncData = new SyncData() { SyncType = (SyncType)Enum.Parse(typeof(SyncType), type.ToString()), SyncParam = SyncFlag.Synchronized, SyncContent = string.Empty, Datestamp = "-1" }; _syncInformationManager.AddSyncData(id, syncData); } } } }
public void HeartbeatWithCareServer(object obj) { if (LedList == null) return; List<Led> ledList = new List<Led>(); lock (LedList) { ledList = LedList.Select(t => (Led)t.Clone()).ToList(); } isBlocked = 0; UpdateLedConfigSyncData(); foreach (var led in ledList) { HeartbeatRequest request; string id = GetScreenId(AppDataConfig.CurrentMAC, led.SerialNumber); if (_syncInformationManager.ContainsScreen(id)) { var syncInfos = new List<SyncSummary>(); var currentSyncInformation = _syncInformationManager.GetSyncInformation(id); foreach (var syncData in currentSyncInformation.SyncDatas) { var info = new SyncSummary(); info.SyncMark = syncData.Datestamp; info.Type = syncData.SyncType; syncInfos.Add(info); } request = new HeartbeatRequest() { Identifier = id, SystemVersion = AppDataConfig.CurrentMonitorVersion, Timestamp = SystemHelper.GetUtcTicksByDateTime(DateTime.Now).ToString(), SyncInfos = syncInfos }; } else { var syncInfos = new List<SyncSummary>(); foreach (int type in Enum.GetValues(typeof(SyncType))) { var info = new SyncSummary(); info.SyncMark = "-1"; info.Type = (SyncType)Enum.Parse(typeof(SyncType), type.ToString()); syncInfos.Add(info); _syncInformationManager.AddSyncData(id, new SyncData() { SyncType = info.Type, SyncParam = SyncFlag.Synchronized, SyncContent = string.Empty, Datestamp = "-1" }); } request = new HeartbeatRequest() { Identifier = id, SystemVersion = AppDataConfig.CurrentMonitorVersion, Timestamp = SystemHelper.GetUtcTicksByDateTime(DateTime.Now).ToString(), SyncInfos = syncInfos }; } RestFulClient.Instance.Post("api/index/heartbeat", request, response => { HeartbeatResponse(response); }); } }
public void InitializeSyncDataBy(string id) { foreach (int type in Enum.GetValues(typeof(SyncType))) { var summary = new SyncSummary(); summary.SyncMark = "-1"; summary.Type = (SyncType)Enum.Parse(typeof(SyncType), type.ToString()); var syncData = new SyncData() { SyncType = (SyncType)Enum.Parse(typeof(SyncType), type.ToString()), SyncParam = SyncFlag.Synchronized, SyncContent = string.Empty, Datestamp = "-1" }; AddSyncData(id, syncData); } }