JAL-1668 added PDBDocFieldPreference for configuring rest response summary fields
[jalview.git] / src / jalview / ws / uimodel / PDBRestResponse.java
index 5a1f53d..889a324 100644 (file)
@@ -24,7 +24,6 @@ package jalview.ws.uimodel;
 import jalview.ws.dbsources.PDBRestClient.PDBDocField;
 
 import java.util.Collection;
-import java.util.List;
 import java.util.Objects;
 
 import javax.swing.DefaultListModel;
@@ -149,8 +148,8 @@ public class PDBRestResponse
 
     public PDBResponseSummary(JSONObject doc, PDBRestRequest request)
     {
-      StringBuilder summaryBuilder = new StringBuilder();
-      List<PDBDocField> diplayFields = request.getWantedFields();
+       StringBuilder summaryBuilder = new StringBuilder();
+      Collection<PDBDocField> diplayFields = request.getWantedFields();
       String associatedSeq = request.getAssociatedSequence();
       int colCounter = 0;
       summaryData = new String[(associatedSeq != null) ? diplayFields
@@ -165,54 +164,22 @@ public class PDBRestResponse
 
       for (PDBDocField field : diplayFields)
       {
-        if (field.equals(PDBDocField.MOLECULE_TYPE)
-                && doc.get(PDBDocField.MOLECULE_TYPE.getCode()) != null)
-        {
-          String moleculeType = doc
-                  .get(PDBDocField.MOLECULE_TYPE.getCode()).toString();
-          if (moleculeType.equalsIgnoreCase("protein"))
-          {
-            summaryBuilder.append("<img src=\""
-                    + getClass().getResource("/images/protein.png")
-                            .toString() + "\">");
-          }
-          if (moleculeType.equalsIgnoreCase("dna"))
-          {
-            summaryBuilder.append("<img src=\""
-                    + getClass().getResource("/images/dna.png").toString()
-                    + "\">");
-          }
-          if (moleculeType.equalsIgnoreCase("rna"))
-          {
-            summaryBuilder.append("<img src=\""
-                    + getClass().getResource("/images/dna.png").toString()
-                    + "\">");
-          }
-          if (moleculeType.equalsIgnoreCase("sugar"))
-          {
-            summaryBuilder.append("<img src=\""
-                    + getClass().getResource("/images/sugar.png")
-                            .toString() + "\">");
-          }
-          summaryData[colCounter++] = moleculeType;
-        }
-        else if (field.equals(PDBDocField.PDB_ID)
+        if (field.equals(PDBDocField.PDB_ID)
                 && doc.get(PDBDocField.PDB_ID.getCode()) != null)
         {
           this.pdbId = doc.get(PDBDocField.PDB_ID.getCode()).toString();
-          summaryBuilder.append(this.pdbId).append(" | ");
           summaryData[colCounter++] = this.pdbId;
         }
-        else if (doc.get(field.getCode()) != null)
+        else
         {
-          summaryBuilder.append(field.getName()).append(": ")
-                  .append(doc.get(field.getCode())).append(" | ");
-          summaryData[colCounter++] = doc.get(field.getCode()).toString();
+          String value = (doc.get(field.getCode()) == null) ? "" : doc.get(
+                  field.getCode()).toString();
+           summaryBuilder.append(field.getName()).append(": ").append(value)
+                  .append(" | ");
+          summaryData[colCounter++] = value;
         }
       }
-      int endIndex = summaryBuilder.lastIndexOf(" | ");
-      String fSummary = summaryBuilder.toString().substring(0, endIndex);
-      this.concatenatedSummaryData = fSummary.trim();
+      this.concatenatedSummaryData = summaryBuilder.toString();
       summaryBuilder = null;
     }