1
2
3
4
5 package org.astrogrid.dataservice.service.ssap;
6
7 import java.io.IOException;
8 import javax.servlet.http.HttpServletRequest;
9 import javax.servlet.http.HttpServletResponse;
10 import org.astrogrid.account.LoginAccount;
11 import org.astrogrid.dataservice.service.DataServer;
12 import org.astrogrid.dataservice.service.ServletHelper;
13 import org.astrogrid.query.Query;
14 import org.astrogrid.query.condition.CircleCondition;
15 import org.astrogrid.query.returns.ReturnTable;
16 import org.astrogrid.slinger.targets.TargetMaker;
17 import org.astrogrid.webapp.DefaultServlet;
18
19 /***
20 * Simple image access protocol - similar to cone search but different
21 * (and awkward) position format for some wierd reason.
22 *
23 *
24 * @author mch
25 */
26 public class SimpleSpectraQuery extends DefaultServlet {
27
28 DataServer server = new DataServer();
29
30 public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException {
31
32 try {
33 CircleCondition circleCon = ServletHelper.makeCircleCondition(request);
34 String format = request.getParameter("FORMAT");
35 if (format == null) format = request.getParameter("format");
36
37 try {
38 server.askQuery(LoginAccount.ANONYMOUS, new Query(circleCon, new ReturnTable(TargetMaker.makeTarget(response.getWriter()), format)), this);
39 } catch (Throwable e) {
40 doError(response, "SSAP error (RA="+circleCon.getRa()+", DEC="+circleCon.getDec()+", SIZE="+circleCon.getRadius()+", FORMAT="+format+")", e);
41 }
42
43 } catch (NumberFormatException e) {
44 doError(response, "Input parameters not correct",e);
45 }
46 }
47 }
48