Example #1
0
        private static string[] GetDirectoriesIncludingRoot(
            IStorageService oStorage,
            string sPath,
            bool bIncludeSubDirs,
            List <string> selectedSubDirs = null)
        {
            List <string> Dirs = new List <string>();

            if (!bIncludeSubDirs || selectedSubDirs == null || selectedSubDirs.Count == 0)
            {
                // Root directory is always copied
                Dirs.Add(sPath);
            }

            if (bIncludeSubDirs)
            {
                // Query for subdirs
                Dirs.AddRange(oStorage.QuerySubDirs(sPath, true, DirectoryView.Tree));

                if (selectedSubDirs != null && selectedSubDirs.Count > 0)
                {
                    string[] foundFirs = SetUtil <string> .GetIntersection(Dirs, selectedSubDirs);

                    Dirs.Clear();

                    Dirs.AddRange(foundFirs);
                }
            }

            return(Dirs.ToArray());
        }
Example #2
0
        public static bool MustHaveOneOfRequiredRoles(
            string[] PresentRoles,
            string[] RequiredRoles)
        {
            if (RequiredRoles.Length > 0)
            {
                return(SetUtil <string> .GetIntersection(
                           PresentRoles,
                           RequiredRoles).Length > 0);
            }

            return(false);
        }
Example #3
0
        public static bool HasOneOfRequiredRoles(
            string[] PresentRoles,
            string[] RequiredRoles)
        {
            if (RequiredRoles.Length == 0)
            {
                // No roles required - ok
                return(true);
            }

            return(SetUtil <string> .GetIntersection(
                       PresentRoles,
                       RequiredRoles).Length > 0);
        }