예제 #1
0
        public static ITimeLog Deserialize(XmlNode xml)
        {
            XmlNode  data = xml["LazyCureData"];
            ITimeLog timeLog;

            if (data != null)
            {
                XmlAttribute dateAttribute = data.Attributes["Date"];
                DateTime     date;
                if (dateAttribute != null)
                {
                    date = DateTime.Parse(dateAttribute.Value);
                }
                else
                {
                    date = DateTime.Today;
                }
                timeLog = new TimeLog(date);

                foreach (XmlNode node in data.ChildNodes)
                {
                    if (node.Name == "Records")
                    {
                        IActivity activity = ActivitySerializer.Deserialize(node);
                        timeLog.AddActivity(activity);
                    }
                }
            }
            else
            {
                timeLog = new TimeLog(DateTime.Now.Date);
            }
            return(timeLog);
        }
예제 #2
0
        public IActivity Load()
        {
            XmlDocument document = new XmlDocument();

            try
            {
                document.Load(FILENAME);
                XmlNode xml = document.FirstChild;
                return(ActivitySerializer.Deserialize(xml));
            }
            catch (Exception)
            {
                return(null);
            }
        }
예제 #3
0
        public void Load()
        {
            // Deserialize _activities
            _activities.Clear();
            string folder = Environment.CurrentDirectory;

            foreach (string filePath in Directory.GetFiles(folder, "*.xaml"))
            {
                string fn  = Path.GetFileNameWithoutExtension(filePath);
                string key = Uri.UnescapeDataString(fn);
                using (TextReader tr = new StreamReader(filePath))
                {
                    DynamicActivity da = (DynamicActivity)_serializer.Deserialize(tr);
                    _activities.Add(key, da);
                }
            }

            // Deserialize _namedrules
            // TODO: ignore it right now.
            _namedrules.Clear();
        }
예제 #4
0
 public object Deserialize(TextReader reader, System.Type objectType)
 {
     return(_activitySerializer.Deserialize(reader));
 }