view src/main/java/de/mpiwg/monographs/servlet/GetAllDataverseAlias.java @ 11:08c950a22cee

new: add getAllDataverseAlias api for LGServices
author Zoe Hong <zhong@mpiwg-berlin.mpg.de>
date Wed, 09 Sep 2015 17:13:18 +0200
parents
children
line wrap: on
line source

package de.mpiwg.monographs.servlet;

import java.io.IOException;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;

import javax.ejb.EJB;
import javax.persistence.EntityManager;
import javax.persistence.NonUniqueResultException;
import javax.persistence.PersistenceContext;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.primefaces.json.JSONArray;
import org.primefaces.json.JSONException;
import org.primefaces.json.JSONObject;

import edu.harvard.iq.dataverse.Dataverse;
import edu.harvard.iq.dataverse.DataverseServiceBean;

public class GetAllDataverseAlias extends AbstractMonographServlet{
	
	private static final Logger logger = Logger.getLogger("monographs.GetAllDataverseAlias");
	
	@EJB
	protected DataverseServiceBean dataverseServiceBean;
	
	public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// Set response content type
		response.setContentType("application/json");
		JSONObject jsonResponse = new JSONObject();	
		
		//get all dataverse records
		List<Dataverse> dataverseList = dataverseServiceBean.findAll();
		
		JSONArray dataverseAliasArray = new JSONArray();
		
		for(Dataverse aDataverse : dataverseList){
			dataverseAliasArray.put(aDataverse.getAlias());
		}
		
		try {
			jsonResponse.put("state", "ok");
			jsonResponse.put("dataverseAlias", dataverseAliasArray);
		} catch (JSONException e) {
			e.printStackTrace();
		}		
		
		java.io.PrintWriter out = response.getWriter();
		out.print(jsonResponse);
		out.flush();
	}

}