*/
package jalview.ext.ensembl;
+import jalview.bin.Jalview;
+import jalview.io.DataSourceType;
+import jalview.io.FileParse;
import jalview.util.StringUtils;
import java.io.BufferedReader;
* @see https://github.com/Ensembl/ensembl-rest/wiki/Change-log
* @see http://rest.ensembl.org/info/rest?content-type=application/json
*/
- private static final String LATEST_ENSEMBLGENOMES_REST_VERSION = "6.0";
+ private static final String LATEST_ENSEMBLGENOMES_REST_VERSION = "7.0";
- private static final String LATEST_ENSEMBL_REST_VERSION = "6.1";
+ private static final String LATEST_ENSEMBL_REST_VERSION = "7.0";
private static final String REST_CHANGE_LOG = "https://github.com/Ensembl/ensembl-rest/wiki/Change-log";
- private static Map<String, EnsemblInfo> domainData = new HashMap<>();
+ private static Map<String, EnsemblData> domainData;
private final static long AVAILABILITY_RETEST_INTERVAL = 10000L; // 10 seconds
static
{
+ domainData = new HashMap<>();
domainData.put(DEFAULT_ENSEMBL_BASEURL,
- new EnsemblInfo(DEFAULT_ENSEMBL_BASEURL, LATEST_ENSEMBL_REST_VERSION));
- domainData.put(DEFAULT_ENSEMBL_GENOMES_BASEURL,
- new EnsemblInfo(
+ new EnsemblData(DEFAULT_ENSEMBL_BASEURL, LATEST_ENSEMBL_REST_VERSION));
+ domainData.put(DEFAULT_ENSEMBL_GENOMES_BASEURL, new EnsemblData(
DEFAULT_ENSEMBL_GENOMES_BASEURL, LATEST_ENSEMBLGENOMES_REST_VERSION));
}
if (!domainData.containsKey(ensemblDomain))
{
domainData.put(ensemblDomain,
- new EnsemblInfo(ensemblDomain, LATEST_ENSEMBL_REST_VERSION));
+ new EnsemblData(ensemblDomain, LATEST_ENSEMBL_REST_VERSION));
}
if (!domainData.containsKey(ensemblGenomesDomain))
{
- domainData.put(ensemblGenomesDomain, new EnsemblInfo(
+ domainData.put(ensemblGenomesDomain, new EnsemblData(
ensemblGenomesDomain, LATEST_ENSEMBLGENOMES_REST_VERSION));
}
}
}
/**
- * Sends the HTTP request and gets the response as a reader
+ * Sends the HTTP request and gets the response as a reader. Returns null if
+ * the HTTP response code was not 200.
*
* @param url
* @param ids
* in milliseconds
* @return
* @throws IOException
- * if response code was not 200, or other I/O error
*/
protected BufferedReader getHttpResponse(URL url, List<String> ids,
int readTimeout) throws IOException
connection.setRequestProperty("Content-Type", getRequestMimeType());
connection.setRequestProperty("Accept", getResponseMimeType());
- connection.setUseCaches(false);
connection.setDoInput(true);
connection.setDoOutput(multipleIds);
- connection.setConnectTimeout(CONNECT_TIMEOUT_MS);
- connection.setReadTimeout(readTimeout);
+ if (!Jalview.isJS())
+ {
+ connection.setUseCaches(false);
+ connection.setConnectTimeout(CONNECT_TIMEOUT_MS);
+ connection.setReadTimeout(readTimeout);
+ }
if (multipleIds)
{
*/
protected boolean isEnsemblAvailable()
{
- EnsemblInfo info = domainData.get(getDomain());
+ EnsemblData info = domainData.get(getDomain());
long now = System.currentTimeMillis();
*/
private void checkEnsemblRestVersion()
{
- EnsemblInfo info = domainData.get(getDomain());
+ EnsemblData info = domainData.get(getDomain());
JSONParser jp = new JSONParser();
URL url = null;