All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.broadinstitute.hellbender.tools.spark.pipelines.PrintVariantsSpark Maven / Gradle / Ivy

The newest version!
package org.broadinstitute.hellbender.tools.spark.pipelines;

import org.apache.spark.api.java.JavaRDD;
import org.apache.spark.api.java.JavaSparkContext;
import org.broadinstitute.barclay.argparser.Argument;
import org.broadinstitute.barclay.argparser.BetaFeature;
import org.broadinstitute.barclay.argparser.CommandLineProgramProperties;
import org.broadinstitute.barclay.help.DocumentedFeature;
import org.broadinstitute.hellbender.cmdline.StandardArgumentDefinitions;
import picard.cmdline.programgroups.VariantManipulationProgramGroup;
import org.broadinstitute.hellbender.engine.spark.VariantWalkerContext;
import org.broadinstitute.hellbender.engine.spark.VariantWalkerSpark;
import org.broadinstitute.hellbender.engine.spark.datasources.VariantsSparkSink;
import org.broadinstitute.hellbender.exceptions.UserException;

import java.io.IOException;

/**
 * Print out variants from a VCF file.
 *
 * 

Input

*

* A VCF file. *

* *

Output

*

* A new file containing the variants. *

* *

Usage example

*
 * gatk PrintVariantsSpark \
 *    -V input.vcf.gz \
 *    -L chr1 \
 *    -O output.vcf.gz
 * 
* */ @CommandLineProgramProperties( summary = "Prints out variants from the input VCF file.", oneLineSummary = "Prints out variants from the input VCF.", programGroup = VariantManipulationProgramGroup.class) @DocumentedFeature public final class PrintVariantsSpark extends VariantWalkerSpark { private static final long serialVersionUID = 1L; @Argument(doc = "Uri for the output file (a local file path).", shortName = StandardArgumentDefinitions.OUTPUT_SHORT_NAME, fullName = StandardArgumentDefinitions.OUTPUT_LONG_NAME, optional = false) public String output; @Override protected void processVariants(JavaRDD rdd, JavaSparkContext ctx) { try { VariantsSparkSink.writeVariants(ctx, output, rdd.map(VariantWalkerContext::getVariant), getHeaderForVariants(), createOutputVariantIndex, false); } catch (IOException e) { throw new UserException.CouldNotCreateOutputFile(output, "writing failed", e); } } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy