コード例 #1
0
 public void Visit(FolderCompareObject folder, string[] currentPath)
 {
     XmlDocument xmlDoc = new XmlDocument();
     for (int i = 0; i < currentPath.Length; i++)
     {
         if (currentPath[i].Contains(META_DIR))
             continue;
         string xmlPath = Path.Combine(currentPath[i], METADATAPATH);
         if (!File.Exists(xmlPath))
             continue;
         xmlDoc.Load(xmlPath);
         PopulateFolderWithTodo(xmlDoc, folder, i);
         xmlDoc.Save(xmlPath);
     }
 }
コード例 #2
0
        private FolderCompareObject PopulateFolderWithTodo(XmlDocument xmlDoc, FolderCompareObject folder, int counter)
        {
            XmlNode node = xmlDoc.SelectSingleNode(XPATH_EXPR + "/todo" + "[name='" + folder.Name + "']");
            if (node == null)
                return folder;

            XmlNodeList childNodeList = node.ChildNodes;
            for (int i = 0; i < childNodeList.Count; i++)
            {
                XmlNode childNode = childNodeList[i];
                if (childNode.Name.Equals(NODE_CHANGE_TYPE))
                {
                    if (node.InnerText.Equals(DELETE))
                        folder.ToDoAction = ToDo.Delete;
                    else if (node.InnerText.Equals(RENAME))
                        folder.ToDoAction = ToDo.Rename;
                }
            }

            return folder;
        }