public void run()

in src/main/java/com/epam/fonda/workflow/impl/Bam2FastqWorkflow.java [55:81]


    public void run(Configuration configuration, BamFileSample sample) throws IOException {
        if (!PipelineUtils.checkSampleType(sample.getSampleType())) {
            return;
        }
        String fastqOutdir = sample.getSampleOutputDir() + "/fastq";
        sample.createDirectory();
        PipelineUtils.createDir(fastqOutdir);
        configuration.setCustTask("convert");
        BamResult bamResult = new SortBamByReadName(fastqOutdir, sample)
                .generate(configuration, TEMPLATE_ENGINE);
        final StringBuilder cmd = new StringBuilder(bamResult.getCommand().getToolCommand());
        if (flag.isPicard()) {
            FastqResult fastqResult = new SamToFastq(sample.getName(), fastqOutdir, bamResult)
                    .generate(configuration, TEMPLATE_ENGINE);
            cmd.append(fastqResult.getCommand().getToolCommand());
        }

        final String command = configuration.isMasterMode()
                ? cmd.toString()
                : cmd.append(cleanUpTmpDir(bamResult.getCommand().getTempDirs())).toString();
        final String custScript = printShell(configuration, command, sample.getName(), null);
        if (scriptManager != null) {
            scriptManager.addScript(sample.getName(), ALIGNMENT, custScript);
            bamResult.getCommand().getTempDirs().forEach(t -> scriptManager.addScript(sample.getName(), TEMP, t));
        }
        log.debug(String.format("Successful Step: the %s sample was processed.", sample.getName()));
    }