package jalview.fts.service.uniprot;
-import jalview.bin.ApplicationSingletonProvider;
-import jalview.bin.ApplicationSingletonProvider.ApplicationSingletonI;
import jalview.bin.Cache;
import jalview.fts.api.FTSData;
import jalview.fts.api.FTSDataColumnI;
import jalview.fts.core.FTSRestClient;
import jalview.fts.core.FTSRestRequest;
import jalview.fts.core.FTSRestResponse;
-import jalview.gui.Preferences;
import jalview.util.MessageManager;
import jalview.util.Platform;
import com.sun.jersey.api.client.config.DefaultClientConfig;
public class UniProtFTSRestClient extends FTSRestClient
- implements ApplicationSingletonI
{
+ private static final String DEFAULT_UNIPROT_DOMAIN = "https://www.uniprot.org";
- public static FTSRestClientI getInstance()
- {
- return (FTSRestClientI) ApplicationSingletonProvider
- .getInstance(UniProtFTSRestClient.class);
- }
-
- private UniProtFTSRestClient()
+ static
{
- // singleton -- use getInstance()
-
- uniprotSearchEndpoint = Cache.getDefault(Preferences.UNIPROT_DOMAIN,
- DEFAULT_UNIPROT_DOMAIN) + "/uniprot/";
+ Platform.addJ2SDirectDatabaseCall(DEFAULT_UNIPROT_DOMAIN);
}
- private static final String DEFAULT_UNIPROT_DOMAIN = "https://www.uniprot.org";
+ private static FTSRestClientI instance = null;
public final String uniprotSearchEndpoint;
- static
+ public UniProtFTSRestClient()
{
- Platform.addJ2SDirectDatabaseCall(DEFAULT_UNIPROT_DOMAIN);
+ super();
+ uniprotSearchEndpoint = Cache.getDefault("UNIPROT_DOMAIN",
+ DEFAULT_UNIPROT_DOMAIN) + "/uniprot/";
}
+
@SuppressWarnings("unchecked")
@Override
public FTSRestResponse executeRequest(FTSRestRequest uniprotRestRequest)
};
}
+ public static FTSRestClientI getInstance()
+ {
+ if (instance == null)
+ {
+ instance = new UniProtFTSRestClient();
+ }
+ return instance;
+ }
+
@Override
public String getColumnDataConfigFileName()
{