BenchmarkClass benchmarkClass,
Gson gson,
CaliperConfig caliperConfig,
@CaliperDirectory File caliperDirectory) throws InvalidConfigurationException {
this.run = run;
ResultProcessorConfig config = caliperConfig.getResultProcessorConfig(OutputFileDumper.class);
if (config.options().containsKey("file")) {
this.resultFile = new File(config.options().get("file"));
logger.finer("found an output file in the configuration");
} else if (config.options().containsKey("dir")) {
File dir = new File(config.options().get("dir"));
if (dir.isFile()) {
throw new InvalidConfigurationException("specified a directory, but it's a file");
}
this.resultFile = new File(dir, createFileName(benchmarkClass.name()));
logger.finer("found an output directory in the configuration");