Record Class AnalysisRunner.Options

java.lang.Object
java.lang.Record
org.variantsync.diffdetective.AnalysisRunner.Options
Record Components:
repositoriesDirectory - The directory to which all git repositories will be cloned to. If this directory already contains the required git repositories, those copies will be used.
outputDirectory - The directory to which any output data of the analysis should be written to.
datasetsFile - Path to a markdown file containing a table of git repositories to analyze.
getParseOptionsForRepo - Determines which PatchDiffParseOptions to use per repository. Each repository is by default, already equipped with options. If you wish no changes, just return Repository.getParseOptions() here.
getFilterForRepo - Determines which filter to use for parsing diffs in given repository that is about to be analyzed. Each repository is by default, already equipped with a filter. If you wish no changes, just return Repository.getDiffFilter() here.
preloadReposBeforeAnalysis - Decides whether all repositories should be cloned once before the analysis. If a repository does not have a local clone in repositoriesDirectory it will be cloned before the analysis if preloadReposBeforeAnalysis is set to true. Otherwise it will be cloned right before it is about to be analysed.
pullRepositoriesBeforeAnalysis - Decides whether git pull should be run on each repository before analysis. Takes effect only if preloadReposBeforeAnalysis is true. Does nothing otherwise.
Enclosing class:
AnalysisRunner

public static record AnalysisRunner.Options(Path repositoriesDirectory, Path outputDirectory, Path datasetsFile, Function<Repository,PatchDiffParseOptions> getParseOptionsForRepo, Function<Repository,DiffFilter> getFilterForRepo, boolean preloadReposBeforeAnalysis, boolean pullRepositoriesBeforeAnalysis) extends Record