view src/main/java/de/mpiwg/gazetteer/rest/GetSectionMetadata.java @ 0:3e62083dbcbf

First commit. This project comes from LGServer. We removed the framework icefaces. Now, LGServices uses just JSP and jquery.
author "jurzua <jurzua@mpiwg-berlin.mpg.de>"
date Thu, 23 Apr 2015 15:46:01 +0200
parents
children 9c4937b290c6
line wrap: on
line source

package de.mpiwg.gazetteer.rest;

import java.io.PrintWriter;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.json.JSONObject;

import de.mpiwg.gazetteer.db.DBBook;
import de.mpiwg.gazetteer.db.DBSection;
import de.mpiwg.gazetteer.utils.DBService;

public class GetSectionMetadata  extends AbstractServletMethod {

	public static String name = "getSectionMetadata";
	
	public static void execute(HttpServletRequest request, HttpServletResponse response) throws Exception{
		
		Long sectionId = getQueryLongParam(request, "sectionId");
		
		if(sectionId != null){
			DBSection section = DBService.getSectionWithContent(sectionId);
			if(section != null){
				//DBBook book = DBService.getBookFromDB(section.getBookId());
				DBBook book = DBService.getInstance().getBook(section.getBookId());
				
				response.setContentType("application/json");
				JSONObject json = new JSONObject();
				json.put("status", "ok");
				
				
				JSONObject sectionJson = new JSONObject();
				sectionJson.put("id", section.getId());
				sectionJson.put("name", section.getName());
				sectionJson.put("start_page", section.getStart_page());
				sectionJson.put("end_page", section.getEnd_page());
				
				
				JSONObject bookJson = new JSONObject();
				bookJson.put("id", book.getId());
				bookJson.put("name", book.getName());
				bookJson.put("author", book.getAuthor());
				bookJson.put("edition", book.getEdition());
				bookJson.put("line", book.getLine());
				bookJson.put("period", book.getPeriod());
				bookJson.put("volume", book.getVolume());
				
				bookJson.put("level1", book.getLevel1());
				bookJson.put("level2", book.getLevel2());
				bookJson.put("admin_type", book.getAdmin_type());
				bookJson.put("in_jibengujiku", book.getIn_jibengujiku());
				
				
				bookJson.put("dynasty", book.getDynasty());
				bookJson.put("start_year", book.getStart_year());
				bookJson.put("end_year", book.getEnd_year());
				
				
				sectionJson.put("book", bookJson);
				
				
				json.put("section", sectionJson);
				
				
				PrintWriter out = response.getWriter();
				out.print(json.toString());
				out.flush();
				
			}else{
				response.setContentType("application/json");
				JSONObject json = new JSONObject();
				json.put("status", "error");
				json.put("message", "Section no found (" + sectionId + ")");
				PrintWriter out = response.getWriter();
				out.print(json.toString());
				out.flush();
			}
		}else{
			response.setContentType("application/json");
			JSONObject json = new JSONObject();
			json.put("status", "error");
			json.put("message", "Following parameters are mandatory: sectionId.");
			PrintWriter out = response.getWriter();
			out.print(json.toString());
			out.flush();
		}
	}
}