in src/main/java/com/epam/fonda/workflow/stage/impl/Alignment.java [97:128]
public BamResult mapping(final Flag flag, final FastqFileSample sample, final Configuration configuration,
final TemplateEngine templateEngine) {
if (flag.isStar()) {
bamResult = new Star(flag, sample, fastqResult.getOut()).generate(configuration, templateEngine);
if (!flag.isRsem() && !isRnaCaptureVarFastq(configuration)) {
bamResult = markDuplicate(flag, sample, configuration, templateEngine);
qcCheck(flag, sample, configuration, templateEngine);
}
} else if (flag.isHisat2()) {
bamResult = new Hisat2(sample, fastqResult.getOut()).generate(configuration, templateEngine);
bamResult = markDuplicate(flag, sample, configuration, templateEngine);
qcCheck(flag, sample, configuration, templateEngine);
} else if (flag.isStarFusion()) {
StarFusionResult starFusionResult = new StarFusion(sample, fastqResult.getOut())
.generate(configuration, templateEngine);
bamResult.setCommand(mergeCommands(starFusionResult.getCommand()));
return bamResult;
} else if (flag.isBwa()) {
bamResult = new BwaSort(sample, fastqResult.getOut().getMergedFastq1(),
fastqResult.getOut().getMergedFastq2(), index).generate(configuration, templateEngine);
} else if (flag.isNovoalign()) {
bamResult = new NovoalignSort(sample, fastqResult.getOut().getMergedFastq1(),
fastqResult.getOut().getMergedFastq2(), index).generate(configuration, templateEngine);
}
if (flag.isSalmon()) {
SalmonResult salmonResult = new Salmon(sample, fastqResult).generate(configuration, templateEngine);
bamResult.setCommand(mergeCommands(salmonResult.getCommand()));
return bamResult;
}
mergeCommands(bamResult.getCommand());
return bamResult;
}