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 String ftsFrameTitle = defaultFTSFrameTitle;
+
+ private static Map<String, Integer> tempUserPrefs = new HashMap<String, Integer>();
+
+ private static final String PDB_FTS_CACHE_KEY = "CACHE.PDB_FTS";
public PDBFTSPanel(SequenceFetcher seqFetcher)
{
+ super();
pageLimit = PDBFTSRestClient.getInstance().getDefaultResponsePageSize();
this.seqFetcher = seqFetcher;
- this.progressIdicator = (seqFetcher == null) ? null : seqFetcher
+ this.progressIndicator = (seqFetcher == null) ? null : seqFetcher
.getProgressIndicator();
}
-
@Override
public void searchAction(boolean isFreshSearch)
{
+ mainFrame.requestFocusInWindow();
if (isFreshSearch)
{
offSet = 0;
@Override
public void run()
{
- ftsFrameTitle = defaultFTSFrameTitle;
reset();
boolean allowEmptySequence = false;
if (getTypedText().length() > 0)
String searchTarget = ((FTSDataColumnI) cmb_searchTarget
.getSelectedItem()).getCode();
wantedFields = PDBFTSRestClient.getInstance()
- .getAllDefaulDisplayedDataColumns();
- String searchTerm = decodeSearchTerm(txt_search.getText(),
+ .getAllDefaultDisplayedFTSDataColumns();
+ String searchTerm = decodeSearchTerm(getTypedText(),
searchTarget);
FTSRestRequest request = new FTSRestRequest();
{
getResultTable().setModel(
FTSRestResponse.getTableModel(request,
- resultList.getSearchSummary()));
+ resultList.getSearchSummary()));
FTSRestResponse.configureTableColumn(getResultTable(),
- wantedFields);
+ wantedFields, tempUserPrefs);
getResultTable().setVisible(true);
}
String result = (resultSetCount > 0) ? MessageManager
.getString("label.results") : MessageManager
.getString("label.result");
-
+
if (isPaginationEnabled() && resultSetCount > 0)
{
- updateSearchFrameTitle(defaultFTSFrameTitle + " - " + result
+ updateSearchFrameTitle(defaultFTSFrameTitle
+ + " - "
+ + result
+ " "
+ totalNumberformatter.format((Number) (offSet + 1))
+ " to "
.format((Number) (offSet + resultSetCount))
+ " of "
+ totalNumberformatter
- .format((Number) totalResultSetCount)
- + " " + " (" + (endTime - startTime) + " milli secs)");
+ .format((Number) totalResultSetCount) + " "
+ + " (" + (endTime - startTime) + " milli secs)");
}
else
{
+ resultSetCount + " " + result + " ("
+ (endTime - startTime) + " milli secs)");
}
-
+
setSearchInProgress(false);
refreshPaginatorState();
updateSummaryTableSelections();
}
+ txt_search.updateCache();
}
}.start();
}
try
{
primaryKeyColIndex = getFTSRestClient().getPrimaryKeyColumIndex(
- wantedFields,
- false);
+ wantedFields, false);
} catch (Exception e)
{
e.printStackTrace();
}
int[] selectedRows = getResultTable().getSelectedRows();
- String searchTerm = txt_search.getText();
+ String searchTerm = getTypedText();
for (int summaryRow : selectedRows)
{
String idStr = getResultTable().getValueAt(summaryRow,
- primaryKeyColIndex)
- .toString();
+ primaryKeyColIndex).toString();
selectedIdsSet.add(getPDBIdwithSpecifiedChain(idStr, searchTerm));
}
delayAndEnableActionButtons();
}
-
public static String getPDBIdwithSpecifiedChain(String pdbId,
String searchTerm)
{
@Override
public String getFTSFrameTitle()
{
- return ftsFrameTitle;
+ return defaultFTSFrameTitle;
}
@Override
return true;
}
+ @Override
+ public Map<String, Integer> getTempUserPrefs()
+ {
+ return tempUserPrefs;
+ }
+
+
+ @Override
+ public String getCacheKey()
+ {
+ return PDB_FTS_CACHE_KEY;
+ }
+
+
}