Пример #1
0
        private void Load()
        {
            PresenceReports.Clear();
            CrashReports.Clear();

            XmlDocument doc = new XmlDocument();

            try
            {
                doc.Load(STORAGE_FILE);
                foreach (XmlElement node in doc.DocumentElement.ChildNodes)
                {
                    Entry entry = Entry.Deserialize(node);

                    if (!entry.user.IsValid())
                    {
                        continue;
                    }

                    switch (node.Name)
                    {
                    case "presence":
                        PresenceReports.Add(entry);
                        break;

                    case "crash":
                        CrashReports.Add(entry, node.InnerText);
                        break;
                    }
                }
            }
            catch (FileNotFoundException) { }
        }
Пример #2
0
        public void AddPresenceReport(UserInfo user)
        {
            bool exists = PresenceReports.Exists((Entry e) =>
                                                 e.user.IPAddress == user.IPAddress &&
                                                 e.user.MachineName == user.MachineName &&
                                                 e.date.Date == DateTime.Today);

            if (!exists)
            {
                PresenceReports.Add(new Entry(user));
                PersistanceCheckpoint();
            }
        }