X-Git-Url: http://source.jalview.org/gitweb/?p=jalview.git;a=blobdiff_plain;f=src%2Fjalview%2Ffts%2Fservice%2Fpdb%2FPDBFTSPanel.java;h=c9d7676542d224f35897739f799a0b9d50eb75fb;hp=b944b9b7cf2add3be0b530007d90d397456c55ab;hb=1114062d7c3034db3387f46a860c0e334206ce49;hpb=a38b3fde2cbfbeebabb57de545c76cee63c9eb3d diff --git a/src/jalview/fts/service/pdb/PDBFTSPanel.java b/src/jalview/fts/service/pdb/PDBFTSPanel.java index b944b9b..c9d7676 100644 --- a/src/jalview/fts/service/pdb/PDBFTSPanel.java +++ b/src/jalview/fts/service/pdb/PDBFTSPanel.java @@ -21,36 +21,41 @@ package jalview.fts.service.pdb; +import java.util.HashMap; +import java.util.HashSet; +import java.util.Map; + +import javax.help.HelpSetException; + import jalview.fts.api.FTSDataColumnI; import jalview.fts.api.FTSRestClientI; import jalview.fts.core.FTSRestRequest; import jalview.fts.core.FTSRestResponse; import jalview.fts.core.GFTSPanel; +import jalview.gui.Help; +import jalview.gui.Help.HelpId; import jalview.gui.SequenceFetcher; import jalview.util.MessageManager; -import java.util.HashMap; -import java.util.HashSet; -import java.util.Map; - @SuppressWarnings("serial") public class PDBFTSPanel extends GFTSPanel { private static String defaultFTSFrameTitle = MessageManager .getString("label.pdb_sequence_fetcher"); - - private static Map tempUserPrefs = new HashMap(); + private static Map tempUserPrefs = new HashMap<>(); private static final String PDB_FTS_CACHE_KEY = "CACHE.PDB_FTS"; - public PDBFTSPanel(SequenceFetcher seqFetcher) + private static final String PDB_AUTOSEARCH = "FTS.PDB.AUTOSEARCH"; + + public PDBFTSPanel(SequenceFetcher fetcher) { - super(); + super(fetcher); pageLimit = PDBFTSRestClient.getInstance().getDefaultResponsePageSize(); - this.seqFetcher = seqFetcher; - this.progressIndicator = (seqFetcher == null) ? null : seqFetcher - .getProgressIndicator(); + this.seqFetcher = fetcher; + this.progressIndicator = (fetcher == null) ? null + : fetcher.getProgressIndicator(); } @Override @@ -87,24 +92,24 @@ public class PDBFTSPanel extends GFTSPanel request.setSearchTerm(searchTerm + ")"); request.setOffSet(offSet); request.setWantedFields(wantedFields); - FTSRestClientI pdbRestCleint = PDBFTSRestClient.getInstance(); + FTSRestClientI pdbRestClient = PDBFTSRestClient.getInstance(); FTSRestResponse resultList; try { - resultList = pdbRestCleint.executeRequest(request); + resultList = pdbRestClient.executeRequest(request); } catch (Exception e) { setErrorMessage(e.getMessage()); checkForErrors(); + setSearchInProgress(false); return; } if (resultList.getSearchSummary() != null && resultList.getSearchSummary().size() > 0) { - getResultTable().setModel( - FTSRestResponse.getTableModel(request, - resultList.getSearchSummary())); + getResultTable().setModel(FTSRestResponse.getTableModel(request, + resultList.getSearchSummary())); FTSRestResponse.configureTableColumn(getResultTable(), wantedFields, tempUserPrefs); getResultTable().setVisible(true); @@ -114,24 +119,21 @@ public class PDBFTSPanel extends GFTSPanel totalResultSetCount = resultList.getNumberOfItemsFound(); resultSetCount = resultList.getSearchSummary() == null ? 0 : resultList.getSearchSummary().size(); - String result = (resultSetCount > 0) ? MessageManager - .getString("label.results") : MessageManager - .getString("label.result"); + String result = (resultSetCount > 0) + ? MessageManager.getString("label.results") + : MessageManager.getString("label.result"); if (isPaginationEnabled() && resultSetCount > 0) { - updateSearchFrameTitle(defaultFTSFrameTitle - + " - " - + result - + " " - + totalNumberformatter.format((Number) (offSet + 1)) - + " to " - + totalNumberformatter - .format((Number) (offSet + resultSetCount)) - + " of " - + totalNumberformatter - .format((Number) totalResultSetCount) + " " - + " (" + (endTime - startTime) + " milli secs)"); + String f1 = totalNumberformatter + .format(Integer.valueOf(offSet + 1)); + String f2 = totalNumberformatter + .format(Integer.valueOf(offSet + resultSetCount)); + String f3 = totalNumberformatter + .format(Integer.valueOf(totalResultSetCount)); + updateSearchFrameTitle(defaultFTSFrameTitle + " - " + result + + " " + f1 + " to " + f2 + " of " + f3 + " " + " (" + + (endTime - startTime) + " milli secs)"); } else { @@ -174,8 +176,8 @@ public class PDBFTSPanel extends GFTSPanel foundSearchTerms = foundSearchTermsBuilder.toString(); if (foundSearchTerms.contains(" OR ")) { - foundSearchTerms = foundSearchTerms.substring( - targetField.length() + 1, endIndex); + foundSearchTerms = foundSearchTerms + .substring(targetField.length() + 1, endIndex); } } else if (enteredText.contains(":")) @@ -191,12 +193,12 @@ public class PDBFTSPanel extends GFTSPanel // mainFrame.dispose(); disableActionButtons(); StringBuilder selectedIds = new StringBuilder(); - HashSet selectedIdsSet = new HashSet(); + HashSet selectedIdsSet = new HashSet<>(); int primaryKeyColIndex = 0; try { - primaryKeyColIndex = getFTSRestClient().getPrimaryKeyColumIndex( - wantedFields, false); + primaryKeyColIndex = getFTSRestClient() + .getPrimaryKeyColumIndex(wantedFields, false); } catch (Exception e) { e.printStackTrace(); @@ -205,8 +207,8 @@ public class PDBFTSPanel extends GFTSPanel String searchTerm = getTypedText(); for (int summaryRow : selectedRows) { - String idStr = getResultTable().getValueAt(summaryRow, - primaryKeyColIndex).toString(); + String idStr = getResultTable() + .getValueAt(summaryRow, primaryKeyColIndex).toString(); selectedIdsSet.add(getPDBIdwithSpecifiedChain(idStr, searchTerm)); } @@ -221,8 +223,7 @@ public class PDBFTSPanel extends GFTSPanel } String ids = selectedIds.toString(); - // System.out.println(">>>>>>>>>>>>>>>> selected Ids: " + ids); - seqFetcher.getTextArea().setText(ids); + seqFetcher.setQuery(ids); Thread worker = new Thread(seqFetcher); worker.start(); delayAndEnableActionButtons(); @@ -278,12 +279,32 @@ public class PDBFTSPanel extends GFTSPanel return tempUserPrefs; } - @Override public String getCacheKey() { return PDB_FTS_CACHE_KEY; } + @Override + public String getAutosearchPreference() + { + return PDB_AUTOSEARCH; + } -} + @Override + protected void showHelp() + { + try + { + Help.showHelpWindow(HelpId.PdbFts); + } catch (HelpSetException e1) + { + e1.printStackTrace(); + } + } + + public String getDbName() + { + return "PDB"; + } +} \ No newline at end of file