view src/main/java/de/mpiwg/monographs/servlet/GetAllUsers.java @ 0:fcb8807fbd84

Fist commit!
author "jurzua <jurzua@mpiwg-berlin.mpg.de>"
date Tue, 10 Mar 2015 15:15:30 +0100
parents
children
line wrap: on
line source

package de.mpiwg.monographs.servlet;

import java.io.IOException;
import java.util.List;

import javax.inject.Inject;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.codehaus.jettison.json.JSONArray;
import org.codehaus.jettison.json.JSONException;
import org.codehaus.jettison.json.JSONObject;

import edu.harvard.iq.dvn.api.datadeposit.SwordAuth;
import edu.harvard.iq.dvn.core.admin.VDCUser;

public class GetAllUsers  extends AbstractMonographServlet{

	@Inject
	private SwordAuth swordAuth;
	
	public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// Set response content type
		response.setContentType("application/json");
		JSONObject jsonResponse = new JSONObject();	
		
		List<VDCUser> userList = swordAuth.getAllUsers();
		JSONArray array = new JSONArray();
		for(VDCUser user : userList){
			JSONObject json = MonographUtils.jsonVDCUser(user);
			array.put(json);
		}
		
		try {
			jsonResponse.put("state", "ok");
			jsonResponse.put("users", array);
		} catch (JSONException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}	
		
			
		
		java.io.PrintWriter out = response.getWriter();
		out.print(jsonResponse);
		out.flush();
	}

}