1 package jalview.gbtest;
3 import java.io.IOException;
4 import java.net.BindException;
7 import javax.servlet.http.HttpServletRequest;
8 import javax.servlet.http.HttpServletResponse;
10 import jalview.bin.Cache;
11 import jalview.gui.Desktop;
12 import jalview.gui.SequenceFetcher;
13 import jalview.httpserver.AbstractRequestHandler;
14 import jalview.structure.SelectionSource;
15 import jalview.util.DBRefUtils;
17 public class TestListener extends AbstractRequestHandler
18 implements SelectionSource
21 private String MY_PATH = "TEST";
24 * Constructor that registers this as an Http request handler on path
25 * /chimeraN, where N is incremented for each instance. Call getUri to get the
26 * resulting URI for this handler.
28 * @param chimeraBinding
29 * @throws BindException
30 * if no free port can be assigned
32 public TestListener() throws BindException
39 protected void processRequest(HttpServletRequest request,
40 HttpServletResponse response) throws IOException
44 URI reqUri = URI.create(request.getRequestURI());
46 Cache.warn("*** request.getRequestURI()=" + request.getRequestURI());
47 Cache.warn("*** reqUri=" + reqUri.toASCIIString());
48 Cache.warn("*** request.getContextPath()=" + request.getContextPath());
49 Cache.warn("*** request.getPathInfo()=" + request.getPathInfo());
51 String pathInfo = request.getPathInfo();
52 Cache.warn("*** pathInfo=" + pathInfo);
53 String viewgene = "viewgene";
54 if (pathInfo.startsWith("/" + viewgene + "/"))
57 String temp = pathInfo.substring(viewgene.length() + 2);
58 String ensemblId = temp.indexOf("/") > -1
59 ? temp.substring(0, temp.indexOf("/"))
61 Cache.warn("*** temp=" + temp);
62 Cache.warn("*** ensemblId=" + ensemblId);
64 String db = DBRefUtils.getCanonicalName("ensembl");
65 Desktop desktop = Desktop.instance;
66 SequenceFetcher sf = new SequenceFetcher(desktop, db, ensemblId);
67 sf.ok_actionPerformed();
74 * Returns a display name for this service
77 public String getName()
79 return "TestListener";