JAL-3210 Barebones gradle/buildship/eclipse. See README
[jalview.git] / src / jalview / ws / sifts / SiftsClient.java
index 3899f04..d065666 100644 (file)
@@ -71,8 +71,8 @@ import javax.xml.bind.Unmarshaller;
 import javax.xml.stream.XMLInputFactory;
 import javax.xml.stream.XMLStreamReader;
 
-import MCview.Atom;
-import MCview.PDBChain;
+import mc_view.Atom;
+import mc_view.PDBChain;
 
 public class SiftsClient implements SiftsClientI
 {
@@ -676,11 +676,7 @@ public class SiftsClient implements SiftsClientI
           // if the sequence has a primary reference to the PDB, then we are
           // dealing with a sequence extracted directly from the PDB. In that
           // case, numbering is PDBe - non-observed residues
-          currSeqIndex = pdbeIndex;
-        }
-        if (currSeqIndex == UNASSIGNED)
-        {
-          continue;
+          currSeqIndex = seq.getStart() - 1 + pdbeIndex;
         }
         if (!isObserved)
         {
@@ -694,6 +690,13 @@ public class SiftsClient implements SiftsClientI
             ++nonObservedShiftIndex;
           }
         }
+        if (currSeqIndex == UNASSIGNED)
+        {
+          // change in logic - unobserved residues with no currSeqIndex
+          // corresponding are still counted in both nonObservedShiftIndex and
+          // pdbeIndex...
+          continue;
+        }
         // if (currSeqIndex >= seq.getStart() && currSeqIndex <= seqlength) //
         // true
                                                                          // numbering
@@ -710,21 +713,18 @@ public class SiftsClient implements SiftsClientI
                   : getLeadingIntegerValue(pdbRefDb.getDbResNum(),
                           UNASSIGNED);
 
-          if (isResidueObserved(residue)
-                  || seqCoordSys == CoordinateSys.UNIPROT)
+          if (isObserved)
           {
             char resCharCode = ResidueProperties
                     .getSingleCharacterCode(ResidueProperties
                             .getCanonicalAminoAcid(residue.getDbResName()));
             resNumMap.put(currSeqIndex, String.valueOf(resCharCode));
+
+            int[] mappingcols = new int[] { Integer.valueOf(resNum),
+                UNASSIGNED, isObserved ? firstPDBResNum : UNASSIGNED };
+
+            mapping.put(currSeqIndex - nonObservedShiftIndex, mappingcols);
           }
-          // TODO: mapping should have SeqCoordSysNum => int[] {PDBeNum,
-          // PDBRESNUM, ATOMNUM }
-          mapping.put(currSeqIndex - nonObservedShiftIndex,
-                  new int[]
-                  { Integer.valueOf(resNum), UNASSIGNED,
-                      isObserved ? firstPDBResNum
-                              : UNASSIGNED });
         }
       }
     }