Merge branch 'master' of https://github.com/cmzmasek/forester.git into JalviewIntegration
[jalview.git] / forester / java / src / org / forester / go / BasicGoRelationship.java
index 6f8dd32..490dbc7 100644 (file)
@@ -5,7 +5,7 @@
 // Copyright (C) 2008-2009 Christian M. Zmasek
 // Copyright (C) 2008-2009 Burnham Institute for Medical Research
 // All rights reserved
-// 
+//
 // This library is free software; you can redistribute it and/or
 // modify it under the terms of the GNU Lesser General Public
 // License as published by the Free Software Foundation; either
 // but WITHOUT ANY WARRANTY; without even the implied warranty of
 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
 // Lesser General Public License for more details.
-// 
+//
 // You should have received a copy of the GNU Lesser General Public
 // License along with this library; if not, write to the Free Software
 // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
 //
 // Contact: phylosoft @ gmail . com
-// WWW: www.phylosoft.org/forester
+// WWW: https://sites.google.com/site/cmzmasek/home/software/forester
 
 package org.forester.go;
 
@@ -49,6 +49,18 @@ public class BasicGoRelationship implements GoRelationship {
         else if ( type.toLowerCase().equals( POSITIVELY_REGULATES_STR ) ) {
             _type = Type.POSITIVELY_REGULATES;
         }
+        else if ( type.toLowerCase().equals( HAS_PART_STR ) ) {
+            _type = Type.HAS_PART;
+        }
+        else if ( type.toLowerCase().equals( OCCURS_IN_STR ) ) {
+            _type = Type.OCCURS_IN;
+        }
+        else if ( type.toLowerCase().equals( HAPPENS_DURING_STR ) ) {
+            _type = Type.HAPPENS_DURING;
+        }
+        else if ( type.toLowerCase().equals(ENDS_DURING_STR ) ) {
+            _type = Type.ENDS_DURING;
+        }
         else {
             throw new IllegalArgumentException( "unknown GO relationship type: " + type );
         }
@@ -70,14 +82,15 @@ public class BasicGoRelationship implements GoRelationship {
         _go_id = go_id;
     }
 
+    @Override
     public int compareTo( final GoRelationship rel ) {
         return getGoId().compareTo( rel.getGoId() );
     }
 
     /**
      * Based on value and type.
-     * 
-     * 
+     *
+     *
      */
     @Override
     public boolean equals( final Object o ) {
@@ -97,10 +110,12 @@ public class BasicGoRelationship implements GoRelationship {
         }
     }
 
+    @Override
     public GoId getGoId() {
         return _go_id;
     }
 
+    @Override
     public Type getType() {
         return _type;
     }
@@ -121,8 +136,14 @@ public class BasicGoRelationship implements GoRelationship {
             case REGULATES:
                 sb.append( REGULATES_STR );
                 break;
+            case HAS_PART:
+                sb.append( HAS_PART_STR );
+                break;
+            case OCCURS_IN:
+                sb.append( OCCURS_IN_STR );
+                break;
             default:
-                new AssertionError( "unknown type: " + getType() );
+                new IllegalStateException( "unknown type: " + getType() );
         }
         sb.append( ": " );
         sb.append( getGoId().toString() );