1
2
3
4
5
6
7
8
9
10
11 package org.astrogrid.jes.servlet;
12
13 import org.astrogrid.jes.JesException;
14 import org.astrogrid.jes.component.JesComponentManager;
15 import org.astrogrid.jes.component.JesComponentManagerFactory;
16 import org.astrogrid.jes.jobscheduler.Locator;
17 import org.astrogrid.workflow.beans.v1.Tool;
18
19 import java.io.IOException;
20 import java.io.PrintWriter;
21
22 import javax.servlet.ServletException;
23 import javax.servlet.http.HttpServlet;
24 import javax.servlet.http.HttpServletRequest;
25 import javax.servlet.http.HttpServletResponse;
26
27 /*** Backdoor into some of the jes componets, for easy server-side testing.
28 * @author Noel Winstanley nw@jb.man.ac.uk 21-Apr-2004
29 *
30 */
31 public class BackdoorServlet extends HttpServlet {
32 /*** Construct a new BackdoorServlet
33 *
34 */
35 public BackdoorServlet() {
36 super();
37 }
38 /***
39 * @see javax.servlet.http.HttpServlet#doGet(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
40 */
41 protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
42 String action = request.getParameter("action");
43 if (action.equalsIgnoreCase("locate")) {
44 String toolName = request.getParameter("name");
45 JesComponentManager manager = JesComponentManagerFactory.getInstance();
46 Locator locator = (Locator)manager.getContainer().getComponentInstance(Locator.class);
47 if (locator == null) {
48 throw new ServletException("locator object was null");
49 }
50 Tool tool = new Tool();
51 tool.setName(toolName);
52 try {
53 String url = locator.locateTool(tool)[0];
54 PrintWriter writer = response.getWriter();
55 writer.println(url);
56 } catch (JesException e) {
57 throw new ServletException("Jes Barfed with exception",e);
58 }
59 }
60 }
61
62 }
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89