From cd711d7697ed5ce3a54be23fd5036414ec453c85 Mon Sep 17 00:00:00 2001 From: aaron Date: Fri, 21 Aug 2009 05:35:49 +0000 Subject: [PATCH] Added detection of interval files with zero length to the GATK, and removed it from the interval merger walker: this was a critical blocking emergency issue for Eric. also fixed some verbage in the GAEngine. git-svn-id: file:///humgen/gsa-scr1/gsa-engineering/svn_contents/trunk@1449 348d0f76-0448-11de-a6fe-93d51630548a --- .../broadinstitute/sting/gatk/GenomeAnalysisEngine.java | 4 ++-- .../sting/gatk/walkers/indels/IntervalMergerWalker.java | 9 --------- .../org/broadinstitute/sting/utils/GenomeLocParser.java | 8 ++++++-- 3 files changed, 8 insertions(+), 13 deletions(-) diff --git a/java/src/org/broadinstitute/sting/gatk/GenomeAnalysisEngine.java b/java/src/org/broadinstitute/sting/gatk/GenomeAnalysisEngine.java index 3f41e9bbb..26aaefc1d 100755 --- a/java/src/org/broadinstitute/sting/gatk/GenomeAnalysisEngine.java +++ b/java/src/org/broadinstitute/sting/gatk/GenomeAnalysisEngine.java @@ -103,12 +103,12 @@ public class GenomeAnalysisEngine { public Object execute(GATKArgumentCollection args, Walker my_walker) { // validate our parameters if (args == null) { - throw new StingException("The GATKArgumentCollection passed to GenomeAnalysisEngine can be null."); + throw new StingException("The GATKArgumentCollection passed to GenomeAnalysisEngine can not be null."); } // validate our parameters if (my_walker == null) - throw new StingException("The walker passed to GenomeAnalysisEngine can be null."); + throw new StingException("The walker passed to GenomeAnalysisEngine can not be null."); // save our argument parameter this.argCollection = args; diff --git a/java/src/org/broadinstitute/sting/gatk/walkers/indels/IntervalMergerWalker.java b/java/src/org/broadinstitute/sting/gatk/walkers/indels/IntervalMergerWalker.java index 8e9c209f0..d4e39d390 100755 --- a/java/src/org/broadinstitute/sting/gatk/walkers/indels/IntervalMergerWalker.java +++ b/java/src/org/broadinstitute/sting/gatk/walkers/indels/IntervalMergerWalker.java @@ -114,15 +114,6 @@ public class IntervalMergerWalker extends ReadWalker { * @return a linked list of sorted, merged intervals. */ private LinkedList parseIntervals(List intervalsSource) { - - // ignore zero-length intervals files. - for (int i = 0; i < intervalsSource.size(); i++) - { - File f = new File(intervalsSource.get(i)); - long size = f.length(); - if (size == 0) { intervalsSource.remove(i); } - } - List parsedIntervals = GenomeAnalysisEngine.parseIntervalRegion(intervalsSource); GenomeLocSortedSet intervalSortedSet = new GenomeLocSortedSet(); for ( GenomeLoc parsedInterval : parsedIntervals ) diff --git a/java/src/org/broadinstitute/sting/utils/GenomeLocParser.java b/java/src/org/broadinstitute/sting/utils/GenomeLocParser.java index 481928169..fe5ac3b94 100644 --- a/java/src/org/broadinstitute/sting/utils/GenomeLocParser.java +++ b/java/src/org/broadinstitute/sting/utils/GenomeLocParser.java @@ -321,8 +321,12 @@ public class GenomeLocParser { */ List ret = null; try { - IntervalList il = IntervalList.fromFile(new File(file_name)); - + File inputFile = new File(file_name); + + // sometimes we see an empty file passed as a parameter, if so return an empty list + if (inputFile.length() < 1) return new ArrayList(); + IntervalList il = IntervalList.fromFile(inputFile); + // iterate through the list of merged intervals and add then as GenomeLocs ret = new ArrayList(); for (Interval interval : il.getUniqueIntervals()) {