in src/main/java/com/epam/fonda/workflow/stage/impl/PostAlignment.java [59:95]
public BamResult process(final Flag flag, final FastqFileSample sample, final Configuration configuration,
final TemplateEngine templateEngine) {
if (flag.isPicard()) {
bamResult = new PicardMarkDuplicate(sample, bamResult).generate(configuration, templateEngine);
if (isCapture(configuration) || isWgsWorkflow(configuration)) {
bamResult = new PicardRemoveDuplicate(bamResult).generate(configuration, templateEngine);
}
if (flag.isQc()) {
MetricsResult metricsResult = MetricsResult.builder()
.bamOutput(bamResult.getBamOutput())
.metricsOutput(MetricsOutput.builder().build())
.command(BashCommand.withTool(""))
.build();
metricsResult = new DnaPicardQc(sample, metricsResult).generate(configuration, templateEngine);
final AbstractCommand command = bamResult.getCommand();
final AbstractCommand metricsCommand = metricsResult.getCommand();
command.setToolCommand(bamResult.getCommand().getToolCommand()
+ metricsCommand.getToolCommand());
command.getTempDirs().addAll(metricsCommand.getTempDirs());
bamResult.setCommand(command);
}
}
if (PipelineType.RNA_CAPTURE_VAR_FASTQ.getName()
.equalsIgnoreCase(configuration.getGlobalConfig().getPipelineInfo().getWorkflow())) {
bamResult = new GatkSplitReads(sample.getSampleOutputDir(),
bamResult).generate(configuration, templateEngine);
}
if (flag.isAbraRealign() && !flag.isMutect2()) {
bamResult = new AbraRealign(sample, bamResult).generate(configuration, templateEngine);
}
if (flag.isGatkRealign() && !flag.isMutect2()) {
bamResult = new AmpliconGatkRealign(sample, bamResult).generate(configuration, templateEngine);
}
bamResult = new AmpliconGatkRecalibrate(sample.getTmpOutdir(), bamResult)
.generate(configuration, templateEngine);
return bamResult;
}