1
2
3
4
5 package org.astrogrid.dataservice.service.servlet;
6 import java.io.IOException;
7 import javax.servlet.http.HttpServletRequest;
8 import javax.servlet.http.HttpServletResponse;
9 import org.astrogrid.applications.component.CEAComponentManagerFactory;
10 import org.astrogrid.dataservice.metadata.VoDescriptionServer;
11 import org.astrogrid.xml.DomHelper;
12 import org.astrogrid.webapp.DefaultServlet;
13
14 /***
15 * A servlet for returning the generated metadata
16 *
17 * @author mch
18 */
19 public class GetMetadata extends DefaultServlet {
20
21
22 public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException {
23
24 try {
25 response.setContentType("text/xml");
26
27
28 String resourceType = request.getParameter("Resource");
29
30
31 if (resourceType == null) {
32 response.getWriter().write(VoDescriptionServer.makeVoDescription());
33 }
34
35 else if (resourceType.toUpperCase().equals("CEA")) {
36 response.getWriter().write(CEAComponentManagerFactory.getInstance().getMetadataService().returnRegistryEntry());
37 }
38
39 else {
40
41 response.getWriter().write(VoDescriptionServer.VODESCRIPTION_ELEMENT);
42 response.getWriter().write(DomHelper.ElementToString(VoDescriptionServer.getResource(resourceType)));
43 response.getWriter().write(VoDescriptionServer.VODESCRIPTION_ELEMENT_END);
44 }
45 }
46 catch (Throwable th) {
47 doError(response, "Geting Metadata",th);
48 }
49 }
50
51
52 }