예제 #1
0
        private IDictionary <string, string> buildfoldersPath(VaultFolderList folderList)
        {
            Dictionary <string, string> foldersPath = new Dictionary <string, string>();

            foreach (VaultFolder folder in folderList)
            {
                string folderPath = folder.HRID;

                if (folder.ParentFolderGUID != "")
                {
                    VaultFolder nextNode = folder;
                    while (nextNode.ParentFolderGUID != "")
                    {
                        VaultFolder parentFolder = matchParentFolder(nextNode, folderList);
                        if (parentFolder != null)
                        {
                            folderPath = parentFolder.HRID + "/" + folderPath;
                            nextNode   = parentFolder;
                        }
                        else
                        {
                            break;
                        }
                    }
                }

                foldersPath.Add(folder.GUID, folderPath);
                //Console.WriteLine(folderPath);
            }

            return(foldersPath);
        }
예제 #2
0
        private VaultFolder matchParentFolder(VaultFolder childFolder, VaultFolderList allFolder)
        {
            VaultFolder parentFolder = null;

            foreach (VaultFolder folder in allFolder)
            {
                if (childFolder.ParentFolderGUID == folder.GUID)
                {
                    parentFolder = folder;
                    break;
                }
            }

            return(parentFolder);
        }
예제 #3
0
        private void countAllCommponents(VaultClient vaultClient)
        {
            VaultFolderList folderList             = vaultClient.GetAllFolders();
            IDictionary <string, string> pathsList = buildfoldersPath(folderList);

            List <string> resultList = new List <string>();

            foreach (VaultFolder folder in folderList)
            {
                if (folder.FolderTypeGUID == "89B6B381-D64E-456E-BF2A-E08CBB186A84")
                {
                    int    itemCount = vaultClient.GetItemCount(string.Format("FOLDERGUID = '{0}'", folder.GUID));
                    string line      = pathsList[folder.GUID] + "   " + itemCount.ToString();
                    resultList.Add(line);
                    Console.WriteLine(line);
                }
            }

            System.IO.File.WriteAllLines(@"result.txt", resultList);
        }