view src/main/java/de/mpiwg/gazetteer/servlet/MonographUtils.java @ 12:c2e2d794847f

new: add config.properties file for gazetteer
author Zoe Hong <zhong@mpiwg-berlin.mpg.de>
date Wed, 30 Sep 2015 13:43:54 +0200
parents
children
line wrap: on
line source

package de.mpiwg.gazetteer.servlet;

import java.util.ArrayList;
import java.util.List;
import java.util.Set;

import org.primefaces.json.JSONObject;

import edu.harvard.iq.dataverse.DataFile;
import edu.harvard.iq.dataverse.RoleAssignment;
import edu.harvard.iq.dataverse.ManagePermissionsPage.RoleAssignmentRow;
import edu.harvard.iq.dataverse.authorization.Permission;
import edu.harvard.iq.dataverse.authorization.RoleAssignee;
import edu.harvard.iq.dataverse.authorization.groups.impl.explicit.ExplicitGroup;
import edu.harvard.iq.dataverse.authorization.providers.builtin.BuiltinUser;
import edu.harvard.iq.dataverse.authorization.users.AuthenticatedUser;


public class MonographUtils {

	
	public static JSONObject jsonAuthenticatedUser(AuthenticatedUser user){
		JSONObject json = new JSONObject();
		
		try {

			json.put("email", user.getEmail());
			json.put("firstName", user.getFirstName());
			json.put("id", user.getId());
			//json.put("version", user.getVersion());
			json.put("userName", user.getUserIdentifier());	// getUserName->getUserIdentifier
			json.put("position", user.getPosition());
			json.put("lastName", user.getLastName());
			json.put("affiliation", user.getAffiliation());
			
			// structure in dv4 does not support this
			/*
			JSONArray array0 = new JSONArray();
			
			// zoe added
			Collection<ExplicitGroup> groups = findGroupsOfUser(user.getId());
			
			if( groups != null) {
				for(ExplicitGroup group : groups){
				array0.put(jsonGroup(group));
			}
				json.put("userGroups", array0);
			}
			*/
		} catch (Exception e) {
			e.printStackTrace();
		}
		
		
		return json;
	}
	
	
	

	public static JSONObject jsonGroup(ExplicitGroup group){
		JSONObject json = new JSONObject();
		
		if(group != null){
			try {
				json.put("friendlyName", group.getDisplayName());
				json.put("id", group.getId());
				
			} catch (Exception e) {
				e.printStackTrace();
			}
		}
		
		return json;
	}



	public static JSONObject jsonBuiltinUser(BuiltinUser user) {
		JSONObject json = new JSONObject();
		
		try {
			json.put("email", user.getEmail());
			json.put("firstName", user.getFirstName());
			json.put("id", user.getId());
			json.put("userName", user.getUserName());
			json.put("position", user.getPosition());
			json.put("lastName", user.getLastName());
			json.put("affiliation", user.getAffiliation());
			
		} catch (Exception e) {
			e.printStackTrace();
		}
		
		
		return json;
	}
	
	
	
}