1 package jalview.ws.intermine;
3 import jalview.ws.HttpClientUtils;
5 import java.io.IOException;
7 import javax.ws.rs.core.MultivaluedMap;
9 import org.apache.http.client.ClientProtocolException;
11 import com.sun.jersey.api.client.Client;
13 public class IntermineFetchClient
16 private static final Client client = Client.create();
18 public static enum IntermineDB
20 YeastMine("Yeast Mine", "http://yeastmine.yeastgenome.org/yeastmine"), FlyMine(
21 "Fly Mine", "http://www.flymine.org/query"), FlyMine_Beta(
23 "http://beta.flymine.org/beta"), MouseMine("Mouse Mine",
24 "http://www.mousemine.org/mousemine"), modMine(
26 "http://intermine.modencode.org/modminetest"), RatMine(
27 "Rat Mine", "http://ratmine.mcw.edu/ratmine");
29 private final String name;
30 private final String Url;
32 IntermineDB(String name, String Url)
38 public String getName()
43 public String getURL()
49 public static enum IntermineMethod
51 GET_VERSION("/service/version"), GET_RELEASE("/service/version/release"), GET_FASTA_LIST(
52 "/service/list/results/fasta"), GET_FASTA_QUERY(
53 "/query/results/fasta");
55 private final String target;
57 IntermineMethod(String target)
62 public String getTarget()
69 public static String[] getSupportedDBs()
71 String[] supportedDbs = new String[IntermineDB.values().length];
73 for (IntermineDB db : IntermineDB.values())
75 supportedDbs[count++] = db.getName();
81 public static String fetchData(IntermineDB Database,
82 IntermineMethod method, MultivaluedMap<String, String> params)
88 response = client.resource(Database.getURL() + method.getTarget())
95 response = client.resource(Database.getURL() + method.getTarget())
102 public static String fetchData(String url)
103 throws ClientProtocolException, IOException
106 return HttpClientUtils.doHttpUrlGet(url);// client.resource(url).get(String.class);