Mercurial > hg > LGDataverses
annotate 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 |
rev | line source |
---|---|
12
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
1 package de.mpiwg.gazetteer.servlet; |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
2 |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
3 import java.util.ArrayList; |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
4 import java.util.List; |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
5 import java.util.Set; |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
6 |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
7 import org.primefaces.json.JSONObject; |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
8 |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
9 import edu.harvard.iq.dataverse.DataFile; |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
10 import edu.harvard.iq.dataverse.RoleAssignment; |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
11 import edu.harvard.iq.dataverse.ManagePermissionsPage.RoleAssignmentRow; |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
12 import edu.harvard.iq.dataverse.authorization.Permission; |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
13 import edu.harvard.iq.dataverse.authorization.RoleAssignee; |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
14 import edu.harvard.iq.dataverse.authorization.groups.impl.explicit.ExplicitGroup; |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
15 import edu.harvard.iq.dataverse.authorization.providers.builtin.BuiltinUser; |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
16 import edu.harvard.iq.dataverse.authorization.users.AuthenticatedUser; |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
17 |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
18 |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
19 public class MonographUtils { |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
20 |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
21 |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
22 public static JSONObject jsonAuthenticatedUser(AuthenticatedUser user){ |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
23 JSONObject json = new JSONObject(); |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
24 |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
25 try { |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
26 |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
27 json.put("email", user.getEmail()); |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
28 json.put("firstName", user.getFirstName()); |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
29 json.put("id", user.getId()); |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
30 //json.put("version", user.getVersion()); |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
31 json.put("userName", user.getUserIdentifier()); // getUserName->getUserIdentifier |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
32 json.put("position", user.getPosition()); |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
33 json.put("lastName", user.getLastName()); |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
34 json.put("affiliation", user.getAffiliation()); |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
35 |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
36 // structure in dv4 does not support this |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
37 /* |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
38 JSONArray array0 = new JSONArray(); |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
39 |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
40 // zoe added |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
41 Collection<ExplicitGroup> groups = findGroupsOfUser(user.getId()); |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
42 |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
43 if( groups != null) { |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
44 for(ExplicitGroup group : groups){ |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
45 array0.put(jsonGroup(group)); |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
46 } |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
47 json.put("userGroups", array0); |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
48 } |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
49 */ |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
50 } catch (Exception e) { |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
51 e.printStackTrace(); |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
52 } |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
53 |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
54 |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
55 return json; |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
56 } |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
57 |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
58 |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
59 |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
60 |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
61 public static JSONObject jsonGroup(ExplicitGroup group){ |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
62 JSONObject json = new JSONObject(); |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
63 |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
64 if(group != null){ |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
65 try { |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
66 json.put("friendlyName", group.getDisplayName()); |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
67 json.put("id", group.getId()); |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
68 |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
69 } catch (Exception e) { |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
70 e.printStackTrace(); |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
71 } |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
72 } |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
73 |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
74 return json; |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
75 } |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
76 |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
77 |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
78 |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
79 public static JSONObject jsonBuiltinUser(BuiltinUser user) { |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
80 JSONObject json = new JSONObject(); |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
81 |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
82 try { |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
83 json.put("email", user.getEmail()); |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
84 json.put("firstName", user.getFirstName()); |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
85 json.put("id", user.getId()); |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
86 json.put("userName", user.getUserName()); |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
87 json.put("position", user.getPosition()); |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
88 json.put("lastName", user.getLastName()); |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
89 json.put("affiliation", user.getAffiliation()); |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
90 |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
91 } catch (Exception e) { |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
92 e.printStackTrace(); |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
93 } |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
94 |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
95 |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
96 return json; |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
97 } |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
98 |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
99 |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
100 |
c2e2d794847f
new: add config.properties file for gazetteer
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
101 } |