diff src/de/mpiwg/dwinter/fulltextSearchServer/ShowResultInfoOfTicket.java @ 0:db87c1b7eb6d

initial
author dwinter
date Wed, 03 Nov 2010 12:18:46 +0100
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/de/mpiwg/dwinter/fulltextSearchServer/ShowResultInfoOfTicket.java	Wed Nov 03 12:18:46 2010 +0100
@@ -0,0 +1,60 @@
+package de.mpiwg.dwinter.fulltextSearchServer;
+
+import java.io.FileNotFoundException;
+import java.io.IOException;
+
+import org.apache.log4j.Logger;
+import org.jdom.JDOMException;
+import org.restlet.data.Form;
+import org.restlet.data.MediaType;
+import org.restlet.representation.Representation;
+import org.restlet.representation.StringRepresentation;
+import org.restlet.resource.Get;
+import org.restlet.resource.Options;
+import org.restlet.resource.ServerResource;
+
+import de.mpiwg.dwinter.fulltext.ticket.TicketWriter;
+
+public class ShowResultInfoOfTicket extends ServerResource {
+	Logger logger = Logger.getRootLogger();
+
+	//need options for crossdomain scripting
+	@Options
+	public void doOptions(Representation entity) {
+	    Form responseHeaders = (Form) getResponse().getAttributes().get("org.restlet.http.headers");
+	    if (responseHeaders == null) {
+	        responseHeaders = new Form();
+	        getResponse().getAttributes().put("org.restlet.http.headers", responseHeaders);
+	    }
+	    responseHeaders.add("Access-Control-Allow-Origin", "*");
+	    responseHeaders.add("Access-Control-Allow-Methods", "POST,OPTIONS,GET");
+	    responseHeaders.add("Access-Control-Allow-Headers", "Content-Type");
+	    responseHeaders.add("Access-Control-Allow-Credentials", "false");
+	    responseHeaders.add("Access-Control-Max-Age", "60");
+	}
+	
+	
+	@Get("xml")
+	public Representation getHTML( ) throws NumberFormatException, JDOMException, FileNotFoundException, IOException {
+		logger.debug("show result of ticker: get HTML");
+		
+		// response header fuer cross-site.scripting
+		Form responseHeaders = (Form) getResponse().getAttributes().get("org.restlet.http.headers");
+		    if (responseHeaders == null) {
+		        responseHeaders = new Form();
+		        getResponse().getAttributes().put("org.restlet.http.headers", responseHeaders);
+		    }
+		responseHeaders.add("Access-Control-Allow-Origin", "*");
+		
+		
+		String ticket = (String) getRequest().getAttributes().get("ticket") ;
+		String lang = (String) getRequest().getAttributes().get("lang") ;  
+		
+		String xml = TicketWriter.getResultInfoXML(ticket, lang);
+	
+
+        StringRepresentation representation = new StringRepresentation(xml, 
+   	            MediaType.TEXT_XML) ;
+        return representation;
+	}
+}