From 4e0019b04fe52620f5ca84c55a63a2f05a519893 Mon Sep 17 00:00:00 2001 From: hanna Date: Thu, 6 May 2010 22:37:25 +0000 Subject: [PATCH] Repair code that sorts and merges intervals. git-svn-id: file:///humgen/gsa-scr1/gsa-engineering/svn_contents/trunk@3317 348d0f76-0448-11de-a6fe-93d51630548a --- .../sting/gatk/GenomeAnalysisEngine.java | 2 +- .../sting/utils/interval/IntervalUtils.java | 14 ++++++-------- 2 files changed, 7 insertions(+), 9 deletions(-) diff --git a/java/src/org/broadinstitute/sting/gatk/GenomeAnalysisEngine.java b/java/src/org/broadinstitute/sting/gatk/GenomeAnalysisEngine.java index 65d044664..9493b2a0e 100755 --- a/java/src/org/broadinstitute/sting/gatk/GenomeAnalysisEngine.java +++ b/java/src/org/broadinstitute/sting/gatk/GenomeAnalysisEngine.java @@ -227,7 +227,7 @@ public class GenomeAnalysisEngine { if (rawIntervals.size() == 0) return null; - return IntervalUtils.sortAndMergeIntervals(GenomeLocSortedSet.createSetFromList(rawIntervals),mergingRule); + return IntervalUtils.sortAndMergeIntervals(rawIntervals,mergingRule); } /** diff --git a/java/src/org/broadinstitute/sting/utils/interval/IntervalUtils.java b/java/src/org/broadinstitute/sting/utils/interval/IntervalUtils.java index 81cba6416..9924266fd 100644 --- a/java/src/org/broadinstitute/sting/utils/interval/IntervalUtils.java +++ b/java/src/org/broadinstitute/sting/utils/interval/IntervalUtils.java @@ -27,7 +27,7 @@ public class IntervalUtils { * @param argList A list of strings containing interval data. * @return an unsorted, unmerged representation of the given intervals. Null is used to indicate that all intervals should be used. */ - public static GenomeLocSortedSet parseIntervalArguments(List argList) { + public static List parseIntervalArguments(List argList) { List rawIntervals = new ArrayList(); // running list of raw GenomeLocs if (argList != null) { // now that we can be in this function if only the ROD-to-Intervals was provided, we need to @@ -58,7 +58,7 @@ public class IntervalUtils { } } - return GenomeLocSortedSet.createSetFromList(rawIntervals); + return rawIntervals; } /** @@ -70,15 +70,13 @@ public class IntervalUtils { * @param mergingRule A descriptor for the type of merging to perform. * @return A sorted, merged version of the intervals passed in. */ - public static GenomeLocSortedSet sortAndMergeIntervals(GenomeLocSortedSet intervals, IntervalMergingRule mergingRule) { - List intervalList = intervals.toList(); - + public static GenomeLocSortedSet sortAndMergeIntervals(List intervals, IntervalMergingRule mergingRule) { // sort raw interval list - Collections.sort(intervalList); + Collections.sort(intervals); // now merge raw interval list - intervalList = GenomeLocParser.mergeIntervalLocations(intervalList, mergingRule); + intervals = GenomeLocParser.mergeIntervalLocations(intervals, mergingRule); - return GenomeLocSortedSet.createSetFromList(intervalList); + return GenomeLocSortedSet.createSetFromList(intervals); } /**