in apache-rat-core/src/main/java/org/apache/rat/Report.java [49:117]
public static final void main(String[] args) throws Exception {
final ReportConfiguration configuration = new ReportConfiguration();
configuration.setHeaderMatcher(Defaults.createDefaultMatcher());
configuration.setApproveDefaultLicenses(true);
Options opts = buildOptions();
CommandLine cl = null;
try {
cl = new DefaultParser().parse(opts, args);
} catch (ParseException e) {
System.err.println("Please use the \"--help\" option to see a list of valid commands and options");
System.exit(1);
return; // dummy return (won't be reached) to avoid Eclipse complaint about possible NPE for "cl"
}
if (cl.hasOption(HELP)) {
printUsage(opts);
}
args = cl.getArgs();
if (args == null || args.length != 1) {
printUsage(opts);
} else {
Report report = new Report(args[0]);
if (cl.hasOption('a') || cl.hasOption('A')) {
configuration.setAddingLicenses(true);
configuration.setAddingLicensesForced(cl.hasOption('f'));
configuration.setCopyrightMessage(cl.getOptionValue("c"));
}
if (cl.hasOption(EXCLUDE_CLI)) {
String[] excludes = cl.getOptionValues(EXCLUDE_CLI);
if (excludes != null) {
final FilenameFilter filter = parseExclusions(Arrays.asList(excludes));
report.setInputFileFilter(filter);
}
} else if (cl.hasOption(EXCLUDE_FILE_CLI)) {
String excludeFileName = cl.getOptionValue(EXCLUDE_FILE_CLI);
if (excludeFileName != null) {
final FilenameFilter filter = parseExclusions(FileUtils.readLines(new File(excludeFileName), Charset.forName("UTF-8")));
report.setInputFileFilter(filter);
}
}
if (cl.hasOption('x')) {
report.report(System.out, configuration);
} else {
if (!cl.hasOption(STYLESHEET_CLI)) {
report.styleReport(System.out, configuration);
} else {
String[] style = cl.getOptionValues(STYLESHEET_CLI);
if (style.length != 1) {
System.err.println("please specify a single stylesheet");
System.exit(1);
}
try {
report(System.out,
report.getDirectory(System.out),
new FileInputStream(style[0]),
configuration);
} catch (FileNotFoundException fnfe) {
System.err.println("stylesheet " + style[0]
+ " doesn't exist");
System.exit(1);
}
}
}
}
}