* If the selected source is Uniprot or PDB, a free text search panel is opened
* instead to perform the search and selection.
*/
-@SuppressWarnings("serial")
public class SequenceFetcher extends JPanel implements Runnable
{
+ private static jalview.ws.SequenceFetcher sfetch = null;
JLabel exampleAccession;
volatile boolean _isConstructing = false;
/**
+ * Returns the shared instance of the SequenceFetcher client
+ *
+ * @return
+ */
+ public static jalview.ws.SequenceFetcher getSequenceFetcherSingleton()
+ {
+ if (sfetch == null)
+ {
+ sfetch = new jalview.ws.SequenceFetcher();
+ }
+ return sfetch;
+ }
+
+ /**
* Constructor given a client to receive any status or progress messages
* (currently either the Desktop, or an AlignFrame panel)
*
final String selectedDb, final String queryString)
{
this.progressIndicator = guiIndic;
-
+ getSequenceFetcherSingleton();
this.guiWindow = progressIndicator;
if (progressIndicator instanceof AlignFrame)
database = new JComboBox<>();
database.setFont(JvSwingUtils.getLabelFont());
database.setPrototypeDisplayValue("ENSEMBLGENOMES ");
- String[] sources = jalview.ws.SequenceFetcher.getInstance()
- .getSupportedDb();
+ String[] sources = new jalview.ws.SequenceFetcher().getSupportedDb();
Arrays.sort(sources, String.CASE_INSENSITIVE_ORDER);
database.addItem(MessageManager.getString("action.select_ddbb"));
for (String source : sources)
{
StringBuilder sb = new StringBuilder();
HashSet<String> hs = new HashSet<>();
- for (DbSourceProxy dbs : jalview.ws.SequenceFetcher.getInstance()
- .getSourceProxy(db))
+ for (DbSourceProxy dbs : sfetch.getSourceProxy(db))
{
String tq = dbs.getTestQuery();
if (hs.add(tq)) // not a duplicate source
List<String> presultTitle = new ArrayList<>();
List<AlignmentI> presult = new ArrayList<>();
List<AlignmentI> aresult = new ArrayList<>();
- List<DbSourceProxy> sources = jalview.ws.SequenceFetcher.getInstance()
+ List<DbSourceProxy> sources = sfetch
.getSourceProxy((String) database.getSelectedItem());
Iterator<DbSourceProxy> proxies = sources.iterator();
String[] qries = textArea.getText().trim().split(";");
{
af.getViewport().applyFeaturesStyle(preferredFeatureColours);
}
- if (Cache.getDefault(Preferences.HIDE_INTRONS, true))
+ if (Cache.getDefault("HIDE_INTRONS", true))
{
af.hideFeatureColumns(SequenceOntologyI.EXON, false);
}
try
{
- af.setMaximum(
- Cache.getDefault(Preferences.SHOW_FULLSCREEN, false));
+ af.setMaximum(Cache.getDefault("SHOW_FULLSCREEN", false));
} catch (Exception ex)
{
}
@Override
public void run()
{
- JvOptionPane.showInternalMessageDialog(Desktop.getDesktopPane(), error,
+ JvOptionPane.showInternalMessageDialog(Desktop.desktop, error,
MessageManager.getString("label.error_retrieving_data"),
JvOptionPane.WARNING_MESSAGE);
}