CmisSync.Lib.Utils.IsDirectoryWorthSyncing C# (CSharp) Метод

IsDirectoryWorthSyncing() публичный статический Метод

Check whether the directory is worth syncing or not. Directories that are not worth syncing include ignored, system, and hidden folders.
public static IsDirectoryWorthSyncing ( string localDirectory, RepoInfo repoInfo ) : bool
localDirectory string
repoInfo RepoInfo
Результат bool
        public static bool IsDirectoryWorthSyncing(string localDirectory, RepoInfo repoInfo)
        {
            if (!localDirectory.StartsWith(repoInfo.TargetDirectory))
            {
                Logger.WarnFormat("Local directory is outside repo target directory.  local={0}, repo={1}", localDirectory, repoInfo.TargetDirectory);
                return false;
            }

            //Check for ignored path...
            string path = localDirectory.Substring(repoInfo.TargetDirectory.Length).Replace("\\", "/");
            if (repoInfo.isPathIgnored(path))
            {
                Logger.DebugFormat("Skipping {0}: hidden folder", localDirectory);
                return false;

            }

            //Check system/hidden
            DirectoryInfo directoryInfo = new DirectoryInfo(localDirectory);
            if (directoryInfo.Exists)
            {
                if (directoryInfo.Attributes.HasFlag(FileAttributes.Hidden))
                {
                    Logger.DebugFormat("Skipping {0}: hidden folder", localDirectory);
                    return false;
                }
                if (directoryInfo.Attributes.HasFlag(FileAttributes.System))
                {
                    Logger.DebugFormat("Skipping {0}: system folder", localDirectory);
                    return false;
                }

            }

            return true;
        }