Exemplo n.º 1
0
        /// <summary>
        /// Resolves the files, folders and directories based on the working directory,
        /// populating the <see cref="HunterSession.SubmissionsBag"/> with the filtered submissions.
        /// </summary>
        /// <remarks>An enumerator is available from <see cref="HunterSession.Submissions"/>.</remarks>
        internal void CreateSubmissions()
        {
            //// Do we have a working directory?
            //bool hasWorkingDirectory = !string.IsNullOrWhiteSpace(WorkingDirectory);

            // Resolve any candidates into possible submissions, applying the
            // current filters
            _candidates.Resolve(WorkingDirectory);

            // Maybe get the first candidate
            SubmissionCandidate candidate = _candidates.FirstResolved;

            // Process each valid candidate
            while (candidate != null)
            {
                // Try to create a submission from that candidate
                if (candidate.TryCreateSubmission(this, out Submission submission))
                {
                    // Add it to the submissions bag
                    _submissions.Add(submission);

                    //// If there isn't a working directory/base path, then we assume the first submission to be it.
                    //if (hasWorkingDirectory == false)
                    //{
                    //    hasWorkingDirectory = true;
                    //    WorkingDirectory = candidate.ContainerPath;
                    //}
                }

                // Fetch the next submission for processing, or null if there aren't any left
                candidate = _candidates.NextResolved;
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// Filter out specific files from valid candidates
        /// </summary>
        /// <returns>Shoudl be filtered out?</returns>
        /// <param name="candidate">The target candidate.</param>
        public bool Filter(SubmissionCandidate candidate)
        {
            // Ignore Galileo's data directory
            if (candidate.IsDirectory)
            {
                if (candidate.FileName == HunterConfig.GalileoDefaultDataFolder)
                {
                    return(true);
                }

                switch (candidate.FileName.ToLower())
                {
                case ".git":
                case ".svn":
                    return(true);
                }
            }
            else
            {
                if (candidate.FileName == ".DS_Store")
                {
                    return(true);
                }
            }

            return(false);
        }
Exemplo n.º 3
0
        public bool Filter(SubmissionCandidate candidate)

        {
            return(candidate.IsFile == true);
        }
Exemplo n.º 4
0
 public bool Filter(SubmissionCandidate candidate)
 {
     return(Array.IndexOf(_blackList, candidate.FileType) != -1);
 }
        public bool Filter(SubmissionCandidate candidate)

        {
            return(candidate.IsDirectory == true && (candidate.HasParent && candidate.Parent.IsDirectory));
        }
Exemplo n.º 6
0
 public bool Filter(SubmissionCandidate candidate)
 {
     return(!candidate.IsDirectory && (Array.IndexOf(_blackList, candidate.FileName) != -1));
 }
Exemplo n.º 7
0
        public bool Filter(SubmissionCandidate candidate)

        {
            return(candidate.IsDirectory == true);
        }