1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.kuali.rice.krad.labs.coursesearch;
17
18 import org.kuali.rice.krad.web.controller.UifControllerBase;
19 import org.kuali.rice.krad.web.form.UifFormBase;
20 import org.springframework.stereotype.Controller;
21 import org.springframework.validation.BindingResult;
22 import org.springframework.web.bind.annotation.ModelAttribute;
23 import org.springframework.web.bind.annotation.RequestMapping;
24 import org.springframework.web.servlet.ModelAndView;
25
26 import java.io.*;
27 import java.net.*;
28
29 import javax.json.*;
30
31 import javax.servlet.http.HttpServletRequest;
32 import javax.servlet.http.HttpServletResponse;
33 import java.util.ArrayList;
34 import java.util.List;
35
36
37
38
39
40
41 @Controller
42 @RequestMapping(value = "/coursesearchperformance")
43 public class CourseSearchController extends UifControllerBase {
44
45 public static final String KUALI_ATP_2012_FALL = "kuali.atp.2012Fall";
46
47
48
49
50 @Override
51 protected CourseSearchForm createInitialForm() {
52 return new CourseSearchForm();
53 }
54
55
56
57
58
59
60 @Override
61 @RequestMapping(params = "methodToCall=start")
62 public ModelAndView start(UifFormBase form) {
63 CourseSearchForm perfForm = (CourseSearchForm) form;
64
65 return getModelAndView(perfForm);
66 }
67
68
69
70
71
72
73
74
75
76
77 @RequestMapping(params = "methodToCall=buildcollection")
78 public ModelAndView buildCollection(@ModelAttribute("KualiForm") CourseSearchForm form, BindingResult result,
79 HttpServletRequest request, HttpServletResponse response) {
80
81 String courseCode = form.getInputOne();
82 String termId = KUALI_ATP_2012_FALL;
83 String termCode = "201208";
84 String temp = "[\n"
85 + " {\n"
86 + " \"courseOfferingId\":\"9e89ed85-66ba-4a9c-9765-c36e78929051\",\n"
87 + " \"courseOfferingCode\":\"CHEM105\",\n"
88 + " \"courseOfferingDesc\":\"Fundamental of Organic and Biochemistry\",\n"
89 + " \"courseOfferingCreditOptionDisplay\":\"3.0\",\n"
90 + " \"courseOfferingGradingOptionDisplay\":\"Letter\",\n"
91 + " \"studentSelectablePassFail\":true,\n"
92 + " \"auditCourse\":true,\n"
93 + " \"honorsCourse\":false\n"
94 + " },\n"
95 + " {\n"
96 + " \"courseOfferingId\":\"25a7e006-e71a-4d5d-806c-04675f365222\",\n"
97 + " \"courseOfferingCode\":\"CHEM131\",\n"
98 + " \"courseOfferingDesc\":\"Chemistry I - Fundamentals of General Chemistry\",\n"
99 + " \"courseOfferingCreditOptionDisplay\":\"3.0\",\n"
100 + " \"courseOfferingGradingOptionDisplay\":\"Allow students to audit\",\n"
101 + " \"studentSelectablePassFail\":true,\n"
102 + " \"auditCourse\":true,\n"
103 + " \"honorsCourse\":false\n"
104 + " },\n"
105 + " {\n"
106 + " \"courseOfferingId\":\"ea618cb3-8583-4833-bbe3-43c7961f70fb\",\n"
107 + " \"courseOfferingCode\":\"CHEM131S\",\n"
108 + " \"courseOfferingDesc\":\"Chemistry I - Fundamentals of General Chemistry\",\n"
109 + " \"courseOfferingCreditOptionDisplay\":\"3.0\",\n"
110 + " \"courseOfferingGradingOptionDisplay\":\"Allow students to audit\",\n"
111 + " \"studentSelectablePassFail\":true,\n"
112 + " \"auditCourse\":true,\n"
113 + " \"honorsCourse\":false\n"
114 + " },\n"
115 + " {\n"
116 + " \"courseOfferingId\":\"ee786c4b-57c9-4237-9519-4bdb961ca5d4\",\n"
117 + " \"courseOfferingCode\":\"CHEM132\",\n"
118 + " \"courseOfferingDesc\":\"General Chemistry I Laboratory\",\n"
119 + " \"courseOfferingCreditOptionDisplay\":\"1.0\",\n"
120 + " \"courseOfferingGradingOptionDisplay\":\"Letter\",\n"
121 + " \"studentSelectablePassFail\":true,\n"
122 + " \"auditCourse\":false,\n"
123 + " \"honorsCourse\":false\n"
124 + " },\n"
125 + " {\n"
126 + " \"courseOfferingId\":\"56802cf2-5577-4163-9fa7-a356396e8d45\",\n"
127 + " \"courseOfferingCode\":\"CHEM132C\",\n"
128 + " \"courseOfferingDesc\":\"General Chemistry I Laboratory\",\n"
129 + " \"courseOfferingCreditOptionDisplay\":\"1.0\",\n"
130 + " \"courseOfferingGradingOptionDisplay\":\"Pass/Fail Grading\",\n"
131 + " \"studentSelectablePassFail\":true,\n"
132 + " \"auditCourse\":false,\n"
133 + " \"honorsCourse\":false\n"
134 + " },\n"
135 + " {\n"
136 + " \"courseOfferingId\":\"5fc5ff07-eb70-4c0a-b549-124eb879c8cb\",\n"
137 + " \"courseOfferingCode\":\"CHEM132S\",\n"
138 + " \"courseOfferingDesc\":\"General Chemistry I Laboratory\",\n"
139 + " \"courseOfferingCreditOptionDisplay\":\"1.0\",\n"
140 + " \"courseOfferingGradingOptionDisplay\":\"Letter\",\n"
141 + " \"studentSelectablePassFail\":true,\n"
142 + " \"auditCourse\":false,\n"
143 + " \"honorsCourse\":false\n"
144 + " },\n"
145 + " {\n"
146 + " \"courseOfferingId\":\"ced6bd11-bcd2-445f-be16-3a46d8231323\",\n"
147 + " \"courseOfferingCode\":\"CHEM135\",\n"
148 + " \"courseOfferingDesc\":\"General Chemistry for Engineers\",\n"
149 + " \"courseOfferingCreditOptionDisplay\":\"3.0\",\n"
150 + " \"courseOfferingGradingOptionDisplay\":\"Letter\",\n"
151 + " \"studentSelectablePassFail\":false,\n"
152 + " \"auditCourse\":false,\n"
153 + " \"honorsCourse\":false\n"
154 + " },\n"
155 + " {\n"
156 + " \"courseOfferingId\":\"27f703ed-d24c-4580-a401-105b3b1e5825\",\n"
157 + " \"courseOfferingCode\":\"CHEM135U\",\n"
158 + " \"courseOfferingDesc\":\"General Chemistry for Engineers\",\n"
159 + " \"courseOfferingCreditOptionDisplay\":\"3.0\",\n"
160 + " \"courseOfferingGradingOptionDisplay\":\"Letter\",\n"
161 + " \"studentSelectablePassFail\":false,\n"
162 + " \"auditCourse\":false,\n"
163 + " \"honorsCourse\":false\n"
164 + " },\n"
165 + " {\n"
166 + " \"courseOfferingId\":\"e960defa-3c0c-4bf6-bb2f-0ec13d80096d\",\n"
167 + " \"courseOfferingCode\":\"CHEM136\",\n"
168 + " \"courseOfferingDesc\":\"General Chemistry Laboratory for Engineers\",\n"
169 + " \"courseOfferingCreditOptionDisplay\":\"1.0\",\n"
170 + " \"courseOfferingGradingOptionDisplay\":\"Letter\",\n"
171 + " \"studentSelectablePassFail\":false,\n"
172 + " \"auditCourse\":false,\n"
173 + " \"honorsCourse\":false\n"
174 + " },\n"
175 + " {\n"
176 + " \"courseOfferingId\":\"2403ccea-0951-4730-b481-445631cc14a9\",\n"
177 + " \"courseOfferingCode\":\"CHEM146\",\n"
178 + " \"courseOfferingDesc\":\"Principles of General Chemistry\",\n"
179 + " \"courseOfferingCreditOptionDisplay\":\"3.0\",\n"
180 + " \"courseOfferingGradingOptionDisplay\":\"Pass/Fail Grading\",\n"
181 + " \"studentSelectablePassFail\":true,\n"
182 + " \"auditCourse\":true,\n"
183 + " \"honorsCourse\":false\n"
184 + " },\n"
185 + " {\n"
186 + " \"courseOfferingId\":\"bc3cafeb-5c1a-452c-9ab3-dabb992d1178\",\n"
187 + " \"courseOfferingCode\":\"CHEM147\",\n"
188 + " \"courseOfferingDesc\":\"Principles of Chemistry Laboratory\",\n"
189 + " \"courseOfferingCreditOptionDisplay\":\"1.0\",\n"
190 + " \"courseOfferingGradingOptionDisplay\":\"Letter\",\n"
191 + " \"studentSelectablePassFail\":true,\n"
192 + " \"auditCourse\":false,\n"
193 + " \"honorsCourse\":false\n"
194 + " },\n"
195 + " {\n"
196 + " \"courseOfferingId\":\"2d847317-1c21-4c8c-990c-ab56f0897c75\",\n"
197 + " \"courseOfferingCode\":\"CHEM231\",\n"
198 + " \"courseOfferingDesc\":\"Organic Chemistry I\",\n"
199 + " \"courseOfferingCreditOptionDisplay\":\"3.0\",\n"
200 + " \"courseOfferingGradingOptionDisplay\":\"Allow students to audit\",\n"
201 + " \"studentSelectablePassFail\":true,\n"
202 + " \"auditCourse\":true,\n"
203 + " \"honorsCourse\":false\n"
204 + " },\n"
205 + " {\n"
206 + " \"courseOfferingId\":\"9c5f138c-951b-4d3a-8cd5-369a23f89caa\",\n"
207 + " \"courseOfferingCode\":\"CHEM232\",\n"
208 + " \"courseOfferingDesc\":\"Organic Chemistry Laboratory I\",\n"
209 + " \"courseOfferingCreditOptionDisplay\":\"1.0\",\n"
210 + " \"courseOfferingGradingOptionDisplay\":\"Letter\",\n"
211 + " \"studentSelectablePassFail\":false,\n"
212 + " \"auditCourse\":false,\n"
213 + " \"honorsCourse\":false\n"
214 + " },\n"
215 + " {\n"
216 + " \"courseOfferingId\":\"ebe93736-4f75-45fc-a313-e375575cdf4a\",\n"
217 + " \"courseOfferingCode\":\"CHEM241\",\n"
218 + " \"courseOfferingDesc\":\"Organic Chemistry II\",\n"
219 + " \"courseOfferingCreditOptionDisplay\":\"3.0\",\n"
220 + " \"courseOfferingGradingOptionDisplay\":\"Pass/Fail Grading\",\n"
221 + " \"studentSelectablePassFail\":true,\n"
222 + " \"auditCourse\":true,\n"
223 + " \"honorsCourse\":false\n"
224 + " },\n"
225 + " {\n"
226 + " \"courseOfferingId\":\"9133914d-53a1-49d6-ab4d-cf83a3848262\",\n"
227 + " \"courseOfferingCode\":\"CHEM242\",\n"
228 + " \"courseOfferingDesc\":\"Organic Chemistry Laboratory II\",\n"
229 + " \"courseOfferingCreditOptionDisplay\":\"1.0\",\n"
230 + " \"courseOfferingGradingOptionDisplay\":\"Letter\",\n"
231 + " \"studentSelectablePassFail\":false,\n"
232 + " \"auditCourse\":false,\n"
233 + " \"honorsCourse\":false\n"
234 + " },\n"
235 + " {\n"
236 + " \"courseOfferingId\":\"759bba9a-0ccf-4ddd-bdb9-8abe46f2b784\",\n"
237 + " \"courseOfferingCode\":\"CHEM247\",\n"
238 + " \"courseOfferingDesc\":\"Principles of Organic Chemistry II\",\n"
239 + " \"courseOfferingCreditOptionDisplay\":\"4.0\",\n"
240 + " \"courseOfferingGradingOptionDisplay\":\"Letter\",\n"
241 + " \"studentSelectablePassFail\":true,\n"
242 + " \"auditCourse\":true,\n"
243 + " \"honorsCourse\":false\n"
244 + " },\n"
245 + " {\n"
246 + " \"courseOfferingId\":\"d4208ae9-7a2a-4ad7-b570-7c060aa74d90\",\n"
247 + " \"courseOfferingCode\":\"CHEM271\",\n"
248 + " \"courseOfferingDesc\":\"General Chemistry and Energetics\",\n"
249 + " \"courseOfferingCreditOptionDisplay\":\"2.0\",\n"
250 + " \"courseOfferingGradingOptionDisplay\":\"Allow students to audit\",\n"
251 + " \"studentSelectablePassFail\":true,\n"
252 + " \"auditCourse\":true,\n"
253 + " \"honorsCourse\":false\n"
254 + " },\n"
255 + " {\n"
256 + " \"courseOfferingId\":\"fdfd8711-e66e-4618-8321-f4bc74062792\",\n"
257 + " \"courseOfferingCode\":\"CHEM272\",\n"
258 + " \"courseOfferingDesc\":\"General Bioanalytical Chemistry Laboratory\",\n"
259 + " \"courseOfferingCreditOptionDisplay\":\"2.0\",\n"
260 + " \"courseOfferingGradingOptionDisplay\":\"Letter\",\n"
261 + " \"studentSelectablePassFail\":true,\n"
262 + " \"auditCourse\":false,\n"
263 + " \"honorsCourse\":false\n"
264 + " },\n"
265 + " {\n"
266 + " \"courseOfferingId\":\"8e7fa3b9-9560-4f2e-88c5-59c29dc9f126\",\n"
267 + " \"courseOfferingCode\":\"CHEM277\",\n"
268 + " \"courseOfferingDesc\":\"Fundamentals of Analytical and Bioanalytical Chemistry Laboratory\",\n"
269 + " \"courseOfferingCreditOptionDisplay\":\"3.0\",\n"
270 + " \"courseOfferingGradingOptionDisplay\":\"Letter\",\n"
271 + " \"studentSelectablePassFail\":false,\n"
272 + " \"auditCourse\":false,\n"
273 + " \"honorsCourse\":false\n"
274 + " },\n"
275 + " {\n"
276 + " \"courseOfferingId\":\"3b84eca8-8664-4de1-8703-b1aebeddc1fb\",\n"
277 + " \"courseOfferingCode\":\"CHEM398\",\n"
278 + " \"courseOfferingDesc\":\"Special Projects\",\n"
279 + " \"courseOfferingCreditOptionDisplay\":\"2.0\",\n"
280 + " \"courseOfferingGradingOptionDisplay\":\"Allow students to audit\",\n"
281 + " \"studentSelectablePassFail\":true,\n"
282 + " \"auditCourse\":true,\n"
283 + " \"honorsCourse\":false\n"
284 + " },\n"
285 + " {\n"
286 + " \"courseOfferingId\":\"075b54a0-133a-4e58-9b89-99cb1498e0f0\",\n"
287 + " \"courseOfferingCode\":\"CHEM399A\",\n"
288 + " \"courseOfferingDesc\":\"Introduction to Chemical Research\",\n"
289 + " \"courseOfferingCreditOptionDisplay\":\"1.0,1.5,2.0,2.5,3.0\",\n"
290 + " \"courseOfferingGradingOptionDisplay\":\"Letter\",\n"
291 + " \"studentSelectablePassFail\":true,\n"
292 + " \"auditCourse\":true,\n"
293 + " \"honorsCourse\":false\n"
294 + " },\n"
295 + " {\n"
296 + " \"courseOfferingId\":\"9a3126b4-bcad-403a-87ba-ddc438141039\",\n"
297 + " \"courseOfferingCode\":\"CHEM399B\",\n"
298 + " \"courseOfferingDesc\":\"Introduction to Chemical Research\",\n"
299 + " \"courseOfferingCreditOptionDisplay\":\"1.0,1.5,2.0,2.5,3.0\",\n"
300 + " \"courseOfferingGradingOptionDisplay\":\"Pass/Fail Grading\",\n"
301 + " \"studentSelectablePassFail\":true,\n"
302 + " \"auditCourse\":true,\n"
303 + " \"honorsCourse\":false\n"
304 + " },\n"
305 + " {\n"
306 + " \"courseOfferingId\":\"26a79829-b42c-441b-b9cf-0d8f7a35629f\",\n"
307 + " \"courseOfferingCode\":\"CHEM399C\",\n"
308 + " \"courseOfferingDesc\":\"Introduction to Chemical Research\",\n"
309 + " \"courseOfferingCreditOptionDisplay\":\"1.0,1.5,2.0,2.5,3.0\",\n"
310 + " \"courseOfferingGradingOptionDisplay\":\"Allow students to audit\",\n"
311 + " \"studentSelectablePassFail\":true,\n"
312 + " \"auditCourse\":true,\n"
313 + " \"honorsCourse\":false\n"
314 + " },\n"
315 + " {\n"
316 + " \"courseOfferingId\":\"84d4cc82-a24f-4775-8374-a5a4ebcab530\",\n"
317 + " \"courseOfferingCode\":\"CHEM399X\",\n"
318 + " \"courseOfferingDesc\":\"Introduction to Chemical Research; Chemistry Instruction\",\n"
319 + " \"courseOfferingCreditOptionDisplay\":\"1.0,1.5,2.0,2.5,3.0\",\n"
320 + " \"courseOfferingGradingOptionDisplay\":\"Allow students to audit\",\n"
321 + " \"studentSelectablePassFail\":true,\n"
322 + " \"auditCourse\":true,\n"
323 + " \"honorsCourse\":false\n"
324 + " },\n"
325 + " {\n"
326 + " \"courseOfferingId\":\"0c5fcfef-11dd-4e89-b9ab-a28b4b2d7fb0\",\n"
327 + " \"courseOfferingCode\":\"CHEM403\",\n"
328 + " \"courseOfferingDesc\":\"Radiochemistry\",\n"
329 + " \"courseOfferingCreditOptionDisplay\":\"3.0\",\n"
330 + " \"courseOfferingGradingOptionDisplay\":\"Pass/Fail Grading\",\n"
331 + " \"studentSelectablePassFail\":true,\n"
332 + " \"auditCourse\":true,\n"
333 + " \"honorsCourse\":false\n"
334 + " },\n"
335 + " {\n"
336 + " \"courseOfferingId\":\"195107f1-0afb-4af3-a78a-d287a57f8a3c\",\n"
337 + " \"courseOfferingCode\":\"CHEM425\",\n"
338 + " \"courseOfferingDesc\":\"Instrumental Methods of Analysis\",\n"
339 + " \"courseOfferingCreditOptionDisplay\":\"4.0\",\n"
340 + " \"courseOfferingGradingOptionDisplay\":\"Allow students to audit\",\n"
341 + " \"studentSelectablePassFail\":true,\n"
342 + " \"auditCourse\":true,\n"
343 + " \"honorsCourse\":false\n"
344 + " },\n"
345 + " {\n"
346 + " \"courseOfferingId\":\"e67d87d6-8d89-401a-86ac-08ca8bd5195b\",\n"
347 + " \"courseOfferingCode\":\"CHEM441\",\n"
348 + " \"courseOfferingDesc\":\"Advanced Organic Chemistry\",\n"
349 + " \"courseOfferingCreditOptionDisplay\":\"3.0\",\n"
350 + " \"courseOfferingGradingOptionDisplay\":\"Allow students to audit\",\n"
351 + " \"studentSelectablePassFail\":true,\n"
352 + " \"auditCourse\":true,\n"
353 + " \"honorsCourse\":false\n"
354 + " },\n"
355 + " {\n"
356 + " \"courseOfferingId\":\"6f2cb68a-b09d-4b2b-8459-7fe17de11055\",\n"
357 + " \"courseOfferingCode\":\"CHEM460\",\n"
358 + " \"courseOfferingDesc\":\"Structure Determination Using Spectroscopic Methods\",\n"
359 + " \"courseOfferingCreditOptionDisplay\":\"3.0\",\n"
360 + " \"courseOfferingGradingOptionDisplay\":\"Pass/Fail Grading\",\n"
361 + " \"studentSelectablePassFail\":true,\n"
362 + " \"auditCourse\":true,\n"
363 + " \"honorsCourse\":false\n"
364 + " },\n"
365 + " {\n"
366 + " \"courseOfferingId\":\"abf9196f-a0d2-4558-b47b-308bf0257c35\",\n"
367 + " \"courseOfferingCode\":\"CHEM474\",\n"
368 + " \"courseOfferingDesc\":\"Environmental Chemistry\",\n"
369 + " \"courseOfferingCreditOptionDisplay\":\"3.0\",\n"
370 + " \"courseOfferingGradingOptionDisplay\":\"Pass/Fail Grading\",\n"
371 + " \"studentSelectablePassFail\":true,\n"
372 + " \"auditCourse\":true,\n"
373 + " \"honorsCourse\":false\n"
374 + " },\n"
375 + " {\n"
376 + " \"courseOfferingId\":\"87521128-54b5-4c97-a756-b1ecd7dcc5f5\",\n"
377 + " \"courseOfferingCode\":\"CHEM481\",\n"
378 + " \"courseOfferingDesc\":\"Physical Chemistry I\",\n"
379 + " \"courseOfferingCreditOptionDisplay\":\"3.0\",\n"
380 + " \"courseOfferingGradingOptionDisplay\":\"Allow students to audit\",\n"
381 + " \"studentSelectablePassFail\":true,\n"
382 + " \"auditCourse\":true,\n"
383 + " \"honorsCourse\":false\n"
384 + " },\n"
385 + " {\n"
386 + " \"courseOfferingId\":\"99f82ba5-ad01-4489-b446-99ea8f62d292\",\n"
387 + " \"courseOfferingCode\":\"CHEM482\",\n"
388 + " \"courseOfferingDesc\":\"Physical Chemistry II\",\n"
389 + " \"courseOfferingCreditOptionDisplay\":\"3.0\",\n"
390 + " \"courseOfferingGradingOptionDisplay\":\"Pass/Fail Grading\",\n"
391 + " \"studentSelectablePassFail\":true,\n"
392 + " \"auditCourse\":true,\n"
393 + " \"honorsCourse\":false\n"
394 + " },\n"
395 + " {\n"
396 + " \"courseOfferingId\":\"7a84cb1d-51ad-44a5-a315-69451dea6154\",\n"
397 + " \"courseOfferingCode\":\"CHEM483\",\n"
398 + " \"courseOfferingDesc\":\"Physical Chemistry Laboratory I\",\n"
399 + " \"courseOfferingCreditOptionDisplay\":\"2.0\",\n"
400 + " \"courseOfferingGradingOptionDisplay\":\"Allow students to audit\",\n"
401 + " \"studentSelectablePassFail\":true,\n"
402 + " \"auditCourse\":true,\n"
403 + " \"honorsCourse\":false\n"
404 + " },\n"
405 + " {\n"
406 + " \"courseOfferingId\":\"9118cf6c-a573-4443-9208-89079ff89d8b\",\n"
407 + " \"courseOfferingCode\":\"CHEM484\",\n"
408 + " \"courseOfferingDesc\":\"Physical Chemistry Laboratory II\",\n"
409 + " \"courseOfferingCreditOptionDisplay\":\"2.0\",\n"
410 + " \"courseOfferingGradingOptionDisplay\":\"Letter\",\n"
411 + " \"studentSelectablePassFail\":true,\n"
412 + " \"auditCourse\":true,\n"
413 + " \"honorsCourse\":false\n"
414 + " },\n"
415 + " {\n"
416 + " \"courseOfferingId\":\"d5604c9f-664c-4dc1-94b1-695a821b7c8f\",\n"
417 + " \"courseOfferingCode\":\"CHEM491\",\n"
418 + " \"courseOfferingDesc\":\"Advanced Organic Chemistry Laboratory\",\n"
419 + " \"courseOfferingCreditOptionDisplay\":\"4.0\",\n"
420 + " \"courseOfferingGradingOptionDisplay\":\"Pass/Fail Grading\",\n"
421 + " \"studentSelectablePassFail\":true,\n"
422 + " \"auditCourse\":true,\n"
423 + " \"honorsCourse\":false\n"
424 + " },\n"
425 + " {\n"
426 + " \"courseOfferingId\":\"9218e1e8-8279-4ea2-9975-9decdf337eca\",\n"
427 + " \"courseOfferingCode\":\"CHEM601\",\n"
428 + " \"courseOfferingDesc\":\"Structure and Bonding of Molecules and Materials\",\n"
429 + " \"courseOfferingCreditOptionDisplay\":\"3.0\",\n"
430 + " \"courseOfferingGradingOptionDisplay\":\"Allow students to audit\",\n"
431 + " \"studentSelectablePassFail\":false,\n"
432 + " \"auditCourse\":true,\n"
433 + " \"honorsCourse\":false\n"
434 + " },\n"
435 + " {\n"
436 + " \"courseOfferingId\":\"eb942c03-0e7e-4bd7-a774-d26cb1c64f25\",\n"
437 + " \"courseOfferingCode\":\"CHEM608K\",\n"
438 + " \"courseOfferingDesc\":\"Selected Topics in Inorganic Chemistry; Chemistry Teaching and Learning in Higher Education\",\n"
439 + " \"courseOfferingCreditOptionDisplay\":\"1.0,1.5,2.0,2.5,3.0\",\n"
440 + " \"courseOfferingGradingOptionDisplay\":\"Letter\",\n"
441 + " \"studentSelectablePassFail\":false,\n"
442 + " \"auditCourse\":true,\n"
443 + " \"honorsCourse\":false\n"
444 + " },\n"
445 + " {\n"
446 + " \"courseOfferingId\":\"19bb06aa-a076-4937-8fc4-acccf85b9828\",\n"
447 + " \"courseOfferingCode\":\"CHEM611\",\n"
448 + " \"courseOfferingDesc\":\"Professional Skills for New Graduate Students\",\n"
449 + " \"courseOfferingCreditOptionDisplay\":\"1.0\",\n"
450 + " \"courseOfferingGradingOptionDisplay\":\"Allow students to audit\",\n"
451 + " \"studentSelectablePassFail\":false,\n"
452 + " \"auditCourse\":true,\n"
453 + " \"honorsCourse\":false\n"
454 + " },\n"
455 + " {\n"
456 + " \"courseOfferingId\":\"9dd9724e-efd6-4d31-9624-b46450b57027\",\n"
457 + " \"courseOfferingCode\":\"CHEM625\",\n"
458 + " \"courseOfferingDesc\":\"Separation Methods in Quantitative Analysis\",\n"
459 + " \"courseOfferingCreditOptionDisplay\":\"3.0\",\n"
460 + " \"courseOfferingGradingOptionDisplay\":\"Allow students to audit\",\n"
461 + " \"studentSelectablePassFail\":false,\n"
462 + " \"auditCourse\":true,\n"
463 + " \"honorsCourse\":false\n"
464 + " },\n"
465 + " {\n"
466 + " \"courseOfferingId\":\"8938913c-cbd0-4405-97ad-f7e179114b83\",\n"
467 + " \"courseOfferingCode\":\"CHEM626\",\n"
468 + " \"courseOfferingDesc\":\"Metrology for Chemistry and Biochemistry\",\n"
469 + " \"courseOfferingCreditOptionDisplay\":\"3.0\",\n"
470 + " \"courseOfferingGradingOptionDisplay\":\"Letter\",\n"
471 + " \"studentSelectablePassFail\":false,\n"
472 + " \"auditCourse\":true,\n"
473 + " \"honorsCourse\":false\n"
474 + " },\n"
475 + " {\n"
476 + " \"courseOfferingId\":\"39c50ead-18ef-4909-89dc-3341cf8f6fd5\",\n"
477 + " \"courseOfferingCode\":\"CHEM640\",\n"
478 + " \"courseOfferingDesc\":\"Problems in Organic Reaction Mechanisms\",\n"
479 + " \"courseOfferingCreditOptionDisplay\":\"1.0\",\n"
480 + " \"courseOfferingGradingOptionDisplay\":\"Allow students to audit\",\n"
481 + " \"studentSelectablePassFail\":false,\n"
482 + " \"auditCourse\":true,\n"
483 + " \"honorsCourse\":false\n"
484 + " },\n"
485 + " {\n"
486 + " \"courseOfferingId\":\"bc7d6a5e-b77c-400b-a79b-1e02164b2de8\",\n"
487 + " \"courseOfferingCode\":\"CHEM641\",\n"
488 + " \"courseOfferingDesc\":\"Organic Reaction Mechanisms\",\n"
489 + " \"courseOfferingCreditOptionDisplay\":\"3.0\",\n"
490 + " \"courseOfferingGradingOptionDisplay\":\"Allow students to audit\",\n"
491 + " \"studentSelectablePassFail\":false,\n"
492 + " \"auditCourse\":true,\n"
493 + " \"honorsCourse\":false\n"
494 + " },\n"
495 + " {\n"
496 + " \"courseOfferingId\":\"22f75db7-d9ac-4da7-ba0c-6def7b544718\",\n"
497 + " \"courseOfferingCode\":\"CHEM682\",\n"
498 + " \"courseOfferingDesc\":\"Chemical Kinetics and Dynamics\",\n"
499 + " \"courseOfferingCreditOptionDisplay\":\"3.0\",\n"
500 + " \"courseOfferingGradingOptionDisplay\":\"Allow students to audit\",\n"
501 + " \"studentSelectablePassFail\":false,\n"
502 + " \"auditCourse\":true,\n"
503 + " \"honorsCourse\":false\n"
504 + " },\n"
505 + " {\n"
506 + " \"courseOfferingId\":\"4a6f4368-2a17-4bef-b62c-872fa66f8211\",\n"
507 + " \"courseOfferingCode\":\"CHEM684\",\n"
508 + " \"courseOfferingDesc\":\"Chemical Thermodynamics\",\n"
509 + " \"courseOfferingCreditOptionDisplay\":\"3.0\",\n"
510 + " \"courseOfferingGradingOptionDisplay\":\"Allow students to audit\",\n"
511 + " \"studentSelectablePassFail\":false,\n"
512 + " \"auditCourse\":true,\n"
513 + " \"honorsCourse\":false\n"
514 + " },\n"
515 + " {\n"
516 + " \"courseOfferingId\":\"8ba3008b-cf09-4df3-99fe-403f44be4eed\",\n"
517 + " \"courseOfferingCode\":\"CHEM689\",\n"
518 + " \"courseOfferingDesc\":\"Special Topics in Physical Chemistry\",\n"
519 + " \"courseOfferingCreditOptionDisplay\":\"3.0\",\n"
520 + " \"courseOfferingGradingOptionDisplay\":\"Letter\",\n"
521 + " \"studentSelectablePassFail\":false,\n"
522 + " \"auditCourse\":true,\n"
523 + " \"honorsCourse\":false\n"
524 + " },\n"
525 + " {\n"
526 + " \"courseOfferingId\":\"73e0e856-d344-4946-a759-65209dfd6e3b\",\n"
527 + " \"courseOfferingCode\":\"CHEM690\",\n"
528 + " \"courseOfferingDesc\":\"Quantum Chemistry I\",\n"
529 + " \"courseOfferingCreditOptionDisplay\":\"3.0\",\n"
530 + " \"courseOfferingGradingOptionDisplay\":\"Allow students to audit\",\n"
531 + " \"studentSelectablePassFail\":false,\n"
532 + " \"auditCourse\":true,\n"
533 + " \"honorsCourse\":false\n"
534 + " },\n"
535 + " {\n"
536 + " \"courseOfferingId\":\"ce30b18d-5003-430c-9b8d-07d320785f4d\",\n"
537 + " \"courseOfferingCode\":\"CHEM699\",\n"
538 + " \"courseOfferingDesc\":\"Special Problems in Chemistry\",\n"
539 + " \"courseOfferingCreditOptionDisplay\":\"1 - 6\",\n"
540 + " \"courseOfferingGradingOptionDisplay\":\"Letter\",\n"
541 + " \"studentSelectablePassFail\":false,\n"
542 + " \"auditCourse\":true,\n"
543 + " \"honorsCourse\":false\n"
544 + " },\n"
545 + " {\n"
546 + " \"courseOfferingId\":\"af7586c2-92aa-4da7-81d0-82e757efae99\",\n"
547 + " \"courseOfferingCode\":\"CHEM799\",\n"
548 + " \"courseOfferingDesc\":\"Master's Thesis Research\",\n"
549 + " \"courseOfferingCreditOptionDisplay\":\"1 - 6\",\n"
550 + " \"courseOfferingGradingOptionDisplay\":\"Letter\",\n"
551 + " \"studentSelectablePassFail\":false,\n"
552 + " \"auditCourse\":false,\n"
553 + " \"honorsCourse\":false\n"
554 + " },\n"
555 + " {\n"
556 + " \"courseOfferingId\":\"47b27aeb-3506-4cef-9cab-ce82eb16b98a\",\n"
557 + " \"courseOfferingCode\":\"CHEM889A\",\n"
558 + " \"courseOfferingDesc\":\"Seminar; Analytical, Nuclear and Environmental Chemistry\",\n"
559 + " \"courseOfferingCreditOptionDisplay\":\"1.0\",\n"
560 + " \"courseOfferingGradingOptionDisplay\":\"Allow students to audit\",\n"
561 + " \"studentSelectablePassFail\":false,\n"
562 + " \"auditCourse\":true,\n"
563 + " \"honorsCourse\":false\n"
564 + " },\n"
565 + " {\n"
566 + " \"courseOfferingId\":\"81590cdf-e8bb-42b2-8192-9782ad9ca0e7\",\n"
567 + " \"courseOfferingCode\":\"CHEM889C\",\n"
568 + " \"courseOfferingDesc\":\"Seminar; Inorganic\",\n"
569 + " \"courseOfferingCreditOptionDisplay\":\"1.0\",\n"
570 + " \"courseOfferingGradingOptionDisplay\":\"Allow students to audit\",\n"
571 + " \"studentSelectablePassFail\":false,\n"
572 + " \"auditCourse\":true,\n"
573 + " \"honorsCourse\":false\n"
574 + " },\n"
575 + " {\n"
576 + " \"courseOfferingId\":\"2972d4f5-2670-4d69-8bc5-c3d0afb28a4a\",\n"
577 + " \"courseOfferingCode\":\"CHEM889D\",\n"
578 + " \"courseOfferingDesc\":\"Seminar; Organic\",\n"
579 + " \"courseOfferingCreditOptionDisplay\":\"1.0\",\n"
580 + " \"courseOfferingGradingOptionDisplay\":\"Allow students to audit\",\n"
581 + " \"studentSelectablePassFail\":false,\n"
582 + " \"auditCourse\":true,\n"
583 + " \"honorsCourse\":false\n"
584 + " },\n"
585 + " {\n"
586 + " \"courseOfferingId\":\"672d59b9-c2ae-4462-82f3-b0ebfc181c59\",\n"
587 + " \"courseOfferingCode\":\"CHEM889E\",\n"
588 + " \"courseOfferingDesc\":\"Seminar; Physical Chemistry\",\n"
589 + " \"courseOfferingCreditOptionDisplay\":\"1.0\",\n"
590 + " \"courseOfferingGradingOptionDisplay\":\"Allow students to audit\",\n"
591 + " \"studentSelectablePassFail\":false,\n"
592 + " \"auditCourse\":true,\n"
593 + " \"honorsCourse\":false\n"
594 + " },\n"
595 + " {\n"
596 + " \"courseOfferingId\":\"ee6838b4-40d8-419e-8838-a5286e269dc9\",\n"
597 + " \"courseOfferingCode\":\"CHEM889F\",\n"
598 + " \"courseOfferingDesc\":\"Seminar; Chemical Physics\",\n"
599 + " \"courseOfferingCreditOptionDisplay\":\"1.0\",\n"
600 + " \"courseOfferingGradingOptionDisplay\":\"Allow students to audit\",\n"
601 + " \"studentSelectablePassFail\":false,\n"
602 + " \"auditCourse\":true,\n"
603 + " \"honorsCourse\":false\n"
604 + " },\n"
605 + " {\n"
606 + " \"courseOfferingId\":\"fe0b4cbd-0796-4810-88ec-0dc22f570cc6\",\n"
607 + " \"courseOfferingCode\":\"CHEM889G\",\n"
608 + " \"courseOfferingDesc\":\"Seminar; Physical Organic\",\n"
609 + " \"courseOfferingCreditOptionDisplay\":\"1.0\",\n"
610 + " \"courseOfferingGradingOptionDisplay\":\"Allow students to audit\",\n"
611 + " \"studentSelectablePassFail\":false,\n"
612 + " \"auditCourse\":true,\n"
613 + " \"honorsCourse\":false\n"
614 + " },\n"
615 + " {\n"
616 + " \"courseOfferingId\":\"ac1a7153-1ceb-483e-bf3c-417494ac4522\",\n"
617 + " \"courseOfferingCode\":\"CHEM889M\",\n"
618 + " \"courseOfferingDesc\":\"Seminar; Materials Chemistry\",\n"
619 + " \"courseOfferingCreditOptionDisplay\":\"1.0\",\n"
620 + " \"courseOfferingGradingOptionDisplay\":\"Letter\",\n"
621 + " \"studentSelectablePassFail\":false,\n"
622 + " \"auditCourse\":true,\n"
623 + " \"honorsCourse\":false\n"
624 + " },\n"
625 + " {\n"
626 + " \"courseOfferingId\":\"019e01b1-695a-4513-92b6-4303af879b61\",\n"
627 + " \"courseOfferingCode\":\"CHEM889P\",\n"
628 + " \"courseOfferingDesc\":\"Seminar; Structure and Reactivity of Biopolymers\",\n"
629 + " \"courseOfferingCreditOptionDisplay\":\"1.0\",\n"
630 + " \"courseOfferingGradingOptionDisplay\":\"Letter\",\n"
631 + " \"studentSelectablePassFail\":false,\n"
632 + " \"auditCourse\":true,\n"
633 + " \"honorsCourse\":false\n"
634 + " },\n"
635 + " {\n"
636 + " \"courseOfferingId\":\"d0b9cf2f-879d-4bf4-8afd-05531b842219\",\n"
637 + " \"courseOfferingCode\":\"CHEM898\",\n"
638 + " \"courseOfferingDesc\":\"Pre-Candidacy Research\",\n"
639 + " \"courseOfferingCreditOptionDisplay\":\"1 - 8\",\n"
640 + " \"courseOfferingGradingOptionDisplay\":\"Administrative Grade of Satisfactory\",\n"
641 + " \"studentSelectablePassFail\":false,\n"
642 + " \"auditCourse\":false,\n"
643 + " \"honorsCourse\":false\n"
644 + " },\n"
645 + " {\n"
646 + " \"courseOfferingId\":\"a3c5e362-6343-4177-ae39-c2f55b32f56b\",\n"
647 + " \"courseOfferingCode\":\"CHEM899\",\n"
648 + " \"courseOfferingDesc\":\"Doctoral Dissertation Research\",\n"
649 + " \"courseOfferingCreditOptionDisplay\":\"1 - 8\",\n"
650 + " \"courseOfferingGradingOptionDisplay\":\"Letter\",\n"
651 + " \"studentSelectablePassFail\":false,\n"
652 + " \"auditCourse\":false,\n"
653 + " \"honorsCourse\":false\n"
654 + " }\n"
655 + "]";
656
657 JsonReader jsonReader = Json.createReader(new StringReader(temp));
658 JsonArray jsonArray = jsonReader.readArray();
659 List<CourseSearchResult> collectionList = new ArrayList<CourseSearchResult>();
660
661 populateCourseSearchResults(jsonArray, collectionList);
662 form.setPerfCollection(collectionList);
663
664 return getModelAndView(form);
665 }
666
667
668
669
670
671
672
673 public void populateCourseSearchResults(JsonArray jsonArray, List<CourseSearchResult> collectionList)throws JsonException {
674 int j = jsonArray.size();
675 int i;
676 for(i=0; i<j; i++) {
677 CourseSearchResult courseSearchResult = new CourseSearchResult();
678 JsonObject jsonObject = (JsonObject)jsonArray.get(i);
679 courseSearchResult.setCourseOfferingId(jsonObject.getString("courseOfferingId"));
680 courseSearchResult.setCourseOfferingCode(jsonObject.getString("courseOfferingCode"));
681 courseSearchResult.setHonorsCourse(jsonObject.getBoolean("honorsCourse"));
682 courseSearchResult.setAuditCourse(jsonObject.getBoolean("auditCourse"));
683 courseSearchResult.setStudentSelectablePassFail(jsonObject.getBoolean("studentSelectablePassFail"));
684 courseSearchResult.setCourseOfferingDesc(jsonObject.getString("courseOfferingDesc"));
685 courseSearchResult.setCourseOfferingCreditOptionDisplay(jsonObject.getString(
686 "courseOfferingCreditOptionDisplay"));
687 courseSearchResult.setCourseOfferingGradingOptionDisplay(jsonObject.getString(
688 "courseOfferingGradingOptionDisplay"));
689 collectionList.add(courseSearchResult);
690 }
691
692
693 }
694
695
696
697
698
699
700 public String getHTML(String urlToRead) {
701 URL url;
702 HttpURLConnection conn;
703 BufferedReader rd;
704 String line;
705 String result = "";
706 try {
707 url = new URL(urlToRead);
708 conn = (HttpURLConnection) url.openConnection();
709 conn.setRequestMethod("GET");
710 rd = new BufferedReader(new InputStreamReader(conn.getInputStream()));
711 while ((line = rd.readLine()) != null) {
712 result += line;
713 }
714 rd.close();
715 } catch (IOException e) {
716 e.printStackTrace();
717 } catch (Exception e) {
718 e.printStackTrace();
719 }
720 return result;
721 }
722
723 }