JAL-2048 Update to structureviz2 package from cytoscape
authortcofoegbu <tcnofoegbu@dundee.ac.uk>
Fri, 1 Apr 2016 16:03:12 +0000 (17:03 +0100)
committertcofoegbu <tcnofoegbu@dundee.ac.uk>
Fri, 1 Apr 2016 16:03:12 +0000 (17:03 +0100)
src/ext/edu/ucsf/rbvi/strucviz2/ChimUtils.java

index 03f51f7..95221d2 100644 (file)
@@ -60,10 +60,25 @@ public abstract class ChimUtils
    */
   // invoked by openModel in ChimeraManager
   // line: #1, chain A: hiv-1 protease
+  // line: Model 0 (filename)
   public static int[] parseOpenedModelNumber(String inputLine)
   {
     int hash = inputLine.indexOf('#');
-    int space = inputLine.indexOf(',', hash);
+    int space = -1;
+    if (hash == (-1))
+    {
+      hash = inputLine.indexOf("Model");
+      if (hash >= 0)
+      {
+        hash = hash + 5;
+      }
+      space = inputLine.indexOf(' ', hash + 1);
+    }
+    else
+    {
+      space = inputLine.indexOf(',', hash);
+    }
+
     int decimal = inputLine.substring(hash + 1, space).indexOf('.');
     // model number is between hash+1 and space
     int modelNumber = -1;
@@ -93,7 +108,9 @@ public abstract class ChimUtils
   {
     int start = inputLine.indexOf("name ");
     if (start < 0)
+    {
       return null;
+    }
     // Might get a quoted string (don't understand why, but there you have it)
     if (inputLine.startsWith("\"", start + 5))
     {
@@ -104,7 +121,9 @@ public abstract class ChimUtils
         return inputLine.substring(start, end);
       }
       else
+      {
         return inputLine.substring(start);
+      }
     }
     else
     {
@@ -176,12 +195,18 @@ public abstract class ChimUtils
     {
       String[] subSplit = split[0].substring(1).split("\\.");
       if (subSplit.length > 0)
+      {
         model = Integer.parseInt(subSplit[0]);
+      }
       else
+      {
         model = Integer.parseInt(split[0].substring(1));
+      }
 
       if (subSplit.length > 1)
+      {
         submodel = Integer.parseInt(subSplit[1]);
+      }
     } catch (Exception e)
     {
       // ignore
@@ -258,7 +283,9 @@ public abstract class ChimUtils
   {
     if (atom.equals("C") || atom.equals("CA") || atom.equals("N")
             || atom.equals("O") || atom.equals("H"))
+    {
       return true;
+    }
     return false;
   }
 
@@ -449,7 +476,9 @@ public abstract class ChimUtils
       }
       else
       {
+        // length > 1, so we probably have a file name with "." in it
         logger.info("Could not parse model identifier: " + modelID);
+        resKeyParts[0] = modelID;
       }
     }
   }
@@ -547,8 +576,7 @@ public abstract class ChimUtils
       // }
 
       // System.out.println("model = " + model + " chain = " + chain +
-      // " residue = " +
-      // residue);
+      // " residue = " + residue);
       if (model != null)
       {
         List<ChimeraModel> models = chimeraManager.getChimeraModels(model,
@@ -594,13 +622,19 @@ public abstract class ChimUtils
       }
 
       if (chimeraResidue != null)
+      {
         return chimeraResidue;
+      }
 
       if (chimeraChain != null)
+      {
         return chimeraChain;
+      }
 
       if (chimeraModel != null)
+      {
         return chimeraModel;
+      }
 
     } catch (Exception ex)
     {
@@ -709,13 +743,19 @@ public abstract class ChimUtils
       }
 
       if (chimeraResidue != null)
+      {
         return chimeraResidue;
+      }
 
       if (chimeraChain != null)
+      {
         return chimeraChain;
+      }
 
       if (chimeraModel != null)
+      {
         return chimeraModel;
+      }
 
     } catch (Exception ex)
     {
@@ -736,7 +776,9 @@ public abstract class ChimUtils
   public static String findStructures(String residueList)
   {
     if (residueList == null)
+    {
       return null;
+    }
     String[] residues = residueList.split(",");
     Map<String, String> structureNameMap = new HashMap<String, String>();
     for (int i = 0; i < residues.length; i++)
@@ -748,15 +790,21 @@ public abstract class ChimUtils
       }
     }
     if (structureNameMap.isEmpty())
+    {
       return null;
+    }
 
     String structure = null;
     for (String struct : structureNameMap.keySet())
     {
       if (structure == null)
+      {
         structure = new String();
+      }
       else
+      {
         structure = structure.concat(",");
+      }
       structure = structure.concat(struct);
     }
     return structure;
@@ -798,7 +846,9 @@ public abstract class ChimUtils
         {
           resRange = resRange.concat("-");
           if (chain != null && range[res].indexOf('.') == -1)
+          {
             range[res] = range[res].concat("." + chain);
+          }
         }
 
         if (res == 0 && range.length >= 2 && range[res].indexOf('.') > 0)
@@ -887,8 +937,10 @@ public abstract class ChimUtils
   public static String toFullName(String aaType)
   {
     if (!aaNames.containsKey(aaType))
+    {
       return aaType;
-    String[] ids = ((String) aaNames.get(aaType)).split(" ");
+    }
+    String[] ids = aaNames.get(aaType).split(" ");
     return ids[2].replace('_', ' ');
   }
 
@@ -902,8 +954,10 @@ public abstract class ChimUtils
   public static String toSingleLetter(String aaType)
   {
     if (!aaNames.containsKey(aaType))
+    {
       return aaType;
-    String[] ids = ((String) aaNames.get(aaType)).split(" ");
+    }
+    String[] ids = aaNames.get(aaType).split(" ");
     return ids[0];
   }
 
@@ -917,8 +971,10 @@ public abstract class ChimUtils
   public static String toThreeLetter(String aaType)
   {
     if (!aaNames.containsKey(aaType))
+    {
       return aaType;
-    String[] ids = ((String) aaNames.get(aaType)).split(" ");
+    }
+    String[] ids = aaNames.get(aaType).split(" ");
     return ids[1];
   }
 
@@ -932,10 +988,14 @@ public abstract class ChimUtils
   public static String toSMILES(String aaType)
   {
     if (!aaNames.containsKey(aaType))
+    {
       return null;
-    String[] ids = ((String) aaNames.get(aaType)).split(" ");
+    }
+    String[] ids = aaNames.get(aaType).split(" ");
     if (ids.length < 4)
+    {
       return null;
+    }
     return ids[3];
   }