1 package jalview.fts.service.threedbeacons;
4 import java.util.Objects;
6 import jalview.fts.api.FTSData;
9 * TDB result bean - holds filtered fields for GUI and essential metadata fields
15 public class TDB_FTSData implements FTSData
19 Object[] summaryRowData;
22 * fields in the JSON object
24 public static String Uniprot_Id = "id";
26 public static String Uniprot_Start = "uniprot_start";
28 public static String Uniprot_End = "uniprot_end";
30 public static String Provider = "provider";
32 public static String Model_id = "model_identifier";
34 public static String Model_Category = "model_category";
36 public static String Model_Type = "model_type";
38 public static String Model_Title = "model_title";
40 public static String Resolution = "resolution";
42 public static String Confidence = "confidence_avg_local_score";
44 public static String Confidence_Score_Type = "confidence_type";
46 public static String Confidence_Score_Version = "confidence_version";
48 public static String Coverage = "coverage";
50 public static String Sequence_Identity = "sequence_identity";
52 public static String Created_Date = "created";
54 public static String UniProt_Accession = "uniprot_accession";
56 public static String Url = "model_url";
58 public static String Page_URL = "model_page_url";
60 public static String Ensemble_Sample_Url = "ensembl_sample_url";
63 * original response from server
65 Map<String, Object> tdb_entry;
67 public TDB_FTSData(String primaryKey,
68 Map<String, Object> tdbJsonStructure, Object[] summaryData)
70 this.primaryKey = primaryKey;
71 tdb_entry = tdbJsonStructure;
72 this.summaryRowData = summaryData;
75 public Object getField(String key)
77 return tdb_entry.get(key);
81 public Object[] getSummaryData()
83 return summaryRowData;
87 public Object getPrimaryKey()
93 * Returns a string representation of this object;
96 public String toString()
98 StringBuilder summaryFieldValues = new StringBuilder();
99 for (Object summaryField : summaryRowData)
102 .append(summaryField == null ? " " : summaryField.toString())
105 return summaryFieldValues.toString();
109 * Returns hash code value for this object
112 public int hashCode()
114 return Objects.hash(primaryKey, this.toString());
118 public boolean equals(Object that)
120 return this.toString().equals(that.toString());
123 public String getProvider()
125 return (String) getField(Provider);
128 public String getModelViewUrl()
130 return (String) getField(Page_URL);
133 public String getModelId()
135 return (String) getField(Model_id);