diff --git a/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/pipelines/gatk/GatkPipeline.scala b/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/pipelines/gatk/GatkPipeline.scala index 623dc8c9a783bf33360d9a4654c16f056e9f0ab7..9af84cbbba2212472450b94aefdbe49bc457fd43 100644 --- a/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/pipelines/gatk/GatkPipeline.scala +++ b/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/pipelines/gatk/GatkPipeline.scala @@ -3,7 +3,7 @@ package nl.lumc.sasc.biopet.pipelines.gatk import nl.lumc.sasc.biopet.core.MultiSampleQScript import nl.lumc.sasc.biopet.core.PipelineCommand import nl.lumc.sasc.biopet.core.config.Configurable -import htsjdk.samtools.SAMFileReader +import htsjdk.samtools.SamReaderFactory import scala.collection.JavaConversions._ import java.io.File import nl.lumc.sasc.biopet.extensions.gatk.{ CombineVariants, CombineGVCFs } @@ -185,7 +185,7 @@ class GatkPipeline(val root: Configurable) extends QScript with MultiSampleQScri libraryOutput.mappedBamFile = mapping.outputFiles("finalBamFile") } else { var readGroupOke = true - val inputSam = new SAMFileReader(bamFile) + val inputSam = SamReaderFactory.makeDefault.open(bamFile) val header = inputSam.getFileHeader.getReadGroups for (readGroup <- inputSam.getFileHeader.getReadGroups) { if (readGroup.getSample != sampleID) logger.warn("Sample ID readgroup in bam file is not the same") diff --git a/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/BedToInterval.scala b/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/BedToInterval.scala index 436a4ff083eea141b3a45dda18d024022a0960e0..c226e3fb57a6a0176b7c2fea8e4ce12946274a87 100644 --- a/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/BedToInterval.scala +++ b/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/BedToInterval.scala @@ -1,7 +1,6 @@ package nl.lumc.sasc.biopet.tools -import htsjdk.samtools.SAMFileReader -import htsjdk.samtools.SAMSequenceRecord +import htsjdk.samtools.{ SAMSequenceRecord, SamReaderFactory } import java.io.File import nl.lumc.sasc.biopet.core.BiopetJavaCommandLineFunction import nl.lumc.sasc.biopet.core.ToolCommand @@ -68,7 +67,7 @@ object BedToInterval extends ToolCommand { val writer = new PrintWriter(commandArgs.outputFile) - val inputSam = new SAMFileReader(commandArgs.bamFile) + val inputSam = SamReaderFactory.makeDefault.open(commandArgs.bamFile) val refs = for (SQ <- inputSam.getFileHeader.getSequenceDictionary.getSequences.toArray) yield { val record = SQ.asInstanceOf[SAMSequenceRecord] writer.write("@SQ\tSN:" + record.getSequenceName + "\tLN:" + record.getSequenceLength + "\n") diff --git a/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/BiopetFlagstat.scala b/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/BiopetFlagstat.scala index 8465f45637bd2f8aec6976ec814d49d00636d338..31da6e44803307497f731c0e4155d18e2d0adf09 100644 --- a/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/BiopetFlagstat.scala +++ b/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/BiopetFlagstat.scala @@ -1,7 +1,6 @@ package nl.lumc.sasc.biopet.tools -import htsjdk.samtools.SAMFileReader -import htsjdk.samtools.SAMRecord +import htsjdk.samtools.{ SAMRecord, SamReaderFactory } import java.io.File import nl.lumc.sasc.biopet.core.BiopetJavaCommandLineFunction import nl.lumc.sasc.biopet.core.ToolCommand @@ -57,7 +56,7 @@ object BiopetFlagstat extends ToolCommand { val argsParser = new OptParser val commandArgs: Args = argsParser.parse(args, Args()) getOrElse sys.exit(1) - val inputSam = new SAMFileReader(commandArgs.inputFile) + val inputSam = SamReaderFactory.makeDefault.open(commandArgs.inputFile) val iterSam = if (commandArgs.region == None) inputSam.iterator else { val regionRegex = """(.*):(.*)-(.*)""".r commandArgs.region.get match { diff --git a/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/CheckAllelesVcfInBam.scala b/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/CheckAllelesVcfInBam.scala index 867eb36ad2b17e19cbb3b8d93bc894ef50c05dae..ad33d97fd9c8e990cc1ead72816f2f7ea665fc8b 100644 --- a/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/CheckAllelesVcfInBam.scala +++ b/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/CheckAllelesVcfInBam.scala @@ -1,8 +1,6 @@ package nl.lumc.sasc.biopet.tools -import htsjdk.samtools.SAMFileReader -import htsjdk.samtools.QueryInterval -import htsjdk.samtools.SAMRecord +import htsjdk.samtools.{ QueryInterval, SamReaderFactory, SAMRecord, SamReader } import htsjdk.variant.variantcontext.VariantContext import htsjdk.variant.variantcontext.VariantContextBuilder import htsjdk.variant.variantcontext.writer.AsyncVariantContextWriter @@ -69,7 +67,8 @@ object CheckAllelesVcfInBam extends ToolCommand { if (commandArgs.bamFiles.size != commandArgs.samples.size) logger.warn("Number of samples is diffrent then number of bam files, left over will be removed") - val bamReaders: Map[String, SAMFileReader] = Map(commandArgs.samples zip commandArgs.bamFiles.map(x => new SAMFileReader(x)): _*) + val samReaderFactory = SamReaderFactory.makeDefault + val bamReaders: Map[String, SamReader] = Map(commandArgs.samples zip commandArgs.bamFiles.map(x => samReaderFactory.open(x)): _*) val bamHeaders = bamReaders.map(x => (x._1, x._2.getFileHeader)) val reader = new VCFFileReader(commandArgs.inputFile, false) diff --git a/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/FindRepeatsPacBio.scala b/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/FindRepeatsPacBio.scala index b6c9690bc90b45c2f9376f69b574e73157f39f06..a9c73578c17e6dce71449a8b13aa2337e97374ac 100644 --- a/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/FindRepeatsPacBio.scala +++ b/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/FindRepeatsPacBio.scala @@ -1,25 +1,6 @@ -/* - * Copyright 2014 pjvan_thof. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - package nl.lumc.sasc.biopet.tools -import htsjdk.samtools.QueryInterval -import htsjdk.samtools.SAMFileReader -import htsjdk.samtools.ValidationStringency -import htsjdk.samtools.SAMRecord +import htsjdk.samtools.{ QueryInterval, SAMRecord, SamReaderFactory, ValidationStringency } import java.io.File import nl.lumc.sasc.biopet.core.ToolCommand import scala.io.Source @@ -44,8 +25,9 @@ object FindRepeatsPacBio extends ToolCommand { val argsParser = new OptParser val commandArgs: Args = argsParser.parse(args, Args()) getOrElse sys.exit(1) - val bamReader = new SAMFileReader(commandArgs.inputBam) - bamReader.setValidationStringency(ValidationStringency.SILENT) + val bamReader = SamReaderFactory.makeDefault + .validationStringency(ValidationStringency.SILENT) + .open(commandArgs.inputBam) val bamHeader = bamReader.getFileHeader val header = List("chr", "startPos", "stopPos", "Repeat_seq", "repeatLength",