Пример #1
0
        public void CatEqualsSep_true()
        {
            var first  = new FolderCategory("/download");
            var second = new FolderCategory("/download/");

            var result = first.Equals(second);

            Assert.IsTrue(result);
            Assert.Pass();
        }
Пример #2
0
        public void CatEquals_false()
        {
            var first  = new FolderCategory("/download/");
            var second = new FolderCategory("pub/download/");

            var result = first.Equals(second);

            Assert.IsFalse(result);
            Assert.Pass();
        }
Пример #3
0
        /// <summary>
        /// Gets registered exportable folders.
        /// </summary>
        /// <returns>Array of registered exportable folders.</returns>
        public static FolderCategory[] GetRegisteredFolders()
        {
            FolderCategory[] Result;

            lock (folders)
            {
                Result = new FolderCategory[folders.Count];
                folders.Values.CopyTo(Result, 0);
            }

            return(Result);
        }
Пример #4
0
        /// <summary>
        /// Returns the path of a known folder
        /// </summary>
        internal static string GetPath(Guid knownFolderId)
        {
            IKnownFolder _knownFolder;

            _knownFolderManager.GetFolder(knownFolderId, out _knownFolder);

            FolderCategory category = _knownFolder.GetCategory();

            if (category == FolderCategory.Virtual)
            {
                return(String.Empty);
            }
            return(_knownFolder.GetPath(0));
        }
Пример #5
0
        /// <summary>
        /// Registers a set of exportable folders under one display name.
        /// </summary>
        /// <param name="CategoryId">Category ID</param>
        /// <param name="DisplayName">Display Name</param>
        /// <param name="Folders">Set of exprtable folders.</param>
        public static void RegisterFolders(string CategoryId, string DisplayName, params string[] Folders)
        {
            lock (folders)
            {
                if (folders.ContainsKey(CategoryId))
                {
                    throw new ArgumentException("Category ID already registered.", nameof(CategoryId));
                }

                folders[DisplayName] = new FolderCategory()
                {
                    CategoryId  = CategoryId,
                    DisplayName = DisplayName,
                    Folders     = Folders
                };
            }
        }