some reformatting and logic cleanup in the comparison functions

git-svn-id: file:///humgen/gsa-scr1/gsa-engineering/svn_contents/trunk@132 348d0f76-0448-11de-a6fe-93d51630548a
This commit is contained in:
jmaguire 2009-03-22 15:36:56 +00:00
parent dfe50ce773
commit f7ad17016d
1 changed files with 24 additions and 8 deletions

View File

@ -186,35 +186,51 @@ public class GenomeLoc implements Comparable<GenomeLoc> {
//
// Comparison operations
//
public static int compareContigs( final String thisContig, final String thatContig ) {
public static int compareContigs( final String thisContig, final String thatContig )
{
if ( thisContig == thatContig )
{
assert(false);
return 0;
}
if ( refContigOrdering != null ) {
if ( ! refContigOrdering.containsKey(thisContig) ) {
if ( ! refContigOrdering.containsKey(thatContig) ) {
assert refContigOrdering.containsKey(thisContig);// : this;
assert refContigOrdering.containsKey(thatContig);// : that;
if ( refContigOrdering != null )
{
if ( ! refContigOrdering.containsKey(thisContig) )
{
if ( ! refContigOrdering.containsKey(thatContig) )
{
// Use regular sorted order
return thisContig.compareTo(thatContig);
}
else {
else
{
// this is always bigger if that is in the key set
return 1;
}
}
else if ( ! refContigOrdering.containsKey(thatContig) )
{
return -1;
else {
}
else
{
assert refContigOrdering.containsKey(thisContig);// : this;
assert refContigOrdering.containsKey(thatContig);// : that;
final int thisO = refContigOrdering.get(thisContig);
final int thatO = refContigOrdering.get(thatContig);
if ( thisO < thatO ) return -1;
if ( thisO > thatO ) return 1;
return 0;
}
}
else {
else
{
return thisContig.compareTo(thatContig);
}
}
@ -235,4 +251,4 @@ public class GenomeLoc implements Comparable<GenomeLoc> {
if ( this.getStop() > that.getStop() ) return 1;
return 0;
}
}
}