From ad98512f6c0ada3932ca7db2ecd8bd23f50da99d Mon Sep 17 00:00:00 2001 From: aaron Date: Wed, 9 Jun 2010 17:21:12 +0000 Subject: [PATCH] adding changes so that we look at the headers already loaded by the engine for samples and other VCF utils, and not create readers for each file to get them (this caused Tribble to regerenate indices if the index file can't be written to disk). git-svn-id: file:///humgen/gsa-scr1/gsa-engineering/svn_contents/trunk@3518 348d0f76-0448-11de-a6fe-93d51630548a --- .../annotator/AnnotatorInputTableCodec.java | 5 +++ .../features/sampileup/SAMPileupCodec.java | 5 +++ .../features/samread/SAMReadCodec.java | 5 +++ .../gatk/refdata/features/vcf4/VCF4Codec.java | 5 +++ .../sting/gatk/refdata/tracks/RMDTrack.java | 23 ++++++------ .../gatk/refdata/tracks/TribbleTrack.java | 11 ++++++ .../VariantRecalibrator.java | 34 ++++++++++++------ .../sting/utils/SampleUtils.java | 14 +++----- .../sting/utils/genotype/vcf/VCFReader.java | 2 +- .../sting/utils/genotype/vcf/VCFUtils.java | 4 +-- .../{tribble-99.jar => tribble-100.jar} | Bin 219933 -> 221974 bytes settings/repository/org.broad/tribble-100.xml | 3 ++ settings/repository/org.broad/tribble-99.xml | 3 -- 13 files changed, 74 insertions(+), 40 deletions(-) rename settings/repository/org.broad/{tribble-99.jar => tribble-100.jar} (89%) create mode 100644 settings/repository/org.broad/tribble-100.xml delete mode 100644 settings/repository/org.broad/tribble-99.xml diff --git a/java/src/org/broadinstitute/sting/gatk/refdata/features/annotator/AnnotatorInputTableCodec.java b/java/src/org/broadinstitute/sting/gatk/refdata/features/annotator/AnnotatorInputTableCodec.java index 3b9cb25ee..a50679052 100755 --- a/java/src/org/broadinstitute/sting/gatk/refdata/features/annotator/AnnotatorInputTableCodec.java +++ b/java/src/org/broadinstitute/sting/gatk/refdata/features/annotator/AnnotatorInputTableCodec.java @@ -69,6 +69,11 @@ public class AnnotatorInputTableCodec implements FeatureCodec HeaderType getHeader(Class clazz) throws ClassCastException { + return null; // TODO: do we want the header to be a concrete type? + } + /** * Parses the line into an AnnotatorInputTableFeature object. diff --git a/java/src/org/broadinstitute/sting/gatk/refdata/features/sampileup/SAMPileupCodec.java b/java/src/org/broadinstitute/sting/gatk/refdata/features/sampileup/SAMPileupCodec.java index 5efc5e632..f239f9dcc 100644 --- a/java/src/org/broadinstitute/sting/gatk/refdata/features/sampileup/SAMPileupCodec.java +++ b/java/src/org/broadinstitute/sting/gatk/refdata/features/sampileup/SAMPileupCodec.java @@ -71,6 +71,11 @@ public class SAMPileupCodec implements FeatureCodec { return SAMPileupFeature.class; } + @Override + public HeaderType getHeader(Class clazz) throws ClassCastException { + return null; // we don't have a header + } + public SAMPileupFeature decode(String line) { // 0 1 2 3 4 5 6 7 //* chrX 466 T Y 170 170 88 32 ... (piles of read bases and quals follow) diff --git a/java/src/org/broadinstitute/sting/gatk/refdata/features/samread/SAMReadCodec.java b/java/src/org/broadinstitute/sting/gatk/refdata/features/samread/SAMReadCodec.java index 7542dd86c..893f8a85e 100644 --- a/java/src/org/broadinstitute/sting/gatk/refdata/features/samread/SAMReadCodec.java +++ b/java/src/org/broadinstitute/sting/gatk/refdata/features/samread/SAMReadCodec.java @@ -61,6 +61,11 @@ public class SAMReadCodec implements FeatureCodec { return SAMReadFeature.class; } + @Override + public HeaderType getHeader(Class clazz) throws ClassCastException { + return null; // we haven't stored the header + } + /** * Decode a single line in a SAM text file. * @param line line to decode. diff --git a/java/src/org/broadinstitute/sting/gatk/refdata/features/vcf4/VCF4Codec.java b/java/src/org/broadinstitute/sting/gatk/refdata/features/vcf4/VCF4Codec.java index 49b07f21b..5267fb074 100644 --- a/java/src/org/broadinstitute/sting/gatk/refdata/features/vcf4/VCF4Codec.java +++ b/java/src/org/broadinstitute/sting/gatk/refdata/features/vcf4/VCF4Codec.java @@ -280,4 +280,9 @@ public class VCF4Codec implements FeatureCodec { public Class getFeatureType() { return VariantContext.class; } + + @Override + public Object getHeader(Class clazz) throws ClassCastException { + return null; // TODO: fix this Aaron + } } diff --git a/java/src/org/broadinstitute/sting/gatk/refdata/tracks/RMDTrack.java b/java/src/org/broadinstitute/sting/gatk/refdata/tracks/RMDTrack.java index fb54417d2..c4c59933f 100644 --- a/java/src/org/broadinstitute/sting/gatk/refdata/tracks/RMDTrack.java +++ b/java/src/org/broadinstitute/sting/gatk/refdata/tracks/RMDTrack.java @@ -84,18 +84,6 @@ public abstract class RMDTrack { */ public abstract CloseableIterator getIterator(); - /** - * helper function for determining if we are the same track based on name and codec type - * - * @param name the name to match - * @param type the type to match - * - * @return true on a match, false if the name or type is different - */ - public boolean matchesNameAndType(String name, Type type) { - return (name.equals(this.name) && (type.getClass().isAssignableFrom(this.type.getClass()))); - } - /** * helper function for determining if we are the same track based on name and record type * @@ -121,4 +109,15 @@ public abstract class RMDTrack { public SAMSequenceDictionary getSequenceDictionary() { return null; // default, others can override this } + + /** + * ask for the header, supplying the expected type. Overridden in track types + * @param clazz the class of the expected type + * @param the expected type + * @return a object of type HeaderType + * @throws ClassCastException if the class provided doesn't match our header type + */ + public HeaderType getHeader(Class clazz) throws ClassCastException { + return null; + } } \ No newline at end of file diff --git a/java/src/org/broadinstitute/sting/gatk/refdata/tracks/TribbleTrack.java b/java/src/org/broadinstitute/sting/gatk/refdata/tracks/TribbleTrack.java index ccdcf10f7..18472eca6 100644 --- a/java/src/org/broadinstitute/sting/gatk/refdata/tracks/TribbleTrack.java +++ b/java/src/org/broadinstitute/sting/gatk/refdata/tracks/TribbleTrack.java @@ -130,4 +130,15 @@ public class TribbleTrack extends RMDTrack implements QueryableTrack { public SAMSequenceDictionary getSequenceDictionary() { return dictionary; } + + /** + * ask for the header, supplying the expected type. Overridden in track types + * @param clazz the class of the expected type + * @param the expected type + * @return a object of type HeaderType + * @throws ClassCastException if the class provided doesn't match our header type + */ + public HeaderType getHeader(Class clazz) throws ClassCastException { + return (HeaderType) (reader).getHeader(clazz); + } } diff --git a/java/src/org/broadinstitute/sting/gatk/walkers/variantrecalibration/VariantRecalibrator.java b/java/src/org/broadinstitute/sting/gatk/walkers/variantrecalibration/VariantRecalibrator.java index 59cbe1349..ac50c458f 100755 --- a/java/src/org/broadinstitute/sting/gatk/walkers/variantrecalibration/VariantRecalibrator.java +++ b/java/src/org/broadinstitute/sting/gatk/walkers/variantrecalibration/VariantRecalibrator.java @@ -92,6 +92,9 @@ public class VariantRecalibrator extends RodWalker hInfo = new HashSet(); - hInfo.addAll(VCFUtils.getHeaderFields(getToolkit())); - hInfo.add(new VCFInfoHeaderLine("OQ", 1, VCFInfoHeaderLine.INFO_TYPE.Float, "The original variant quality score")); - hInfo.add(new VCFHeaderLine("source", "VariantOptimizer")); - vcfWriter = new VCFWriter( new File(OUTPUT_PREFIX + ".vcf") ); final TreeSet samples = new TreeSet(); final List dataSources = this.getToolkit().getRodDataSources(); - for( final ReferenceOrderedDataSource source : dataSources ) { - final RMDTrack rod = source.getReferenceOrderedData(); - if( rod.getRecordType().equals(VCFRecord.class) ) { - final VCFReader reader = new VCFReader(rod.getFile()); - final Set vcfSamples = reader.getHeader().getGenotypeSamples(); - samples.addAll(vcfSamples); - reader.close(); + + if (AARONS_SUPER_AWESOME_SWITCH) { + hInfo.addAll(VCFUtils.getHeaderFields(getToolkit())); + hInfo.add(new VCFInfoHeaderLine("OQ", 1, VCFInfoHeaderLine.INFO_TYPE.Float, "The original variant quality score")); + hInfo.add(new VCFHeaderLine("source", "VariantOptimizer")); + samples.addAll(SampleUtils.getUniqueSamplesFromRods(getToolkit())); + + } else { + hInfo.addAll(VCFUtils.getHeaderFields(getToolkit())); + hInfo.add(new VCFInfoHeaderLine("OQ", 1, VCFInfoHeaderLine.INFO_TYPE.Float, "The original variant quality score")); + hInfo.add(new VCFHeaderLine("source", "VariantOptimizer")); + for( final ReferenceOrderedDataSource source : dataSources ) { + final RMDTrack rod = source.getReferenceOrderedData(); + if( rod.getRecordType().equals(VCFRecord.class) ) { + final VCFReader reader = new VCFReader(rod.getFile()); + final Set vcfSamples = reader.getHeader().getGenotypeSamples(); + samples.addAll(vcfSamples); + reader.close(); + } } } + vcfWriter = new VCFWriter( new File(OUTPUT_PREFIX + ".vcf") ); final VCFHeader vcfHeader = new VCFHeader(hInfo, samples); vcfWriter.writeHeader(vcfHeader); diff --git a/java/src/org/broadinstitute/sting/utils/SampleUtils.java b/java/src/org/broadinstitute/sting/utils/SampleUtils.java index 87a5b19b5..0247e827b 100755 --- a/java/src/org/broadinstitute/sting/utils/SampleUtils.java +++ b/java/src/org/broadinstitute/sting/utils/SampleUtils.java @@ -27,13 +27,12 @@ package org.broadinstitute.sting.utils; import net.sf.samtools.SAMFileHeader; import net.sf.samtools.SAMReadGroupRecord; -import org.broad.tribble.vcf.VCFCodec; +import org.broad.tribble.vcf.VCFHeader; import org.broad.tribble.vcf.VCFRecord; import org.broadinstitute.sting.gatk.GenomeAnalysisEngine; import org.broadinstitute.sting.gatk.datasources.simpleDataSources.ReferenceOrderedDataSource; import org.broadinstitute.sting.gatk.refdata.tracks.RMDTrack; import org.broadinstitute.sting.utils.collections.Pair; -import org.broadinstitute.sting.utils.genotype.vcf.VCFReader; import java.util.*; @@ -80,11 +79,8 @@ public class SampleUtils { List dataSources = toolkit.getRodDataSources(); for ( ReferenceOrderedDataSource source : dataSources ) { RMDTrack rod = source.getReferenceOrderedData(); - if ( rod.getRecordType().equals(VCFRecord.class) ) { - VCFReader reader = new VCFReader(rod.getFile()); - samples.addAll(reader.getHeader().getGenotypeSamples()); - reader.close(); - } + if ( rod.getRecordType().equals(VCFRecord.class) ) + samples.addAll(rod.getHeader(VCFHeader.class).getGenotypeSamples()); } return samples; @@ -110,11 +106,9 @@ public class SampleUtils { for ( ReferenceOrderedDataSource source : dataSources ) { RMDTrack rod = source.getReferenceOrderedData(); if ( rod.getRecordType().equals(VCFRecord.class) ) { - VCFReader reader = new VCFReader(rod.getFile()); - Set vcfSamples = reader.getHeader().getGenotypeSamples(); + Set vcfSamples = rod.getHeader(VCFHeader.class).getGenotypeSamples(); for ( String sample : vcfSamples ) addUniqueSample(samples, sampleOverlapMap, rodNamesToSampleNames, sample, rod.getName()); - reader.close(); } } } diff --git a/java/src/org/broadinstitute/sting/utils/genotype/vcf/VCFReader.java b/java/src/org/broadinstitute/sting/utils/genotype/vcf/VCFReader.java index 34180f66b..6dfd757cc 100644 --- a/java/src/org/broadinstitute/sting/utils/genotype/vcf/VCFReader.java +++ b/java/src/org/broadinstitute/sting/utils/genotype/vcf/VCFReader.java @@ -69,7 +69,7 @@ public class VCFReader implements Iterator, Iterable { } catch (IOException e) { throw new StingException("Unable to read VCF File from " + vcfFile, e); } - mHeader = codec.getHeader(); + mHeader = codec.getHeader(VCFHeader.class); } /** diff --git a/java/src/org/broadinstitute/sting/utils/genotype/vcf/VCFUtils.java b/java/src/org/broadinstitute/sting/utils/genotype/vcf/VCFUtils.java index 4f7ff2951..9064de4e5 100755 --- a/java/src/org/broadinstitute/sting/utils/genotype/vcf/VCFUtils.java +++ b/java/src/org/broadinstitute/sting/utils/genotype/vcf/VCFUtils.java @@ -74,9 +74,7 @@ public class VCFUtils { for ( ReferenceOrderedDataSource source : dataSources ) { RMDTrack rod = source.getReferenceOrderedData(); if ( rod.getRecordType().equals(VCFRecord.class) ) { - VCFReader reader = new VCFReader(rod.getFile()); - fields.addAll(reader.getHeader().getMetaData()); - reader.close(); + fields.addAll(rod.getHeader(VCFHeader.class).getMetaData()); } } diff --git a/settings/repository/org.broad/tribble-99.jar b/settings/repository/org.broad/tribble-100.jar similarity index 89% rename from settings/repository/org.broad/tribble-99.jar rename to settings/repository/org.broad/tribble-100.jar index 47066f7e1e292c68b7e99a3d689450c063562b4d..bd88648483fe2473c4a3add7702dcb69c308b02e 100644 GIT binary patch delta 10285 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 K$j9YadHO#*3c7^= delta 8705 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 Ip!?u|0|rg7T>t<8 diff --git a/settings/repository/org.broad/tribble-100.xml b/settings/repository/org.broad/tribble-100.xml new file mode 100644 index 000000000..eaf39336a --- /dev/null +++ b/settings/repository/org.broad/tribble-100.xml @@ -0,0 +1,3 @@ + + + diff --git a/settings/repository/org.broad/tribble-99.xml b/settings/repository/org.broad/tribble-99.xml deleted file mode 100644 index 1f3e1b70c..000000000 --- a/settings/repository/org.broad/tribble-99.xml +++ /dev/null @@ -1,3 +0,0 @@ - - -