2 |
26 Feb 07 |
jari |
1 |
/************************ |
2 |
26 Feb 07 |
jari |
2 |
* |
2 |
26 Feb 07 |
jari |
* Class connLOLA |
2 |
26 Feb 07 |
jari |
4 |
* |
2 |
26 Feb 07 |
jari |
* communicates with LOLA |
2 |
26 Feb 07 |
jari |
* www.lola.gwu.edu/ |
2 |
26 Feb 07 |
jari |
7 |
* |
2 |
26 Feb 07 |
jari |
* Patrick Cahan |
2 |
26 Feb 07 |
jari |
* pcahan1@gwu.edu |
2 |
26 Feb 07 |
jari |
10 |
* |
2 |
26 Feb 07 |
jari |
11 |
*************************/ |
2 |
26 Feb 07 |
jari |
12 |
|
2 |
26 Feb 07 |
jari |
13 |
package org.tigr.microarray.mev.cluster.clusterUtil.submit.lola; |
2 |
26 Feb 07 |
jari |
14 |
|
2 |
26 Feb 07 |
jari |
//package classes; |
2 |
26 Feb 07 |
jari |
16 |
|
2 |
26 Feb 07 |
jari |
//import java.io.File; |
2 |
26 Feb 07 |
jari |
//import java.io.PrintWriter; |
2 |
26 Feb 07 |
jari |
//import java.io.FileOutputStream; |
2 |
26 Feb 07 |
jari |
20 |
import java.io.BufferedReader; |
2 |
26 Feb 07 |
jari |
21 |
import java.io.InputStreamReader; |
2 |
26 Feb 07 |
jari |
22 |
import java.io.OutputStreamWriter; |
2 |
26 Feb 07 |
jari |
23 |
import java.net.URL; |
2 |
26 Feb 07 |
jari |
24 |
import java.net.URLConnection; |
2 |
26 Feb 07 |
jari |
25 |
import java.net.URLEncoder; |
2 |
26 Feb 07 |
jari |
26 |
|
2 |
26 Feb 07 |
jari |
//import java.net.URL; |
2 |
26 Feb 07 |
jari |
//import java.net.URLConnection; |
2 |
26 Feb 07 |
jari |
//import java.net.HttpURLConnection; |
2 |
26 Feb 07 |
jari |
30 |
|
2 |
26 Feb 07 |
jari |
31 |
|
2 |
26 Feb 07 |
jari |
32 |
public class connLOLA { |
2 |
26 Feb 07 |
jari |
33 |
|
2 |
26 Feb 07 |
jari |
//public static final String URL_LOLA = "http://www.lola.gwu.edu/test_lola/"; |
2 |
26 Feb 07 |
jari |
35 |
public static final String URL_LOLA = "http://www.lola.gwu.edu/"; |
2 |
26 Feb 07 |
jari |
36 |
public static final String FILE_LOGIN = "login.php"; |
2 |
26 Feb 07 |
jari |
37 |
public static final String FILE_CONFIRM_LIST = "confirm_list.php"; |
2 |
26 Feb 07 |
jari |
38 |
public static final String FILE_CREATE_LIST = "create_list.php"; |
2 |
26 Feb 07 |
jari |
39 |
public static final String FILE_LOGOUT = "logout.php"; |
2 |
26 Feb 07 |
jari |
40 |
|
2 |
26 Feb 07 |
jari |
41 |
private String email, pw, filename, list_name, list_desc, session; |
2 |
26 Feb 07 |
jari |
42 |
|
2 |
26 Feb 07 |
jari |
43 |
public connLOLA(String email, String pw){ |
2 |
26 Feb 07 |
jari |
44 |
this(email, pw, "", "", "" ); |
2 |
26 Feb 07 |
jari |
45 |
} |
2 |
26 Feb 07 |
jari |
46 |
|
2 |
26 Feb 07 |
jari |
47 |
public connLOLA(String email, String pw, String filename, String list_name, String list_desc){ |
2 |
26 Feb 07 |
jari |
48 |
set_email(email); |
2 |
26 Feb 07 |
jari |
49 |
set_pw(pw); |
2 |
26 Feb 07 |
jari |
50 |
set_filename(filename); |
2 |
26 Feb 07 |
jari |
51 |
set_list_name(list_name); |
2 |
26 Feb 07 |
jari |
52 |
set_list_desc(list_desc); |
2 |
26 Feb 07 |
jari |
53 |
} |
2 |
26 Feb 07 |
jari |
54 |
|
2 |
26 Feb 07 |
jari |
// sets |
2 |
26 Feb 07 |
jari |
56 |
public void set_email( String email ){ |
2 |
26 Feb 07 |
jari |
57 |
this.email = email; |
2 |
26 Feb 07 |
jari |
58 |
} |
2 |
26 Feb 07 |
jari |
59 |
public void set_pw( String pw ){ |
2 |
26 Feb 07 |
jari |
60 |
this.pw = pw; |
2 |
26 Feb 07 |
jari |
61 |
} |
2 |
26 Feb 07 |
jari |
62 |
public void set_filename( String filename ){ |
2 |
26 Feb 07 |
jari |
63 |
this.filename = filename; |
2 |
26 Feb 07 |
jari |
64 |
} |
2 |
26 Feb 07 |
jari |
65 |
public void set_list_name( String list_name ){ |
2 |
26 Feb 07 |
jari |
66 |
this.list_name = list_name; |
2 |
26 Feb 07 |
jari |
67 |
} |
2 |
26 Feb 07 |
jari |
68 |
public void set_list_desc( String list_desc ){ |
2 |
26 Feb 07 |
jari |
69 |
this.list_desc = list_desc; |
2 |
26 Feb 07 |
jari |
70 |
} |
2 |
26 Feb 07 |
jari |
71 |
public void set_session( String session ){ |
2 |
26 Feb 07 |
jari |
72 |
this.session = session; |
2 |
26 Feb 07 |
jari |
73 |
} |
2 |
26 Feb 07 |
jari |
74 |
|
2 |
26 Feb 07 |
jari |
//gets |
2 |
26 Feb 07 |
jari |
76 |
public String get_email(){ |
2 |
26 Feb 07 |
jari |
77 |
return this.email; |
2 |
26 Feb 07 |
jari |
78 |
} |
2 |
26 Feb 07 |
jari |
79 |
public String get_pw( ){ |
2 |
26 Feb 07 |
jari |
80 |
return this.pw; |
2 |
26 Feb 07 |
jari |
81 |
} |
2 |
26 Feb 07 |
jari |
82 |
public String get_filename( ){ |
2 |
26 Feb 07 |
jari |
83 |
return this.filename; |
2 |
26 Feb 07 |
jari |
84 |
} |
2 |
26 Feb 07 |
jari |
85 |
public String get_list_name(){ |
2 |
26 Feb 07 |
jari |
86 |
return this.list_name; |
2 |
26 Feb 07 |
jari |
87 |
} |
2 |
26 Feb 07 |
jari |
88 |
public String get_list_desc(){ |
2 |
26 Feb 07 |
jari |
89 |
return this.list_desc; |
2 |
26 Feb 07 |
jari |
90 |
} |
2 |
26 Feb 07 |
jari |
91 |
public String get_session(){ |
2 |
26 Feb 07 |
jari |
92 |
return this.session; |
2 |
26 Feb 07 |
jari |
93 |
} |
2 |
26 Feb 07 |
jari |
94 |
|
2 |
26 Feb 07 |
jari |
95 |
public String login(){ |
2 |
26 Feb 07 |
jari |
96 |
System.out.println("Logging in to LOLA"); //Display the string. |
2 |
26 Feb 07 |
jari |
97 |
try { |
2 |
26 Feb 07 |
jari |
// Construct data |
2 |
26 Feb 07 |
jari |
99 |
String data = URLEncoder.encode("email", "UTF-8") + "=" + URLEncoder.encode(get_email(), "UTF-8"); |
2 |
26 Feb 07 |
jari |
100 |
data += "&" + URLEncoder.encode("pw", "UTF-8") + "=" + URLEncoder.encode(get_pw(), "UTF-8"); |
2 |
26 Feb 07 |
jari |
101 |
|
2 |
26 Feb 07 |
jari |
// Send data |
2 |
26 Feb 07 |
jari |
103 |
URL url = new URL(URL_LOLA + FILE_LOGIN); |
2 |
26 Feb 07 |
jari |
104 |
|
2 |
26 Feb 07 |
jari |
105 |
URLConnection conn = url.openConnection(); |
2 |
26 Feb 07 |
jari |
106 |
conn.setDoOutput(true); |
2 |
26 Feb 07 |
jari |
107 |
OutputStreamWriter wr = new OutputStreamWriter(conn.getOutputStream()); |
2 |
26 Feb 07 |
jari |
108 |
wr.write(data); |
2 |
26 Feb 07 |
jari |
109 |
wr.flush(); |
2 |
26 Feb 07 |
jari |
110 |
|
2 |
26 Feb 07 |
jari |
// Get the response |
2 |
26 Feb 07 |
jari |
112 |
BufferedReader rd = new BufferedReader(new InputStreamReader(conn.getInputStream())); |
2 |
26 Feb 07 |
jari |
113 |
|
2 |
26 Feb 07 |
jari |
114 |
String line, sessid; |
2 |
26 Feb 07 |
jari |
115 |
|
2 |
26 Feb 07 |
jari |
// first line contains PHPSESSIONID |
2 |
26 Feb 07 |
jari |
117 |
line = rd.readLine(); |
2 |
26 Feb 07 |
jari |
118 |
sessid = get_sessid(line); |
2 |
26 Feb 07 |
jari |
119 |
this.set_session( sessid ); |
2 |
26 Feb 07 |
jari |
// System.out.println("Session id: " + sessid); |
2 |
26 Feb 07 |
jari |
121 |
/* |
2 |
26 Feb 07 |
jari |
while ((line = rd.readLine()) != null) { |
2 |
26 Feb 07 |
jari |
System.out.println(line); |
2 |
26 Feb 07 |
jari |
// Process line... |
2 |
26 Feb 07 |
jari |
125 |
} |
2 |
26 Feb 07 |
jari |
126 |
*/ |
2 |
26 Feb 07 |
jari |
127 |
wr.close(); |
2 |
26 Feb 07 |
jari |
128 |
rd.close(); |
2 |
26 Feb 07 |
jari |
129 |
return sessid; |
2 |
26 Feb 07 |
jari |
130 |
} catch (Exception e) { |
2 |
26 Feb 07 |
jari |
131 |
System.out.println("Login Error"); |
2 |
26 Feb 07 |
jari |
//e.printStackTrace(); |
2 |
26 Feb 07 |
jari |
133 |
return ""; |
2 |
26 Feb 07 |
jari |
134 |
} |
2 |
26 Feb 07 |
jari |
135 |
} |
2 |
26 Feb 07 |
jari |
136 |
|
2 |
26 Feb 07 |
jari |
137 |
public void logout(){ |
2 |
26 Feb 07 |
jari |
138 |
try { |
2 |
26 Feb 07 |
jari |
139 |
|
2 |
26 Feb 07 |
jari |
140 |
String data = URLEncoder.encode("PHPSESSID", "UTF-8") + "=" + URLEncoder.encode(this.get_session(), "UTF-8"); |
2 |
26 Feb 07 |
jari |
//System.out.println("URL: " + URL_LOLA + FILE_LOGOUT); |
2 |
26 Feb 07 |
jari |
// Send data |
2 |
26 Feb 07 |
jari |
143 |
URL url = new URL(URL_LOLA + FILE_LOGOUT); |
2 |
26 Feb 07 |
jari |
144 |
URLConnection conn = url.openConnection(); |
2 |
26 Feb 07 |
jari |
145 |
conn.setDoOutput(true); |
2 |
26 Feb 07 |
jari |
146 |
OutputStreamWriter wr = new OutputStreamWriter(conn.getOutputStream()); |
2 |
26 Feb 07 |
jari |
147 |
wr.write(data); |
2 |
26 Feb 07 |
jari |
148 |
wr.flush(); |
2 |
26 Feb 07 |
jari |
149 |
System.out.println("Logged out"); |
2 |
26 Feb 07 |
jari |
150 |
} |
2 |
26 Feb 07 |
jari |
151 |
catch (Exception e) { |
2 |
26 Feb 07 |
jari |
152 |
} |
2 |
26 Feb 07 |
jari |
153 |
} |
2 |
26 Feb 07 |
jari |
154 |
|
2 |
26 Feb 07 |
jari |
155 |
public boolean submit_list( String gl_name, String gl_desc, /*String species, */String gl_list ){ |
2 |
26 Feb 07 |
jari |
156 |
|
2 |
26 Feb 07 |
jari |
// get species code from string |
2 |
26 Feb 07 |
jari |
158 |
|
2 |
26 Feb 07 |
jari |
// submit list |
2 |
26 Feb 07 |
jari |
160 |
|
2 |
26 Feb 07 |
jari |
161 |
try{ |
2 |
26 Feb 07 |
jari |
162 |
String data = URLEncoder.encode("PHPSESSID", "UTF-8") + "=" + URLEncoder.encode(this.get_session(), "UTF-8"); |
2 |
26 Feb 07 |
jari |
163 |
data += "&" + URLEncoder.encode("gl_name", "UTF-8") + "=" + URLEncoder.encode(gl_name, "UTF-8"); |
2 |
26 Feb 07 |
jari |
164 |
data += "&" + URLEncoder.encode("gl_desc", "UTF-8") + "=" + URLEncoder.encode(gl_desc, "UTF-8"); |
2 |
26 Feb 07 |
jari |
165 |
|
2 |
26 Feb 07 |
jari |
// hard coded -- species id |
2 |
26 Feb 07 |
jari |
// from NCBI taxonomy database |
2 |
26 Feb 07 |
jari |
// rat = 10116 |
2 |
26 Feb 07 |
jari |
// human = 9606 |
2 |
26 Feb 07 |
jari |
// mouse = 10090 |
2 |
26 Feb 07 |
jari |
171 |
data += "&" + URLEncoder.encode("genome_id", "UTF-8") + "=" + URLEncoder.encode("9606", "UTF-8"); |
2 |
26 Feb 07 |
jari |
172 |
|
2 |
26 Feb 07 |
jari |
// hard coded gene id type -- AFFY |
2 |
26 Feb 07 |
jari |
174 |
data += "&" + URLEncoder.encode("gene_id_type", "UTF-8") + "=" + URLEncoder.encode("2", "UTF-8"); |
2 |
26 Feb 07 |
jari |
175 |
data += "&" + URLEncoder.encode("gl_list", "UTF-8") + "=" + URLEncoder.encode(gl_list, "UTF-8"); |
2 |
26 Feb 07 |
jari |
176 |
|
2 |
26 Feb 07 |
jari |
177 |
|
2 |
26 Feb 07 |
jari |
178 |
System.out.println("URL: " + URL_LOLA + FILE_CONFIRM_LIST); |
2 |
26 Feb 07 |
jari |
// Send data |
2 |
26 Feb 07 |
jari |
180 |
URL url = new URL(URL_LOLA + FILE_CONFIRM_LIST); |
2 |
26 Feb 07 |
jari |
181 |
URLConnection conn = url.openConnection(); |
2 |
26 Feb 07 |
jari |
182 |
conn.setDoOutput(true); |
2 |
26 Feb 07 |
jari |
183 |
OutputStreamWriter wr = new OutputStreamWriter(conn.getOutputStream()); |
2 |
26 Feb 07 |
jari |
//System.out.println(data); |
2 |
26 Feb 07 |
jari |
185 |
wr.write(data); |
2 |
26 Feb 07 |
jari |
186 |
wr.flush(); |
2 |
26 Feb 07 |
jari |
//System.out.println("list confirmed?"); |
2 |
26 Feb 07 |
jari |
188 |
|
2 |
26 Feb 07 |
jari |
189 |
|
2 |
26 Feb 07 |
jari |
// Get the response |
2 |
26 Feb 07 |
jari |
191 |
BufferedReader rd = new BufferedReader(new InputStreamReader(conn.getInputStream())); |
2 |
26 Feb 07 |
jari |
192 |
String line; |
2 |
26 Feb 07 |
jari |
193 |
|
2 |
26 Feb 07 |
jari |
//line = rd.readLine(); |
2 |
26 Feb 07 |
jari |
//sessid = get_sessid(line); |
2 |
26 Feb 07 |
jari |
//this.set_session( sessid ); |
2 |
26 Feb 07 |
jari |
//System.out.println("Session id: " + this.get_session()); |
2 |
26 Feb 07 |
jari |
198 |
/* |
2 |
26 Feb 07 |
jari |
while ((line = rd.readLine()) != null) { |
2 |
26 Feb 07 |
jari |
System.out.println(line); |
2 |
26 Feb 07 |
jari |
// Process line... |
2 |
26 Feb 07 |
jari |
202 |
} |
2 |
26 Feb 07 |
jari |
203 |
*/ |
2 |
26 Feb 07 |
jari |
204 |
wr.close(); |
2 |
26 Feb 07 |
jari |
205 |
rd.close(); |
2 |
26 Feb 07 |
jari |
206 |
|
2 |
26 Feb 07 |
jari |
207 |
} |
2 |
26 Feb 07 |
jari |
208 |
catch (Exception e) { |
2 |
26 Feb 07 |
jari |
209 |
System.out.println("error in list submission"); |
2 |
26 Feb 07 |
jari |
210 |
e.printStackTrace(); |
2 |
26 Feb 07 |
jari |
211 |
} |
2 |
26 Feb 07 |
jari |
212 |
return true; |
2 |
26 Feb 07 |
jari |
213 |
} |
2 |
26 Feb 07 |
jari |
214 |
|
2 |
26 Feb 07 |
jari |
215 |
public void create_list(){ |
2 |
26 Feb 07 |
jari |
216 |
try { |
2 |
26 Feb 07 |
jari |
217 |
|
2 |
26 Feb 07 |
jari |
218 |
String data = URLEncoder.encode("PHPSESSID", "UTF-8") + "=" + URLEncoder.encode(this.get_session(), "UTF-8"); |
2 |
26 Feb 07 |
jari |
//System.out.println("URL: " + URL_LOLA + FILE_CREATE_LIST); |
2 |
26 Feb 07 |
jari |
// Send data |
2 |
26 Feb 07 |
jari |
221 |
URL url = new URL(URL_LOLA + FILE_CREATE_LIST); |
2 |
26 Feb 07 |
jari |
//HttpURLConnection conn = (HttpURLConnection) url.openConnection(); |
2 |
26 Feb 07 |
jari |
223 |
URLConnection conn = url.openConnection(); |
2 |
26 Feb 07 |
jari |
//conn.setFollowRedirects(true); |
2 |
26 Feb 07 |
jari |
225 |
conn.setDoOutput(true); |
2 |
26 Feb 07 |
jari |
226 |
OutputStreamWriter wr = new OutputStreamWriter(conn.getOutputStream()); |
2 |
26 Feb 07 |
jari |
227 |
wr.write(data); |
2 |
26 Feb 07 |
jari |
228 |
wr.flush(); |
2 |
26 Feb 07 |
jari |
229 |
|
2 |
26 Feb 07 |
jari |
230 |
BufferedReader rd = new BufferedReader(new InputStreamReader(conn.getInputStream())); |
2 |
26 Feb 07 |
jari |
231 |
String line; |
2 |
26 Feb 07 |
jari |
232 |
|
2 |
26 Feb 07 |
jari |
233 |
line = rd.readLine(); |
2 |
26 Feb 07 |
jari |
//sessid = get_sessid(line); |
2 |
26 Feb 07 |
jari |
//this.set_session( sessid ); |
2 |
26 Feb 07 |
jari |
//System.out.println(line); |
2 |
26 Feb 07 |
jari |
237 |
/* |
2 |
26 Feb 07 |
jari |
while ((line = rd.readLine()) != null) { |
2 |
26 Feb 07 |
jari |
System.out.println(line); |
2 |
26 Feb 07 |
jari |
// Process line... |
2 |
26 Feb 07 |
jari |
241 |
} |
2 |
26 Feb 07 |
jari |
242 |
*/ |
2 |
26 Feb 07 |
jari |
243 |
wr.close(); |
2 |
26 Feb 07 |
jari |
244 |
rd.close(); |
2 |
26 Feb 07 |
jari |
245 |
System.out.println("Gene list saved in LOLA"); |
2 |
26 Feb 07 |
jari |
246 |
} |
2 |
26 Feb 07 |
jari |
247 |
catch (Exception e) { |
2 |
26 Feb 07 |
jari |
248 |
System.out.println("error in createList()"); |
2 |
26 Feb 07 |
jari |
249 |
e.printStackTrace(); |
2 |
26 Feb 07 |
jari |
250 |
} |
2 |
26 Feb 07 |
jari |
251 |
} |
2 |
26 Feb 07 |
jari |
252 |
|
2 |
26 Feb 07 |
jari |
253 |
private String get_sessid(String line){ |
2 |
26 Feb 07 |
jari |
254 |
int start_name, end_name, end_sess; |
2 |
26 Feb 07 |
jari |
255 |
String sess_name = "PHPSESSID="; |
2 |
26 Feb 07 |
jari |
256 |
String sess_end = "-->"; |
2 |
26 Feb 07 |
jari |
257 |
|
2 |
26 Feb 07 |
jari |
258 |
start_name = line.indexOf(sess_name); |
2 |
26 Feb 07 |
jari |
259 |
end_name = start_name + sess_name.length(); |
2 |
26 Feb 07 |
jari |
260 |
end_sess = line.indexOf(sess_end); |
2 |
26 Feb 07 |
jari |
261 |
|
2 |
26 Feb 07 |
jari |
262 |
return line.substring(end_name, end_sess); |
2 |
26 Feb 07 |
jari |
263 |
} |
2 |
26 Feb 07 |
jari |
264 |
} |
2 |
26 Feb 07 |
jari |
265 |
|
2 |
26 Feb 07 |
jari |
266 |
|