git://source.jalview.org
/
jalview.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'develop' into feature/JAL-3551Pymol
[jalview.git]
/
src
/
jalview
/
ext
/
ensembl
/
EnsemblMap.java
diff --git
a/src/jalview/ext/ensembl/EnsemblMap.java
b/src/jalview/ext/ensembl/EnsemblMap.java
index
7777bda
..
cfc679c
100644
(file)
--- a/
src/jalview/ext/ensembl/EnsemblMap.java
+++ b/
src/jalview/ext/ensembl/EnsemblMap.java
@@
-27,7
+27,6
@@
import jalview.datamodel.GeneLocus;
import jalview.datamodel.Mapping;
import jalview.util.MapList;
import jalview.datamodel.Mapping;
import jalview.util.MapList;
-import java.io.BufferedReader;
import java.io.IOException;
import java.net.MalformedURLException;
import java.net.URL;
import java.io.IOException;
import java.net.MalformedURLException;
import java.net.URL;
@@
-35,10
+34,8
@@
import java.util.ArrayList;
import java.util.Collections;
import java.util.Iterator;
import java.util.List;
import java.util.Collections;
import java.util.Iterator;
import java.util.List;
+import java.util.Map;
-import org.json.simple.JSONArray;
-import org.json.simple.JSONObject;
-import org.json.simple.parser.JSONParser;
import org.json.simple.parser.ParseException;
/**
import org.json.simple.parser.ParseException;
/**
@@
-153,30
+150,15
@@
public class EnsemblMap extends EnsemblRestClient
String fromRef, String toRef, int[] queryRange)
{
URL url = null;
String fromRef, String toRef, int[] queryRange)
{
URL url = null;
- BufferedReader br = null;
-
try
{
url = getAssemblyMapUrl(species, chromosome, fromRef, toRef, queryRange[0],
queryRange[1]);
try
{
url = getAssemblyMapUrl(species, chromosome, fromRef, toRef, queryRange[0],
queryRange[1]);
- br = getHttpResponse(url, null);
- return (parseAssemblyMappingResponse(br));
+ return (parseAssemblyMappingResponse(url));
} catch (Throwable t)
{
System.out.println("Error calling " + url + ": " + t.getMessage());
return null;
} catch (Throwable t)
{
System.out.println("Error calling " + url + ": " + t.getMessage());
return null;
- } finally
- {
- if (br != null)
- {
- try
- {
- br.close();
- } catch (IOException e)
- {
- // ignore
- }
- }
}
}
}
}
@@
-195,22
+177,23
@@
public class EnsemblMap extends EnsemblRestClient
* @param br
* @return
*/
* @param br
* @return
*/
- protected int[] parseAssemblyMappingResponse(BufferedReader br)
+ @SuppressWarnings("unchecked")
+ protected int[] parseAssemblyMappingResponse(URL url)
{
int[] result = null;
{
int[] result = null;
- JSONParser jp = new JSONParser();
try
{
try
{
- JSONObject parsed = (JSONObject) jp.parse(br);
- JSONArray mappings = (JSONArray) parsed.get(MAPPINGS);
-
- Iterator rvals = mappings.iterator();
+ Iterator<Object> rvals = (Iterator<Object>) getJSON(url, null, -1, MODE_ITERATOR, MAPPINGS);
+ if (rvals == null)
+ {
+ return null;
+ }
while (rvals.hasNext())
{
// todo check for "mapped"
while (rvals.hasNext())
{
// todo check for "mapped"
- JSONObject val = (JSONObject) rvals.next();
- JSONObject mapped = (JSONObject) val.get(MAPPED);
+ Map<String, Object> val = (Map<String, Object>) rvals.next();
+ Map<String, Object> mapped = (Map<String, Object>) val.get(MAPPED);
int start = Integer.parseInt(mapped.get("start").toString());
int end = Integer.parseInt(mapped.get("end").toString());
String strand = mapped.get("strand").toString();
int start = Integer.parseInt(mapped.get("start").toString());
int end = Integer.parseInt(mapped.get("end").toString());
String strand = mapped.get("strand").toString();
@@
-270,37
+253,19
@@
public class EnsemblMap extends EnsemblRestClient
int end, String cdsOrCdna)
{
URL url = null;
int end, String cdsOrCdna)
{
URL url = null;
- BufferedReader br = null;
-
try
{
String domain = new EnsemblInfo().getDomain(division);
if (domain != null)
{
url = getIdMapUrl(domain, accession, start, end, cdsOrCdna);
try
{
String domain = new EnsemblInfo().getDomain(division);
if (domain != null)
{
url = getIdMapUrl(domain, accession, start, end, cdsOrCdna);
- br = getHttpResponse(url, null);
- if (br != null)
- {
- return (parseIdMappingResponse(br, accession, domain));
- }
+ return (parseIdMappingResponse(url, accession, domain));
}
return null;
} catch (Throwable t)
{
System.out.println("Error calling " + url + ": " + t.getMessage());
return null;
}
return null;
} catch (Throwable t)
{
System.out.println("Error calling " + url + ": " + t.getMessage());
return null;
- } finally
- {
- if (br != null)
- {
- try
- {
- br.close();
- } catch (IOException e)
- {
- // ignore
- }
- }
}
}
}
}
@@
-346,17
+311,18
@@
public class EnsemblMap extends EnsemblRestClient
* @param domain
* @return
*/
* @param domain
* @return
*/
- GeneLociI parseIdMappingResponse(BufferedReader br, String accession,
+ @SuppressWarnings("unchecked")
+GeneLociI parseIdMappingResponse(URL url, String accession,
String domain)
{
String domain)
{
- JSONParser jp = new JSONParser();
try
{
try
{
- JSONObject parsed = (JSONObject) jp.parse(br);
- JSONArray mappings = (JSONArray) parsed.get(MAPPINGS);
-
- Iterator rvals = mappings.iterator();
+ Iterator<Object> rvals = (Iterator<Object>) getJSON(url, null, -1, MODE_ITERATOR, MAPPINGS);
+ if (rvals == null)
+ {
+ return null;
+ }
String assembly = null;
String chromosome = null;
int fromEnd = 0;
String assembly = null;
String chromosome = null;
int fromEnd = 0;
@@
-364,11
+330,11
@@
public class EnsemblMap extends EnsemblRestClient
while (rvals.hasNext())
{
while (rvals.hasNext())
{
- JSONObject val = (JSONObject) rvals.next();
- JSONObject original = (JSONObject) val.get("original");
+ Map<String, Object> val = (Map<String, Object>) rvals.next();
+ Map<String, Object> original = (Map<String, Object>) val.get("original");
fromEnd = Integer.parseInt(original.get("end").toString());
fromEnd = Integer.parseInt(original.get("end").toString());
- JSONObject mapped = (JSONObject) val.get(MAPPED);
+ Map<String, Object> mapped = (Map<String, Object>) val.get(MAPPED);
int start = Integer.parseInt(mapped.get("start").toString());
int end = Integer.parseInt(mapped.get("end").toString());
String ass = mapped.get("assembly_name").toString();
int start = Integer.parseInt(mapped.get("start").toString());
int end = Integer.parseInt(mapped.get("end").toString());
String ass = mapped.get("assembly_name").toString();