Remove reference dependence in BCF2Codec
-- Adding BCF2Codec to VCF.jar and associated unit tests Signed-off-by: Mark DePristo <depristo@broadinstitute.org>
This commit is contained in:
parent
19a257a5c1
commit
fcefa61bce
|
|
@ -646,7 +646,7 @@
|
||||||
<jar jarfile="${dist.dir}/vcf.jar">
|
<jar jarfile="${dist.dir}/vcf.jar">
|
||||||
<fileset dir="${java.classes}">
|
<fileset dir="${java.classes}">
|
||||||
<include name="org/broadinstitute/sting/utils/codecs/vcf/**/*.class"/>
|
<include name="org/broadinstitute/sting/utils/codecs/vcf/**/*.class"/>
|
||||||
<!-- <include name="org/broadinstitute/sting/utils/codecs/bcf2/**/*.class"/> -->
|
<include name="org/broadinstitute/sting/utils/codecs/bcf2/**/*.class"/>
|
||||||
<include name="org/broadinstitute/sting/utils/variantcontext/**/*.class"/>
|
<include name="org/broadinstitute/sting/utils/variantcontext/**/*.class"/>
|
||||||
<include name="org/broadinstitute/sting/utils/exceptions/**"/>
|
<include name="org/broadinstitute/sting/utils/exceptions/**"/>
|
||||||
<include name="org/broadinstitute/sting/utils/help/DocumentedGATKFeature.class"/>
|
<include name="org/broadinstitute/sting/utils/help/DocumentedGATKFeature.class"/>
|
||||||
|
|
|
||||||
|
|
@ -26,15 +26,12 @@ package org.broadinstitute.sting.utils.codecs.bcf2;
|
||||||
|
|
||||||
import com.google.java.contract.Ensures;
|
import com.google.java.contract.Ensures;
|
||||||
import com.google.java.contract.Requires;
|
import com.google.java.contract.Requires;
|
||||||
import net.sf.samtools.SAMSequenceRecord;
|
|
||||||
import org.apache.log4j.Logger;
|
import org.apache.log4j.Logger;
|
||||||
import org.broad.tribble.Feature;
|
import org.broad.tribble.Feature;
|
||||||
import org.broad.tribble.FeatureCodec;
|
import org.broad.tribble.FeatureCodec;
|
||||||
import org.broad.tribble.FeatureCodecHeader;
|
import org.broad.tribble.FeatureCodecHeader;
|
||||||
import org.broad.tribble.readers.AsciiLineReader;
|
import org.broad.tribble.readers.AsciiLineReader;
|
||||||
import org.broad.tribble.readers.PositionalBufferedStream;
|
import org.broad.tribble.readers.PositionalBufferedStream;
|
||||||
import org.broadinstitute.sting.gatk.refdata.ReferenceDependentFeatureCodec;
|
|
||||||
import org.broadinstitute.sting.utils.GenomeLocParser;
|
|
||||||
import org.broadinstitute.sting.utils.codecs.vcf.*;
|
import org.broadinstitute.sting.utils.codecs.vcf.*;
|
||||||
import org.broadinstitute.sting.utils.exceptions.ReviewedStingException;
|
import org.broadinstitute.sting.utils.exceptions.ReviewedStingException;
|
||||||
import org.broadinstitute.sting.utils.exceptions.UserException;
|
import org.broadinstitute.sting.utils.exceptions.UserException;
|
||||||
|
|
@ -44,12 +41,15 @@ import java.io.ByteArrayInputStream;
|
||||||
import java.io.FileInputStream;
|
import java.io.FileInputStream;
|
||||||
import java.io.FileNotFoundException;
|
import java.io.FileNotFoundException;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.util.*;
|
import java.util.ArrayList;
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Decode BCF2 files
|
* Decode BCF2 files
|
||||||
*/
|
*/
|
||||||
public final class BCF2Codec implements FeatureCodec<VariantContext>, ReferenceDependentFeatureCodec {
|
public final class BCF2Codec implements FeatureCodec<VariantContext> {
|
||||||
final protected static Logger logger = Logger.getLogger(BCF2Codec.class);
|
final protected static Logger logger = Logger.getLogger(BCF2Codec.class);
|
||||||
private final static boolean FORBID_SYMBOLICS = false;
|
private final static boolean FORBID_SYMBOLICS = false;
|
||||||
|
|
||||||
|
|
@ -162,7 +162,7 @@ public final class BCF2Codec implements FeatureCodec<VariantContext>, ReferenceD
|
||||||
contigNames.add(contig.getID());
|
contigNames.add(contig.getID());
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
logger.info("Didn't find any contig lines in BCF2 file, falling back (dangerously) to GATK reference dictionary");
|
throw new UserException.MalformedBCF2("Didn't find any contig lines in BCF2 file header");
|
||||||
}
|
}
|
||||||
|
|
||||||
// create the string dictionary
|
// create the string dictionary
|
||||||
|
|
@ -201,19 +201,6 @@ public final class BCF2Codec implements FeatureCodec<VariantContext>, ReferenceD
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// --------------------------------------------------------------------------------
|
|
||||||
//
|
|
||||||
// Reference dependence
|
|
||||||
//
|
|
||||||
// --------------------------------------------------------------------------------
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void setGenomeLocParser(final GenomeLocParser genomeLocParser) {
|
|
||||||
// initialize contigNames to standard ones in reference
|
|
||||||
for ( final SAMSequenceRecord contig : genomeLocParser.getContigs().getSequences() )
|
|
||||||
contigNames.add(contig.getSequenceName());
|
|
||||||
}
|
|
||||||
|
|
||||||
// --------------------------------------------------------------------------------
|
// --------------------------------------------------------------------------------
|
||||||
//
|
//
|
||||||
// implicit block
|
// implicit block
|
||||||
|
|
|
||||||
|
|
@ -50,12 +50,12 @@ public class VCFJarClassLoadingUnitTest {
|
||||||
|
|
||||||
ClassLoader classLoader = new URLClassLoader(jarURLs, null);
|
ClassLoader classLoader = new URLClassLoader(jarURLs, null);
|
||||||
classLoader.loadClass("org.broadinstitute.sting.utils.variantcontext.VariantContext");
|
classLoader.loadClass("org.broadinstitute.sting.utils.variantcontext.VariantContext");
|
||||||
// TODO -- uncomment when we include BCF2 codec
|
classLoader.loadClass("org.broadinstitute.sting.utils.codecs.bcf2.BCF2Codec");
|
||||||
// classLoader.loadClass("org.broadinstitute.sting.utils.codecs.bcf2.BCF2Codec");
|
|
||||||
classLoader.loadClass("org.broadinstitute.sting.utils.codecs.vcf.VCFCodec");
|
classLoader.loadClass("org.broadinstitute.sting.utils.codecs.vcf.VCFCodec");
|
||||||
classLoader.loadClass("org.broadinstitute.sting.utils.codecs.vcf.VCF3Codec");
|
classLoader.loadClass("org.broadinstitute.sting.utils.codecs.vcf.VCF3Codec");
|
||||||
classLoader.loadClass("org.broadinstitute.sting.utils.variantcontext.writer.VariantContextWriter");
|
classLoader.loadClass("org.broadinstitute.sting.utils.variantcontext.writer.VariantContextWriter");
|
||||||
classLoader.loadClass("org.broadinstitute.sting.utils.variantcontext.writer.VCFWriter");
|
classLoader.loadClass("org.broadinstitute.sting.utils.variantcontext.writer.VCFWriter");
|
||||||
|
classLoader.loadClass("org.broadinstitute.sting.utils.variantcontext.writer.BCF2Writer");
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue