Exemple #1
0
 /// <summary>
 /// Stage multiple files for use by crash reporter
 /// </summary>
 /// <param name="FileType">The type of the staged file</param>
 /// <param name="InputDir">Location of the input directory</param>
 /// <param name="Option">Whether to stage all subdirectories or just the top-level directory</param>
 public void StageCrashReporterFiles(StagedFileType FileType, DirectoryReference InputDir, StageFilesSearch Option)
 {
     StageCrashReporterFiles(FileType, InputDir, Option, new StagedDirectoryReference(InputDir.MakeRelativeTo(LocalRoot)));
 }
Exemple #2
0
    /// <summary>
    /// Stage multiple files for use by crash reporter
    /// </summary>
    /// <param name="FileType">The type of the staged file</param>
    /// <param name="InputDir">Location of the input directory</param>
    /// <param name="Option">Whether to stage all subdirectories or just the top-level directory</param>
    /// <param name="OutputDir">Location of the output directory within the staging folder</param>
    public void StageCrashReporterFiles(StagedFileType FileType, DirectoryReference InputDir, StageFilesSearch Option, StagedDirectoryReference OutputDir)
    {
        List <FileReference> InputFiles = FindFilesToStage(InputDir, Option);

        foreach (FileReference InputFile in InputFiles)
        {
            StagedFileReference StagedFile = StagedFileReference.Combine(OutputDir, InputFile.MakeRelativeTo(InputDir));
            StageCrashReporterFile(FileType, InputFile, StagedFile);
        }
    }
Exemple #3
0
    /// <summary>
    /// Stage multiple files
    /// </summary>
    /// <param name="FileType">The type for the staged files</param>
    /// <param name="InputDir">Input directory</param>
    /// <param name="InputFiles">List of input files</param>
    public void StageFiles(StagedFileType FileType, DirectoryReference InputDir, string Pattern, StageFilesSearch Option)
    {
        List <FileReference> InputFiles = FindFilesToStage(InputDir, Pattern, Option);

        foreach (FileReference InputFile in InputFiles)
        {
            StageFile(FileType, InputFile);
        }
    }
Exemple #4
0
 /// <summary>
 /// Stage multiple files
 /// </summary>
 /// <param name="FileType">The type for the staged files</param>
 /// <param name="InputDir">Input directory</param>
 /// <param name="Option">Whether to stage all subdirectories or just the top-level directory</param>
 /// <param name="OutputDir">Base directory for output files</param>
 public void StageFiles(StagedFileType FileType, DirectoryReference InputDir, StageFilesSearch Option, StagedDirectoryReference OutputDir)
 {
     StageFiles(FileType, InputDir, "*", Option, OutputDir);
 }
Exemple #5
0
    /// <summary>
    /// Finds files to stage under a given base directory.
    /// </summary>
    /// <param name="BaseDir">The directory to search under</param>
    /// <param name="Pattern">Pattern for files to match</param>
    /// <param name="ExcludePatterns">Patterns to exclude from staging</param>
    /// <param name="Option">Options for the search</param>
    /// <param name="Files">List to receive the enumerated files</param>
    private void FindFilesToStageInternal(DirectoryReference BaseDir, string Pattern, StageFilesSearch Option, List <FileReference> Files)
    {
        // Enumerate all the files in this directory
        Files.AddRange(DirectoryReference.EnumerateFiles(BaseDir, Pattern));

        // Recurse through subdirectories if necessary
        if (Option == StageFilesSearch.AllDirectories)
        {
            foreach (DirectoryReference SubDir in DirectoryReference.EnumerateDirectories(BaseDir))
            {
                FileSystemName Name = new FileSystemName(SubDir);
                if (!RestrictedFolderNames.Contains(Name))
                {
                    FindFilesToStageInternal(SubDir, Pattern, Option, Files);
                }
            }
        }
    }
Exemple #6
0
    /// <summary>
    /// Finds files to stage under a given base directory.
    /// </summary>
    /// <param name="BaseDir">The directory to search under</param>
    /// <param name="Pattern">Pattern for files to match</param>
    /// <param name="Option">Options for the search</param>
    /// <returns>List of files to be staged</returns>
    public List <FileReference> FindFilesToStage(DirectoryReference BaseDir, string Pattern, StageFilesSearch Option)
    {
        List <FileReference> Files = new List <FileReference>();

        FindFilesToStageInternal(BaseDir, Pattern, Option, Files);
        return(Files);
    }
Exemple #7
0
 /// <summary>
 /// Finds files to stage under a given base directory.
 /// </summary>
 /// <param name="BaseDir">The directory to search under</param>
 /// <param name="Option">Options for the search</param>
 /// <returns>List of files to be staged</returns>
 public List <FileReference> FindFilesToStage(DirectoryReference BaseDir, StageFilesSearch Option)
 {
     return(FindFilesToStage(BaseDir, "*", Option));
 }