diff --git a/protected/java/test/org/broadinstitute/sting/gatk/walkers/haplotypecaller/HaplotypeCallerIntegrationTest.java b/protected/java/test/org/broadinstitute/sting/gatk/walkers/haplotypecaller/HaplotypeCallerIntegrationTest.java index a2e5142e5..5824e905f 100644 --- a/protected/java/test/org/broadinstitute/sting/gatk/walkers/haplotypecaller/HaplotypeCallerIntegrationTest.java +++ b/protected/java/test/org/broadinstitute/sting/gatk/walkers/haplotypecaller/HaplotypeCallerIntegrationTest.java @@ -47,7 +47,7 @@ package org.broadinstitute.sting.gatk.walkers.haplotypecaller; import net.sf.picard.reference.IndexedFastaSequenceFile; -import org.broad.tribble.readers.AsciiLineReader; +import org.broad.tribble.readers.LineIterator; import org.broad.tribble.readers.PositionalBufferedStream; import org.broadinstitute.sting.WalkerTest; import org.broadinstitute.sting.utils.GenomeLoc; @@ -190,9 +190,9 @@ public class HaplotypeCallerIntegrationTest extends WalkerTest { // confirm that the call is the correct one final VCFCodec codec = new VCFCodec(); final FileInputStream s = new FileInputStream(outputVCF); - final AsciiLineReader lineReader = new AsciiLineReader(new PositionalBufferedStream(s)); - codec.readHeader(lineReader); - final String line = lineReader.readLine(); + final LineIterator lineIterator = codec.makeSourceFromStream(new PositionalBufferedStream(s)); + codec.readHeader(lineIterator); + final String line = lineIterator.next(); Assert.assertFalse(line == null); final VariantContext vc = codec.decode(line); Assert.assertTrue(vc.isBiallelic()); diff --git a/protected/java/test/org/broadinstitute/sting/gatk/walkers/variantutils/CombineVariantsUnitTest.java b/protected/java/test/org/broadinstitute/sting/gatk/walkers/variantutils/CombineVariantsUnitTest.java index 6d38940bc..f369ad210 100644 --- a/protected/java/test/org/broadinstitute/sting/gatk/walkers/variantutils/CombineVariantsUnitTest.java +++ b/protected/java/test/org/broadinstitute/sting/gatk/walkers/variantutils/CombineVariantsUnitTest.java @@ -46,16 +46,20 @@ package org.broadinstitute.sting.gatk.walkers.variantutils; -import org.broad.tribble.readers.AsciiLineReader; import org.broad.tribble.readers.PositionalBufferedStream; import org.broadinstitute.sting.utils.SampleUtils; -import org.broadinstitute.variant.vcf.*; +import org.broadinstitute.variant.vcf.VCFCodec; +import org.broadinstitute.variant.vcf.VCFHeader; +import org.broadinstitute.variant.vcf.VCFHeaderLine; +import org.broadinstitute.variant.vcf.VCFUtils; import org.testng.Assert; - import org.testng.annotations.Test; import java.io.StringBufferInputStream; -import java.util.*; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Map; +import java.util.Set; /** * test out pieces of the combine variants code @@ -154,7 +158,8 @@ public class CombineVariantsUnitTest { private VCFHeader createHeader(String headerStr) { VCFCodec codec = new VCFCodec(); - VCFHeader head = (VCFHeader)codec.readHeader(new AsciiLineReader(new PositionalBufferedStream(new StringBufferInputStream(headerStr)))); + VCFHeader head = null; + head = (VCFHeader) codec.readActualHeader(codec.makeSourceFromStream(new PositionalBufferedStream(new StringBufferInputStream(headerStr)))); return head; } diff --git a/protected/java/test/org/broadinstitute/sting/gatk/walkers/variantutils/ConcordanceMetricsUnitTest.java b/protected/java/test/org/broadinstitute/sting/gatk/walkers/variantutils/ConcordanceMetricsUnitTest.java index bd9ff4f80..50c896450 100755 --- a/protected/java/test/org/broadinstitute/sting/gatk/walkers/variantutils/ConcordanceMetricsUnitTest.java +++ b/protected/java/test/org/broadinstitute/sting/gatk/walkers/variantutils/ConcordanceMetricsUnitTest.java @@ -46,25 +46,20 @@ package org.broadinstitute.sting.gatk.walkers.variantutils; +import net.sf.picard.reference.ReferenceSequenceFile; +import org.broad.tribble.readers.PositionalBufferedStream; import org.broadinstitute.sting.BaseTest; -import org.broadinstitute.sting.utils.GenomeLocParser; +import org.broadinstitute.sting.utils.BaseUtils; import org.broadinstitute.sting.utils.GenomeLoc; +import org.broadinstitute.sting.utils.GenomeLocParser; import org.broadinstitute.sting.utils.collections.Pair; import org.broadinstitute.sting.utils.fasta.CachingIndexedFastaSequenceFile; -import org.broadinstitute.sting.utils.BaseUtils; -import org.broadinstitute.variant.variantcontext.Allele; -import org.broadinstitute.variant.variantcontext.Genotype; -import org.broadinstitute.variant.variantcontext.GenotypeBuilder; -import org.broadinstitute.variant.variantcontext.GenotypeType; -import org.broadinstitute.variant.variantcontext.VariantContext; -import org.broadinstitute.variant.variantcontext.VariantContextBuilder; +import org.broadinstitute.variant.variantcontext.*; import org.broadinstitute.variant.vcf.VCFCodec; import org.broadinstitute.variant.vcf.VCFHeader; -import org.testng.annotations.Test; -import org.broad.tribble.readers.AsciiLineReader; -import org.broad.tribble.readers.PositionalBufferedStream; import org.testng.Assert; import org.testng.annotations.BeforeClass; +import org.testng.annotations.Test; import java.io.File; import java.io.FileNotFoundException; @@ -72,7 +67,6 @@ import java.io.StringBufferInputStream; import java.util.ArrayList; import java.util.Arrays; import java.util.List; -import net.sf.picard.reference.ReferenceSequenceFile; public class ConcordanceMetricsUnitTest extends BaseTest { @@ -139,8 +133,8 @@ public class ConcordanceMetricsUnitTest extends BaseTest { VariantContext eval = data.getFirst(); VariantContext truth = data.getSecond(); VCFCodec codec = new VCFCodec(); - VCFHeader evalHeader = (VCFHeader)codec.readHeader(new AsciiLineReader(new PositionalBufferedStream(new StringBufferInputStream(TEST_1_HEADER)))); - VCFHeader compHeader = (VCFHeader)codec.readHeader(new AsciiLineReader(new PositionalBufferedStream(new StringBufferInputStream(TEST_1_HEADER)))); + VCFHeader evalHeader = (VCFHeader)codec.readActualHeader(codec.makeSourceFromStream(new PositionalBufferedStream(new StringBufferInputStream(TEST_1_HEADER)))); + VCFHeader compHeader = (VCFHeader)codec.readActualHeader(codec.makeSourceFromStream(new PositionalBufferedStream(new StringBufferInputStream(TEST_1_HEADER)))); ConcordanceMetrics metrics = new ConcordanceMetrics(evalHeader,compHeader); metrics.update(eval,truth); Assert.assertEquals(eval.getGenotype("test1_sample2").getType().ordinal(), 2); @@ -189,8 +183,8 @@ public class ConcordanceMetricsUnitTest extends BaseTest { VariantContext eval = data.getFirst(); VariantContext truth = data.getSecond(); VCFCodec codec = new VCFCodec(); - VCFHeader evalHeader = (VCFHeader)codec.readHeader(new AsciiLineReader(new PositionalBufferedStream(new StringBufferInputStream(TEST_1_HEADER)))); - VCFHeader compHeader = (VCFHeader)codec.readHeader(new AsciiLineReader(new PositionalBufferedStream(new StringBufferInputStream(TEST_1_HEADER)))); + VCFHeader evalHeader = (VCFHeader)codec.readActualHeader(codec.makeSourceFromStream(new PositionalBufferedStream(new StringBufferInputStream(TEST_1_HEADER)))); + VCFHeader compHeader = (VCFHeader)codec.readActualHeader(codec.makeSourceFromStream(new PositionalBufferedStream(new StringBufferInputStream(TEST_1_HEADER)))); ConcordanceMetrics metrics = new ConcordanceMetrics(evalHeader,compHeader); metrics.update(eval,truth); Assert.assertEquals(eval.getGenotype("test1_sample2").getType().ordinal(), 2); @@ -209,8 +203,8 @@ public class ConcordanceMetricsUnitTest extends BaseTest { eval = data.getSecond(); truth = data.getFirst(); codec = new VCFCodec(); - evalHeader = (VCFHeader)codec.readHeader(new AsciiLineReader(new PositionalBufferedStream(new StringBufferInputStream(TEST_1_HEADER)))); - compHeader = (VCFHeader)codec.readHeader(new AsciiLineReader(new PositionalBufferedStream(new StringBufferInputStream(TEST_1_HEADER)))); + evalHeader = (VCFHeader)codec.readActualHeader(codec.makeSourceFromStream(new PositionalBufferedStream(new StringBufferInputStream(TEST_1_HEADER)))); + compHeader = (VCFHeader)codec.readActualHeader(codec.makeSourceFromStream(new PositionalBufferedStream(new StringBufferInputStream(TEST_1_HEADER)))); metrics = new ConcordanceMetrics(evalHeader,compHeader); metrics.update(eval,truth); Assert.assertEquals(eval.getGenotype("test1_sample2").getType().ordinal(), 2); @@ -264,8 +258,8 @@ public class ConcordanceMetricsUnitTest extends BaseTest { VariantContext eval = data.getFirst(); VariantContext truth = data.getSecond(); VCFCodec codec = new VCFCodec(); - VCFHeader evalHeader = (VCFHeader)codec.readHeader(new AsciiLineReader(new PositionalBufferedStream(new StringBufferInputStream(TEST_1_HEADER)))); - VCFHeader compHeader = (VCFHeader)codec.readHeader(new AsciiLineReader(new PositionalBufferedStream(new StringBufferInputStream(TEST_1_HEADER)))); + VCFHeader evalHeader = (VCFHeader)codec.readActualHeader(codec.makeSourceFromStream(new PositionalBufferedStream(new StringBufferInputStream(TEST_1_HEADER)))); + VCFHeader compHeader = (VCFHeader)codec.readActualHeader(codec.makeSourceFromStream(new PositionalBufferedStream(new StringBufferInputStream(TEST_1_HEADER)))); ConcordanceMetrics metrics = new ConcordanceMetrics(evalHeader,compHeader); metrics.update(eval,truth); Assert.assertEquals(metrics.getGenotypeConcordance("test1_sample1").getnMismatchingAlt(),1); @@ -317,8 +311,8 @@ public class ConcordanceMetricsUnitTest extends BaseTest { VariantContext eval = data.getFirst(); VariantContext truth = data.getSecond(); VCFCodec codec = new VCFCodec(); - VCFHeader evalHeader = (VCFHeader)codec.readHeader(new AsciiLineReader(new PositionalBufferedStream(new StringBufferInputStream(TEST_1_HEADER)))); - VCFHeader compHeader = (VCFHeader)codec.readHeader(new AsciiLineReader(new PositionalBufferedStream(new StringBufferInputStream(TEST_1_HEADER)))); + VCFHeader evalHeader = (VCFHeader)codec.readActualHeader(codec.makeSourceFromStream(new PositionalBufferedStream(new StringBufferInputStream(TEST_1_HEADER)))); + VCFHeader compHeader = (VCFHeader)codec.readActualHeader(codec.makeSourceFromStream(new PositionalBufferedStream(new StringBufferInputStream(TEST_1_HEADER)))); ConcordanceMetrics metrics = new ConcordanceMetrics(evalHeader,compHeader); metrics.update(eval,truth); Assert.assertEquals(metrics.getGenotypeConcordance("test1_sample2").getnMismatchingAlt(),0); @@ -366,8 +360,8 @@ public class ConcordanceMetricsUnitTest extends BaseTest { VariantContext eval = data.getFirst(); VariantContext truth = data.getSecond(); VCFCodec codec = new VCFCodec(); - VCFHeader evalHeader = (VCFHeader)codec.readHeader(new AsciiLineReader(new PositionalBufferedStream(new StringBufferInputStream(TEST_1_HEADER)))); - VCFHeader compHeader = (VCFHeader)codec.readHeader(new AsciiLineReader(new PositionalBufferedStream(new StringBufferInputStream(TEST_1_HEADER)))); + VCFHeader evalHeader = (VCFHeader)codec.readActualHeader(codec.makeSourceFromStream(new PositionalBufferedStream(new StringBufferInputStream(TEST_1_HEADER)))); + VCFHeader compHeader = (VCFHeader)codec.readActualHeader(codec.makeSourceFromStream(new PositionalBufferedStream(new StringBufferInputStream(TEST_1_HEADER)))); ConcordanceMetrics metrics = new ConcordanceMetrics(evalHeader,compHeader); metrics.update(eval,truth); Assert.assertTrue(eval.getGenotype("test1_sample2").getType().equals(GenotypeType.UNAVAILABLE)); @@ -520,8 +514,8 @@ public class ConcordanceMetricsUnitTest extends BaseTest { List> data = getData6(); VCFCodec codec = new VCFCodec(); - VCFHeader evalHeader = (VCFHeader)codec.readHeader(new AsciiLineReader(new PositionalBufferedStream(new StringBufferInputStream(TEST_2_HEADER)))); - VCFHeader compHeader = (VCFHeader)codec.readHeader(new AsciiLineReader(new PositionalBufferedStream(new StringBufferInputStream(TEST_2_HEADER)))); + VCFHeader evalHeader = (VCFHeader)codec.readActualHeader(codec.makeSourceFromStream(new PositionalBufferedStream(new StringBufferInputStream(TEST_2_HEADER)))); + VCFHeader compHeader = (VCFHeader)codec.readActualHeader(codec.makeSourceFromStream(new PositionalBufferedStream(new StringBufferInputStream(TEST_2_HEADER)))); ConcordanceMetrics metrics = new ConcordanceMetrics(evalHeader,compHeader); for ( Pair contextPair : data ) { @@ -554,8 +548,8 @@ public class ConcordanceMetricsUnitTest extends BaseTest { VariantContext eval = data.getFirst(); VariantContext truth = data.getSecond(); VCFCodec codec = new VCFCodec(); - VCFHeader evalHeader = (VCFHeader)codec.readHeader(new AsciiLineReader(new PositionalBufferedStream(new StringBufferInputStream(TEST_1_HEADER)))); - VCFHeader compHeader = (VCFHeader)codec.readHeader(new AsciiLineReader(new PositionalBufferedStream(new StringBufferInputStream(TEST_1_HEADER)))); + VCFHeader evalHeader = (VCFHeader)codec.readActualHeader(codec.makeSourceFromStream(new PositionalBufferedStream(new StringBufferInputStream(TEST_1_HEADER)))); + VCFHeader compHeader = (VCFHeader)codec.readActualHeader(codec.makeSourceFromStream(new PositionalBufferedStream(new StringBufferInputStream(TEST_1_HEADER)))); ConcordanceMetrics metrics = new ConcordanceMetrics(evalHeader,compHeader); int[][] table = metrics.getOverallGenotypeConcordance().getTable(); // set up the table @@ -588,9 +582,9 @@ public class ConcordanceMetricsUnitTest extends BaseTest { @Test(enabled=true) public void testRobustness() { VCFCodec codec = new VCFCodec(); - VCFHeader evalHeader = (VCFHeader)codec.readHeader(new AsciiLineReader(new PositionalBufferedStream(new StringBufferInputStream(TEST_3_HEADER_1)))); - VCFHeader disjointCompHeader = (VCFHeader)codec.readHeader(new AsciiLineReader(new PositionalBufferedStream(new StringBufferInputStream(TEST_3_HEADER_2)))); - VCFHeader overlapCompHeader = (VCFHeader)codec.readHeader(new AsciiLineReader(new PositionalBufferedStream(new StringBufferInputStream(TEST_3_HEADER_3)))); + VCFHeader evalHeader = (VCFHeader)codec.readActualHeader(codec.makeSourceFromStream(new PositionalBufferedStream(new StringBufferInputStream(TEST_3_HEADER_1)))); + VCFHeader disjointCompHeader = (VCFHeader)codec.readActualHeader(codec.makeSourceFromStream(new PositionalBufferedStream(new StringBufferInputStream(TEST_3_HEADER_2)))); + VCFHeader overlapCompHeader = (VCFHeader)codec.readActualHeader(codec.makeSourceFromStream(new PositionalBufferedStream(new StringBufferInputStream(TEST_3_HEADER_3)))); ConcordanceMetrics disjointMetrics = new ConcordanceMetrics(evalHeader,disjointCompHeader); ConcordanceMetrics overlapMetrics = new ConcordanceMetrics(evalHeader,overlapCompHeader); @@ -720,8 +714,8 @@ public class ConcordanceMetricsUnitTest extends BaseTest { @Test(enabled = true) public void testSites() { VCFCodec codec = new VCFCodec(); - VCFHeader evalHeader = (VCFHeader)codec.readHeader(new AsciiLineReader(new PositionalBufferedStream(new StringBufferInputStream(TEST_2_HEADER)))); - VCFHeader compHeader = (VCFHeader)codec.readHeader(new AsciiLineReader(new PositionalBufferedStream(new StringBufferInputStream(TEST_2_HEADER)))); + VCFHeader evalHeader = (VCFHeader)codec.readActualHeader(codec.makeSourceFromStream(new PositionalBufferedStream(new StringBufferInputStream(TEST_2_HEADER)))); + VCFHeader compHeader = (VCFHeader)codec.readActualHeader(codec.makeSourceFromStream(new PositionalBufferedStream(new StringBufferInputStream(TEST_2_HEADER)))); ConcordanceMetrics metrics = new ConcordanceMetrics(evalHeader,compHeader); List> data = getData7(); diff --git a/public/java/src/org/broadinstitute/sting/gatk/io/storage/VariantContextWriterStorage.java b/public/java/src/org/broadinstitute/sting/gatk/io/storage/VariantContextWriterStorage.java index 80841bae7..e1dc36f5c 100644 --- a/public/java/src/org/broadinstitute/sting/gatk/io/storage/VariantContextWriterStorage.java +++ b/public/java/src/org/broadinstitute/sting/gatk/io/storage/VariantContextWriterStorage.java @@ -28,17 +28,18 @@ package org.broadinstitute.sting.gatk.io.storage; import net.sf.samtools.util.BlockCompressedOutputStream; import org.apache.log4j.Logger; import org.broad.tribble.AbstractFeatureReader; +import org.broad.tribble.Feature; import org.broad.tribble.FeatureCodec; import org.broadinstitute.sting.gatk.io.stubs.VariantContextWriterStub; import org.broadinstitute.sting.gatk.refdata.tracks.FeatureManager; -import org.broadinstitute.variant.bcf2.BCF2Utils; -import org.broadinstitute.variant.vcf.VCFHeader; import org.broadinstitute.sting.utils.exceptions.ReviewedStingException; import org.broadinstitute.sting.utils.exceptions.UserException; +import org.broadinstitute.variant.bcf2.BCF2Utils; import org.broadinstitute.variant.variantcontext.VariantContext; import org.broadinstitute.variant.variantcontext.writer.Options; import org.broadinstitute.variant.variantcontext.writer.VariantContextWriter; import org.broadinstitute.variant.variantcontext.writer.VariantContextWriterFactory; +import org.broadinstitute.variant.vcf.VCFHeader; import java.io.*; import java.util.Arrays; @@ -205,12 +206,11 @@ public class VariantContextWriterStorage implements Storage codec = fd.getCodec(); - final AbstractFeatureReader source = - AbstractFeatureReader.getFeatureReader(file.getAbsolutePath(), codec, false); - - for ( final VariantContext vc : source.iterator() ) { - target.writer.add(vc); + final FeatureCodec codec = fd.getCodec(); + final AbstractFeatureReader source = AbstractFeatureReader.getFeatureReader(file.getAbsolutePath(), codec, false); + + for ( final Feature vc : source.iterator() ) { + target.writer.add((VariantContext) vc); } source.close(); diff --git a/public/java/src/org/broadinstitute/sting/utils/codecs/beagle/BeagleCodec.java b/public/java/src/org/broadinstitute/sting/utils/codecs/beagle/BeagleCodec.java index 6ab3c9a16..4a6becf6f 100644 --- a/public/java/src/org/broadinstitute/sting/utils/codecs/beagle/BeagleCodec.java +++ b/public/java/src/org/broadinstitute/sting/utils/codecs/beagle/BeagleCodec.java @@ -51,9 +51,8 @@ package org.broadinstitute.sting.utils.codecs.beagle; import org.broad.tribble.AsciiFeatureCodec; -import org.broad.tribble.Feature; import org.broad.tribble.exception.CodecLineParsingException; -import org.broad.tribble.readers.LineReader; +import org.broad.tribble.readers.LineIterator; import org.broadinstitute.sting.gatk.refdata.ReferenceDependentFeatureCodec; import org.broadinstitute.sting.utils.GenomeLoc; import org.broadinstitute.sting.utils.GenomeLocParser; @@ -131,8 +130,8 @@ public class BeagleCodec extends AsciiFeatureCodec implements Ref this.genomeLocParser = genomeLocParser; } - public Object readHeader(LineReader reader) - { + @Override + public Object readActualHeader(LineIterator reader) { int[] lineCounter = new int[1]; try { header = readHeader(reader, lineCounter); @@ -181,14 +180,14 @@ public class BeagleCodec extends AsciiFeatureCodec implements Ref return header; } - private static String[] readHeader(final LineReader source, int[] lineCounter) throws IOException { + private static String[] readHeader(final LineIterator source, int[] lineCounter) throws IOException { String[] header = null; int numLines = 0; //find the 1st line that's non-empty and not a comment - String line; - while( (line = source.readLine()) != null ) { + while(source.hasNext()) { + final String line = source.next(); numLines++; if ( line.trim().isEmpty() ) { continue; diff --git a/public/java/src/org/broadinstitute/sting/utils/codecs/hapmap/RawHapMapCodec.java b/public/java/src/org/broadinstitute/sting/utils/codecs/hapmap/RawHapMapCodec.java index 38ff35c3f..b2b31b572 100644 --- a/public/java/src/org/broadinstitute/sting/utils/codecs/hapmap/RawHapMapCodec.java +++ b/public/java/src/org/broadinstitute/sting/utils/codecs/hapmap/RawHapMapCodec.java @@ -28,9 +28,7 @@ package org.broadinstitute.sting.utils.codecs.hapmap; import org.broad.tribble.AsciiFeatureCodec; import org.broad.tribble.FeatureCodecHeader; import org.broad.tribble.annotation.Strand; -import org.broad.tribble.readers.AsciiLineReader; -import org.broad.tribble.readers.LineReader; -import org.broad.tribble.readers.PositionalBufferedStream; +import org.broad.tribble.readers.LineIterator; import java.io.IOException; import java.util.Arrays; @@ -112,18 +110,16 @@ public class RawHapMapCodec extends AsciiFeatureCodec { headerLine); } - public Object readHeader(LineReader reader) { - try { - headerLine = reader.readLine(); - } catch (IOException e) { - throw new IllegalArgumentException("Unable to read a line from the line reader"); - } + @Override + public Object readActualHeader(final LineIterator lineIterator) { + this.headerLine = lineIterator.next(); return headerLine; } @Override - public FeatureCodecHeader readHeader(final PositionalBufferedStream stream) throws IOException { - final AsciiLineReader br = new AsciiLineReader(stream); - return new FeatureCodecHeader(readHeader(br), br.getPosition()); + public FeatureCodecHeader readHeader(final LineIterator lineIterator) throws IOException { + final String header = (String) readActualHeader(lineIterator); + // TODO: This approach may cause issues with files formatted with \r\n-style line-endings. + return new FeatureCodecHeader(header, header.length() + 1); } } diff --git a/public/java/src/org/broadinstitute/sting/utils/codecs/refseq/RefSeqCodec.java b/public/java/src/org/broadinstitute/sting/utils/codecs/refseq/RefSeqCodec.java index 82ee76a81..3c2329b8f 100644 --- a/public/java/src/org/broadinstitute/sting/utils/codecs/refseq/RefSeqCodec.java +++ b/public/java/src/org/broadinstitute/sting/utils/codecs/refseq/RefSeqCodec.java @@ -28,6 +28,7 @@ package org.broadinstitute.sting.utils.codecs.refseq; import org.broad.tribble.AsciiFeatureCodec; import org.broad.tribble.Feature; import org.broad.tribble.TribbleException; +import org.broad.tribble.readers.LineIterator; import org.broadinstitute.sting.gatk.refdata.ReferenceDependentFeatureCodec; import org.broadinstitute.sting.utils.GenomeLoc; import org.broadinstitute.sting.utils.GenomeLocParser; @@ -93,7 +94,8 @@ public class RefSeqCodec extends AsciiFeatureCodec implements Ref } @Override - public Feature decodeLoc(String line) { + public Feature decodeLoc(final LineIterator lineIterator) { + final String line = lineIterator.next(); if (line.startsWith("#")) return null; String fields[] = line.split("\t"); if (fields.length < 3) throw new TribbleException("RefSeq (decodeLoc) : Unable to parse line -> " + line + ", we expected at least 3 columns, we saw " + fields.length); @@ -160,4 +162,10 @@ public class RefSeqCodec extends AsciiFeatureCodec implements Ref feature.setExon_frames(exon_frames); return feature; } + + @Override + public Object readActualHeader(LineIterator lineIterator) { + // No header for this format + return null; + } } diff --git a/public/java/src/org/broadinstitute/sting/utils/codecs/sampileup/SAMPileupCodec.java b/public/java/src/org/broadinstitute/sting/utils/codecs/sampileup/SAMPileupCodec.java index 37e44bf8c..34705c4c9 100644 --- a/public/java/src/org/broadinstitute/sting/utils/codecs/sampileup/SAMPileupCodec.java +++ b/public/java/src/org/broadinstitute/sting/utils/codecs/sampileup/SAMPileupCodec.java @@ -26,8 +26,8 @@ package org.broadinstitute.sting.utils.codecs.sampileup; import org.broad.tribble.AsciiFeatureCodec; -import org.broad.tribble.Feature; import org.broad.tribble.exception.CodecLineParsingException; +import org.broad.tribble.readers.LineIterator; import org.broad.tribble.util.ParsingUtils; import java.util.ArrayList; @@ -163,6 +163,12 @@ public class SAMPileupCodec extends AsciiFeatureCodec { return feature; } + @Override + public Object readActualHeader(LineIterator lineIterator) { + // No header for this format + return null; + } + private void parseIndels(String genotype,SAMPileupFeature feature) { String [] obs = genotype.split("/"); // get observations, now need to tinker with them a bit diff --git a/public/java/src/org/broadinstitute/sting/utils/codecs/samread/SAMReadCodec.java b/public/java/src/org/broadinstitute/sting/utils/codecs/samread/SAMReadCodec.java index 69127b289..cfc5d2c2d 100644 --- a/public/java/src/org/broadinstitute/sting/utils/codecs/samread/SAMReadCodec.java +++ b/public/java/src/org/broadinstitute/sting/utils/codecs/samread/SAMReadCodec.java @@ -29,8 +29,8 @@ import net.sf.samtools.Cigar; import net.sf.samtools.TextCigarCodec; import net.sf.samtools.util.StringUtil; import org.broad.tribble.AsciiFeatureCodec; -import org.broad.tribble.Feature; import org.broad.tribble.exception.CodecLineParsingException; +import org.broad.tribble.readers.LineIterator; import org.broad.tribble.util.ParsingUtils; /** @@ -114,4 +114,10 @@ public class SAMReadCodec extends AsciiFeatureCodec { bases, qualities); } + + @Override + public Object readActualHeader(LineIterator lineIterator) { + // No header for this format + return null; + } } diff --git a/public/java/src/org/broadinstitute/sting/utils/codecs/table/TableCodec.java b/public/java/src/org/broadinstitute/sting/utils/codecs/table/TableCodec.java index 9e66056f2..f69001d9d 100644 --- a/public/java/src/org/broadinstitute/sting/utils/codecs/table/TableCodec.java +++ b/public/java/src/org/broadinstitute/sting/utils/codecs/table/TableCodec.java @@ -26,14 +26,14 @@ package org.broadinstitute.sting.utils.codecs.table; import org.broad.tribble.AsciiFeatureCodec; -import org.broad.tribble.readers.LineReader; +import org.broad.tribble.readers.LineIterator; import org.broadinstitute.sting.gatk.refdata.ReferenceDependentFeatureCodec; import org.broadinstitute.sting.utils.GenomeLocParser; import org.broadinstitute.sting.utils.exceptions.UserException; -import java.io.IOException; import java.util.ArrayList; import java.util.Arrays; +import java.util.Collections; /** * Reads tab deliminated tabular text files @@ -97,30 +97,29 @@ public class TableCodec extends AsciiFeatureCodec implements Refer String[] split = line.split(delimiterRegex); if (split.length < 1) throw new IllegalArgumentException("TableCodec line = " + line + " doesn't appear to be a valid table format"); - return new TableFeature(genomeLocParser.parseGenomeLoc(split[0]),Arrays.asList(split),header); + return new TableFeature(genomeLocParser.parseGenomeLoc(split[0]),Arrays.asList(split), header); } @Override - public Object readHeader(LineReader reader) { - String line = ""; - try { - boolean isFirst = true; - while ((line = reader.readLine()) != null) { - if ( isFirst && ! line.startsWith(headerDelimiter) && ! line.startsWith(commentDelimiter)) { - throw new UserException.MalformedFile("TableCodec file does not have a header"); - } - isFirst &= line.startsWith(commentDelimiter); - if (line.startsWith(headerDelimiter)) { - if (header.size() > 0) throw new IllegalStateException("Input table file seems to have two header lines. The second is = " + line); - String spl[] = line.split(delimiterRegex); - for (String s : spl) header.add(s); - return header; - } else if (!line.startsWith(commentDelimiter)) { - break; - } + public Object readActualHeader(final LineIterator reader) { + boolean isFirst = true; + while (reader.hasNext()) { + final String line = reader.peek(); // Peek to avoid reading non-header data + if ( isFirst && ! line.startsWith(headerDelimiter) && ! line.startsWith(commentDelimiter)) { + throw new UserException.MalformedFile("TableCodec file does not have a header"); + } + isFirst &= line.startsWith(commentDelimiter); + if (line.startsWith(headerDelimiter)) { + reader.next(); // "Commit" the peek + if (header.size() > 0) throw new IllegalStateException("Input table file seems to have two header lines. The second is = " + line); + final String spl[] = line.split(delimiterRegex); + Collections.addAll(header, spl); + return header; + } else if (line.startsWith(commentDelimiter)) { + reader.next(); // "Commit" the peek + } else { + break; } - } catch (IOException e) { - throw new UserException.MalformedFile("unable to parse header from TableCodec file",e); } return header; } diff --git a/public/java/src/org/broadinstitute/sting/utils/variant/GATKVCFUtils.java b/public/java/src/org/broadinstitute/sting/utils/variant/GATKVCFUtils.java index 09db585a6..49200911b 100644 --- a/public/java/src/org/broadinstitute/sting/utils/variant/GATKVCFUtils.java +++ b/public/java/src/org/broadinstitute/sting/utils/variant/GATKVCFUtils.java @@ -28,6 +28,7 @@ package org.broadinstitute.sting.utils.variant; import org.broad.tribble.Feature; import org.broad.tribble.FeatureCodec; import org.broad.tribble.FeatureCodecHeader; +import org.broad.tribble.readers.LineIterator; import org.broad.tribble.readers.PositionalBufferedStream; import org.broadinstitute.sting.commandline.RodBinding; import org.broadinstitute.sting.gatk.CommandLineGATK; @@ -177,31 +178,26 @@ public class GATKVCFUtils { /** * Utility class to read all of the VC records from a file * - * @param source + * @param file * @param codec * @return * @throws IOException */ - public final static Pair readAllVCs( final File source, final FeatureCodec codec ) throws IOException { + public final static Pair> readAllVCs( final File file, final FeatureCodec codec) throws IOException { // read in the features - PositionalBufferedStream pbs = new PositionalBufferedStream(new FileInputStream(source)); - FeatureCodecHeader header = codec.readHeader(pbs); - pbs.close(); - - pbs = new PositionalBufferedStream(new FileInputStream(source)); - pbs.skip(header.getHeaderEnd()); - + SOURCE source = codec.makeSourceFromStream(new FileInputStream(file)); + FeatureCodecHeader header = codec.readHeader(source); final VCFHeader vcfHeader = (VCFHeader)header.getHeaderValue(); - return new Pair(vcfHeader, new VCIterable(pbs, codec, vcfHeader)); + return new Pair<>(vcfHeader, new VCIterable<>(source, codec, vcfHeader)); } - public static class VCIterable implements Iterable, Iterator { - final PositionalBufferedStream pbs; - final FeatureCodec codec; + public static class VCIterable implements Iterable, Iterator { + final SOURCE source; + final FeatureCodec codec; final VCFHeader header; - private VCIterable(final PositionalBufferedStream pbs, final FeatureCodec codec, final VCFHeader header) { - this.pbs = pbs; + private VCIterable(final SOURCE source, final FeatureCodec codec, final VCFHeader header) { + this.source = source; this.codec = codec; this.header = header; } @@ -213,17 +209,13 @@ public class GATKVCFUtils { @Override public boolean hasNext() { - try { - return ! pbs.isDone(); - } catch ( IOException e ) { - throw new RuntimeException(e); - } + return ! codec.isDone(source); } @Override public VariantContext next() { try { - final VariantContext vc = codec.decode(pbs); + final VariantContext vc = codec.decode(source); return vc == null ? null : vc.fullyDecode(header, false); } catch ( IOException e ) { throw new RuntimeException(e); @@ -249,20 +241,19 @@ public class GATKVCFUtils { final List vcs = new ArrayList(); final VCFCodec codec = new VCFCodec(); PositionalBufferedStream pbs = new PositionalBufferedStream(new FileInputStream(source)); - FeatureCodecHeader header = codec.readHeader(pbs); - pbs.close(); + final LineIterator vcfSource = codec.makeSourceFromStream(pbs); + try { + final VCFHeader vcfHeader = (VCFHeader) codec.readActualHeader(vcfSource); - pbs = new PositionalBufferedStream(new FileInputStream(source)); - pbs.skip(header.getHeaderEnd()); + while (vcfSource.hasNext()) { + final VariantContext vc = codec.decode(vcfSource); + if ( vc != null ) + vcs.add(vc); + } - final VCFHeader vcfHeader = (VCFHeader)header.getHeaderValue(); - - while ( ! pbs.isDone() ) { - final VariantContext vc = codec.decode(pbs); - if ( vc != null ) - vcs.add(vc); + return new Pair>(vcfHeader, vcs); + } finally { + codec.close(vcfSource); } - - return new Pair>(vcfHeader, vcs); } } \ No newline at end of file diff --git a/public/java/test/org/broadinstitute/sting/BaseTest.java b/public/java/test/org/broadinstitute/sting/BaseTest.java index 5efe2dfc3..9d23062c0 100644 --- a/public/java/test/org/broadinstitute/sting/BaseTest.java +++ b/public/java/test/org/broadinstitute/sting/BaseTest.java @@ -30,6 +30,8 @@ import org.apache.log4j.Level; import org.apache.log4j.Logger; import org.apache.log4j.PatternLayout; import org.apache.log4j.spi.LoggingEvent; +import org.broad.tribble.readers.LineIterator; +import org.broad.tribble.readers.PositionalBufferedStream; import org.broadinstitute.sting.commandline.CommandLineUtils; import org.broadinstitute.sting.utils.collections.Pair; import org.broadinstitute.sting.utils.crypt.CryptUtils; @@ -450,8 +452,8 @@ public abstract class BaseTest { } public static void assertVCFandBCFFilesAreTheSame(final File vcfFile, final File bcfFile) throws IOException { - final Pair vcfData = GATKVCFUtils.readAllVCs(vcfFile, new VCFCodec()); - final Pair bcfData = GATKVCFUtils.readAllVCs(bcfFile, new BCF2Codec()); + final Pair> vcfData = GATKVCFUtils.readAllVCs(vcfFile, new VCFCodec()); + final Pair> bcfData = GATKVCFUtils.readAllVCs(bcfFile, new BCF2Codec()); assertVCFHeadersAreEqual(bcfData.getFirst(), vcfData.getFirst()); assertVariantContextStreamsAreEqual(bcfData.getSecond(), vcfData.getSecond()); } diff --git a/public/java/test/org/broadinstitute/sting/gatk/EngineFeaturesIntegrationTest.java b/public/java/test/org/broadinstitute/sting/gatk/EngineFeaturesIntegrationTest.java index c65d62149..f1839e6ac 100644 --- a/public/java/test/org/broadinstitute/sting/gatk/EngineFeaturesIntegrationTest.java +++ b/public/java/test/org/broadinstitute/sting/gatk/EngineFeaturesIntegrationTest.java @@ -28,11 +28,9 @@ package org.broadinstitute.sting.gatk; import net.sf.samtools.SAMFileReader; import net.sf.samtools.SAMReadGroupRecord; import net.sf.samtools.SAMRecord; -import org.broad.tribble.readers.AsciiLineReader; import org.broadinstitute.sting.WalkerTest; import org.broadinstitute.sting.commandline.Argument; import org.broadinstitute.sting.commandline.Output; -import org.broadinstitute.sting.gatk.contexts.AlignmentContext; import org.broadinstitute.sting.gatk.contexts.ReferenceContext; import org.broadinstitute.sting.gatk.filters.MappingQualityUnavailableFilter; import org.broadinstitute.sting.gatk.refdata.RefMetaDataTracker; @@ -48,7 +46,6 @@ import org.broadinstitute.variant.vcf.VCFCodec; import org.broadinstitute.variant.vcf.VCFHeader; import org.broadinstitute.variant.vcf.VCFHeaderLine; import org.testng.Assert; -import org.testng.TestException; import org.testng.annotations.DataProvider; import org.testng.annotations.Test; @@ -218,7 +215,8 @@ public class EngineFeaturesIntegrationTest extends WalkerTest { 1, Arrays.asList("")); spec.disableShadowBCF(); final File vcf = executeTest("testGATKVersionInVCF", spec).first.get(0); - final VCFHeader header = (VCFHeader)new VCFCodec().readHeader(new AsciiLineReader(new FileInputStream(vcf))); + final VCFCodec codec = new VCFCodec(); + final VCFHeader header = (VCFHeader) codec.readActualHeader(codec.makeSourceFromStream(new FileInputStream(vcf))); final VCFHeaderLine versionLine = header.getMetaDataLine(GATKVCFUtils.GATK_COMMAND_LINE_KEY); Assert.assertNotNull(versionLine); Assert.assertTrue(versionLine.toString().contains("SelectVariants")); @@ -232,7 +230,8 @@ public class EngineFeaturesIntegrationTest extends WalkerTest { 1, Arrays.asList("")); spec.disableShadowBCF(); final File vcf = executeTest("testMultipleGATKVersionsInVCF", spec).first.get(0); - final VCFHeader header = (VCFHeader)new VCFCodec().readHeader(new AsciiLineReader(new FileInputStream(vcf))); + final VCFCodec codec = new VCFCodec(); + final VCFHeader header = (VCFHeader) codec.readActualHeader(codec.makeSourceFromStream(new FileInputStream(vcf))); boolean foundHC = false; boolean foundSV = false; diff --git a/public/java/test/org/broadinstitute/sting/gatk/refdata/utils/TestFeatureReader.java b/public/java/test/org/broadinstitute/sting/gatk/refdata/utils/TestFeatureReader.java index adcc21291..988355813 100644 --- a/public/java/test/org/broadinstitute/sting/gatk/refdata/utils/TestFeatureReader.java +++ b/public/java/test/org/broadinstitute/sting/gatk/refdata/utils/TestFeatureReader.java @@ -34,7 +34,7 @@ import java.io.IOException; /** * Feature reader with additional test utilities. The iterators can be checked to see if they are closed. */ -public class TestFeatureReader extends TribbleIndexedFeatureReader { +public class TestFeatureReader extends TribbleIndexedFeatureReader { public TestFeatureReader(String featurePath, FeatureCodec codec) throws IOException { super(featurePath, codec, true); } diff --git a/public/java/test/org/broadinstitute/sting/utils/activeregion/BandPassActivityProfileUnitTest.java b/public/java/test/org/broadinstitute/sting/utils/activeregion/BandPassActivityProfileUnitTest.java index 2470364c4..fb238ef54 100644 --- a/public/java/test/org/broadinstitute/sting/utils/activeregion/BandPassActivityProfileUnitTest.java +++ b/public/java/test/org/broadinstitute/sting/utils/activeregion/BandPassActivityProfileUnitTest.java @@ -31,6 +31,7 @@ package org.broadinstitute.sting.utils.activeregion; import net.sf.picard.reference.ReferenceSequenceFile; import org.apache.commons.lang.ArrayUtils; +import org.broad.tribble.readers.LineIterator; import org.broadinstitute.sting.BaseTest; import org.broadinstitute.sting.utils.GenomeLoc; import org.broadinstitute.sting.utils.GenomeLocParser; @@ -48,7 +49,10 @@ import org.testng.annotations.Test; import java.io.File; import java.io.FileNotFoundException; -import java.util.*; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.LinkedList; +import java.util.List; public class BandPassActivityProfileUnitTest extends BaseTest { @@ -261,7 +265,7 @@ public class BandPassActivityProfileUnitTest extends BaseTest { final File file = new File(path); final VCFCodec codec = new VCFCodec(); - final Pair reader = GATKVCFUtils.readAllVCs(file, codec); + final Pair> reader = GATKVCFUtils.readAllVCs(file, codec); final List incRegions = new ArrayList(); final BandPassActivityProfile incProfile = new BandPassActivityProfile(genomeLocParser, null); diff --git a/public/java/test/org/broadinstitute/sting/utils/codecs/hapmap/HapMapUnitTest.java b/public/java/test/org/broadinstitute/sting/utils/codecs/hapmap/HapMapUnitTest.java index 5cd13b818..1ac79dcf3 100644 --- a/public/java/test/org/broadinstitute/sting/utils/codecs/hapmap/HapMapUnitTest.java +++ b/public/java/test/org/broadinstitute/sting/utils/codecs/hapmap/HapMapUnitTest.java @@ -26,7 +26,9 @@ package org.broadinstitute.sting.utils.codecs.hapmap; import org.broad.tribble.annotation.Strand; -import org.broad.tribble.readers.AsciiLineReader; +import org.broad.tribble.readers.LineIterator; +import org.broad.tribble.readers.LineIteratorImpl; +import org.broad.tribble.readers.LineReaderUtil; import org.broad.tribble.readers.PositionalBufferedStream; import org.broadinstitute.sting.BaseTest; import org.testng.Assert; @@ -53,15 +55,13 @@ public class HapMapUnitTest extends BaseTest { @Test public void testReadHeader() { RawHapMapCodec codec = new RawHapMapCodec(); - AsciiLineReader reader = getReader(); + final LineIterator reader = getLineIterator(); try { - String header = reader.readLine(); - reader.close(); - Assert.assertTrue(header.equals(codec.readHeader(getReader()))); - } catch (IOException e) { - Assert.fail("Unable to read from file " + hapMapFile); + String header = reader.next(); + Assert.assertTrue(header.equals(codec.readActualHeader(getLineIterator()))); + } finally { + codec.close(reader); } - reader.close(); } @Test @@ -114,22 +114,20 @@ public class HapMapUnitTest extends BaseTest { public void testReadCorrectNumberOfRecords() { // setup the record for reading our 500 line file (499 records, 1 header line) RawHapMapCodec codec = new RawHapMapCodec(); - AsciiLineReader reader = getReader(); + final LineIterator reader = getLineIterator(); - String line; int count = 0; try { codec.readHeader(reader); - line = reader.readLine(); - while (line != null) { - codec.decode(line); - line = reader.readLine(); + while (reader.hasNext()) { + codec.decode(reader.next()); ++count; } } catch (IOException e) { Assert.fail("IOException " + e.getMessage()); + } finally { + codec.close(reader); } - reader.close(); Assert.assertEquals(count,499); } @@ -137,25 +135,26 @@ public class HapMapUnitTest extends BaseTest { public void testGetSampleNames() { // setup the record for reading our 500 line file (499 records, 1 header line) RawHapMapCodec codec = new RawHapMapCodec(); - AsciiLineReader reader = getReader(); + final LineIterator reader = getLineIterator(); String line; try { codec.readHeader(reader); - line = reader.readLine(); + line = reader.next(); RawHapMapFeature feature = (RawHapMapFeature) codec.decode(line); Assert.assertEquals(feature.getSampleIDs().length,87); } catch (IOException e) { Assert.fail("IOException " + e.getMessage()); + } finally { + codec.close(reader); } - reader.close(); } - public AsciiLineReader getReader() { + public LineIterator getLineIterator() { try { - return new AsciiLineReader(new PositionalBufferedStream(new FileInputStream(hapMapFile))); + return new LineIteratorImpl(LineReaderUtil.fromBufferedStream(new PositionalBufferedStream(new FileInputStream(hapMapFile)))); } catch (FileNotFoundException e) { Assert.fail("Unable to open hapmap file : " + hapMapFile); } diff --git a/public/java/test/org/broadinstitute/sting/utils/variant/VariantContextBenchmark.java b/public/java/test/org/broadinstitute/sting/utils/variant/VariantContextBenchmark.java index 51a47d86d..381b282e0 100644 --- a/public/java/test/org/broadinstitute/sting/utils/variant/VariantContextBenchmark.java +++ b/public/java/test/org/broadinstitute/sting/utils/variant/VariantContextBenchmark.java @@ -105,7 +105,7 @@ public class VariantContextBenchmark extends SimpleBenchmark { public void run(T vc); } - private void runBenchmark(FeatureCodec codec, FunctionToBenchmark func) { + private void runBenchmark(FeatureCodec codec, FunctionToBenchmark func) { // TODO -- update for new Tribble interface // try { // InputStream is = new ByteArrayInputStream(INPUT_STRING.getBytes()); @@ -129,7 +129,7 @@ public class VariantContextBenchmark extends SimpleBenchmark { public void timeV14(int rep) { for ( int i = 0; i < rep; i++ ) { FunctionToBenchmark func = getV14FunctionToBenchmark(); - FeatureCodec codec = new VCFCodec(); + final VCFCodec codec = new VCFCodec(); runBenchmark(codec, func); } } diff --git a/public/scala/src/org/broadinstitute/sting/queue/util/VCF_BAM_utilities.scala b/public/scala/src/org/broadinstitute/sting/queue/util/VCF_BAM_utilities.scala index 73c4ccf64..5802faff2 100644 --- a/public/scala/src/org/broadinstitute/sting/queue/util/VCF_BAM_utilities.scala +++ b/public/scala/src/org/broadinstitute/sting/queue/util/VCF_BAM_utilities.scala @@ -31,14 +31,12 @@ import scala.io.Source._ import net.sf.samtools.SAMFileReader import org.broadinstitute.variant.vcf.{VCFHeader, VCFCodec} import scala.collection.JavaConversions._ -import org.broad.tribble.{FeatureCodec, AbstractFeatureReader} -import org.broadinstitute.variant.variantcontext.VariantContext +import org.broad.tribble.AbstractFeatureReader object VCF_BAM_utilities { def getSamplesFromVCF(vcfFile: File): List[String] = { - val codec: FeatureCodec[VariantContext] = new VCFCodec().asInstanceOf[FeatureCodec[VariantContext]] - AbstractFeatureReader.getFeatureReader(vcfFile.getPath, codec).getHeader.asInstanceOf[VCFHeader].getGenotypeSamples.toList + AbstractFeatureReader.getFeatureReader(vcfFile.getPath, new VCFCodec()).getHeader.asInstanceOf[VCFHeader].getGenotypeSamples.toList } def getSamplesInBAM(bam: File): List[String] = { diff --git a/settings/repository/net.sf/picard-1.96.1515.jar b/settings/repository/net.sf/picard-1.96.1525.jar similarity index 92% rename from settings/repository/net.sf/picard-1.96.1515.jar rename to settings/repository/net.sf/picard-1.96.1525.jar index 8d63a71c3..58bb179c3 100644 Binary files a/settings/repository/net.sf/picard-1.96.1515.jar and b/settings/repository/net.sf/picard-1.96.1525.jar differ diff --git a/settings/repository/net.sf/picard-1.96.1515.xml b/settings/repository/net.sf/picard-1.96.1525.xml similarity index 80% rename from settings/repository/net.sf/picard-1.96.1515.xml rename to settings/repository/net.sf/picard-1.96.1525.xml index 9d6294e31..6500aab1c 100644 --- a/settings/repository/net.sf/picard-1.96.1515.xml +++ b/settings/repository/net.sf/picard-1.96.1525.xml @@ -1,3 +1,3 @@ - + diff --git a/settings/repository/net.sf/sam-1.96.1515.xml b/settings/repository/net.sf/sam-1.96.1515.xml deleted file mode 100644 index 6c436926a..000000000 --- a/settings/repository/net.sf/sam-1.96.1515.xml +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/settings/repository/net.sf/sam-1.96.1515.jar b/settings/repository/net.sf/sam-1.96.1525.jar old mode 100644 new mode 100755 similarity index 94% rename from settings/repository/net.sf/sam-1.96.1515.jar rename to settings/repository/net.sf/sam-1.96.1525.jar index 391432b4a..73dd0ee48 Binary files a/settings/repository/net.sf/sam-1.96.1515.jar and b/settings/repository/net.sf/sam-1.96.1525.jar differ diff --git a/settings/repository/net.sf/sam-1.96.1525.xml b/settings/repository/net.sf/sam-1.96.1525.xml new file mode 100644 index 000000000..efc11ce6c --- /dev/null +++ b/settings/repository/net.sf/sam-1.96.1525.xml @@ -0,0 +1,3 @@ + + + diff --git a/settings/repository/org.broad/tribble-1.96.1515.jar b/settings/repository/org.broad/tribble-1.96.1526.jar similarity index 69% rename from settings/repository/org.broad/tribble-1.96.1515.jar rename to settings/repository/org.broad/tribble-1.96.1526.jar index b9cd54f7f..0f45dbf52 100644 Binary files a/settings/repository/org.broad/tribble-1.96.1515.jar and b/settings/repository/org.broad/tribble-1.96.1526.jar differ diff --git a/settings/repository/org.broad/tribble-1.96.1515.xml b/settings/repository/org.broad/tribble-1.96.1526.xml similarity index 76% rename from settings/repository/org.broad/tribble-1.96.1515.xml rename to settings/repository/org.broad/tribble-1.96.1526.xml index 9f07598e0..6f3c52e1b 100644 --- a/settings/repository/org.broad/tribble-1.96.1515.xml +++ b/settings/repository/org.broad/tribble-1.96.1526.xml @@ -1,3 +1,3 @@ - + diff --git a/settings/repository/org.broadinstitute/variant-1.96.1515.jar b/settings/repository/org.broadinstitute/variant-1.96.1525.jar similarity index 86% rename from settings/repository/org.broadinstitute/variant-1.96.1515.jar rename to settings/repository/org.broadinstitute/variant-1.96.1525.jar index 7dd3caf88..ffff1d4cc 100644 Binary files a/settings/repository/org.broadinstitute/variant-1.96.1515.jar and b/settings/repository/org.broadinstitute/variant-1.96.1525.jar differ diff --git a/settings/repository/org.broadinstitute/variant-1.96.1515.xml b/settings/repository/org.broadinstitute/variant-1.96.1525.xml similarity index 71% rename from settings/repository/org.broadinstitute/variant-1.96.1515.xml rename to settings/repository/org.broadinstitute/variant-1.96.1525.xml index 4f8727a05..eaa1d888f 100644 --- a/settings/repository/org.broadinstitute/variant-1.96.1515.xml +++ b/settings/repository/org.broadinstitute/variant-1.96.1525.xml @@ -1,3 +1,3 @@ - +