Class AffectedFilesResolver

java.lang.Object
io.jenkins.plugins.analysis.core.util.AffectedFilesResolver

public class AffectedFilesResolver extends Object
Copies all affected files that are referenced in at least one of the issues to Jenkins build folder. These files can be inspected in the UI later on.
Author:
Ullrich Hafner
  • Field Details

    • AFFECTED_FILES_FOLDER_NAME

      public static final String AFFECTED_FILES_FOLDER_NAME
      Folder with the affected files within Jenkins' build results.
      See Also:
  • Constructor Details

    • AffectedFilesResolver

      public AffectedFilesResolver()
  • Method Details

    • hasAffectedFile

      public static boolean hasAffectedFile(Run<?,?> run, edu.hm.hafner.analysis.Issue issue)
      Returns whether the affected file in Jenkins' build folder does exist and is readable.
      Parameters:
      run - the run referencing the build folder
      issue - the issue in the affected file
      Returns:
      the file
    • getFile

      public static Path getFile(Run<?,?> run, String fileName)
      Returns the affected file in Jenkins' build folder.
      Parameters:
      run - the run referencing the build folder
      fileName - the file name in the folder of affected files
      Returns:
      the file
    • getZipFile

      public static Path getZipFile(Run<?,?> run, String fileName)
      Returns the affected file in Jenkins' build folder.
      Parameters:
      run - the run referencing the build folder
      fileName - the file name in the folder of affected files
      Returns:
      the file
    • copyAffectedFilesToBuildFolder

      public void copyAffectedFilesToBuildFolder(edu.hm.hafner.analysis.Report report, FilePath workspace, Set<String> permittedSourceDirectories, FilePath buildFolder) throws InterruptedException
      Copies all files with issues from the workspace to the build folder.
      Parameters:
      report - the issues
      workspace - the workspace on the agent
      permittedSourceDirectories - additional permitted source code directories
      buildFolder - directory to store the copied files in
      Throws:
      InterruptedException - if the user cancels the processing