Пример #1
0
        private void UpdateDevices(AlertsResponse alertsResponse, IEnumerable <string> deviceIds)
        {
            Dictionary <string, Device> devices = new Dictionary <string, Device>();

            foreach (var id in deviceIds)
            {
                devices.Add(id, new Device()
                {
                    Id = id, Alerts = new ItemsDictionary <Alert>()
                });
            }

            if (alertsResponse != null && alertsResponse.IsSuccessful && alertsResponse.Body.Alerts != null)
            {
                foreach (var alert in alertsResponse.Body.Alerts.Values)
                {
                    string deviceId = alert.DeviceId;
                    if (deviceId != null && devices.ContainsKey(deviceId))
                    {
                        devices[deviceId].Alerts.Add(alert.Id, alert);
                    }
                }

                foreach (var device in devices.Values)
                {
                    DataCache.AddOrUpdate(device);
                }
            }
        }