]> git.aero2k.de Git - tmp/jakarta-migration.git/blob
16245b9f22ac838ebac0303c37308c54d757047e
[tmp/jakarta-migration.git] /
1 /**
2  *  This document is a part of the source code and related artifacts
3  *  for CollectionSpace, an open source collections management system
4  *  for museums and related institutions:
5
6  *  http://www.collectionspace.org
7  *  http://wiki.collectionspace.org
8
9  *  Copyright 2009 University of California at Berkeley
10
11  *  Licensed under the Educational Community License (ECL), Version 2.0.
12  *  You may not use this file except in compliance with this License.
13
14  *  You may obtain a copy of the ECL 2.0 License at
15
16  *  https://source.collectionspace.org/collection-space/LICENSE.txt
17
18  *  Unless required by applicable law or agreed to in writing, software
19  *  distributed under the License is distributed on an "AS IS" BASIS,
20  *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
21  *  See the License for the specific language governing permissions and
22  *  limitations under the License.
23  *//**
24  *  This document is a part of the source code and related artifacts
25  *  for CollectionSpace, an open source collections management system
26  *  for museums and related institutions:
27
28  *  http://www.collectionspace.org
29  *  http://wiki.collectionspace.org
30
31  *  Copyright 2009 University of California at Berkeley
32
33  *  Licensed under the Educational Community License (ECL), Version 2.0.
34  *  You may not use this file except in compliance with this License.
35
36  *  You may obtain a copy of the ECL 2.0 License at
37
38  *  https://source.collectionspace.org/collection-space/LICENSE.txt
39
40  *  Unless required by applicable law or agreed to in writing, software
41  *  distributed under the License is distributed on an "AS IS" BASIS,
42  *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
43  *  See the License for the specific language governing permissions and
44  *  limitations under the License.
45  */
46 package org.collectionspace.services.authorization.test;
47
48 import org.slf4j.Logger;
49 import org.slf4j.LoggerFactory;
50 import java.util.ArrayList;
51 import org.collectionspace.services.authorization.ActionType;
52 import org.collectionspace.services.authorization.Permission;
53 import org.collectionspace.services.authorization.EffectType;
54 import org.collectionspace.services.authorization.PermissionAction;
55 import org.collectionspace.services.authorization.PermissionRole;
56 import org.collectionspace.services.authorization.PermissionsList;
57 import org.collectionspace.services.authorization.PermissionsRolesList;
58 import org.testng.annotations.Test;
59
60 /**
61  *
62  * @author 
63  */
64 public class AuthorizationGenTest extends AbstractAuthorizationTestImpl {
65
66     final Logger logger = LoggerFactory.getLogger(AuthorizationGenTest.class);
67
68     @Test
69     public void genPermissions() {
70         PermissionsList pcList = new PermissionsList();
71         ArrayList<Permission> apcList = new ArrayList<Permission>();
72         pcList.setPermission(apcList);
73
74         Permission accPerm = buildCommonPermission("1", "accounts");
75         apcList.add(accPerm);
76         Permission coPerm = buildCommonPermission("2", "collectionobjects");
77         apcList.add(coPerm);
78         toFile(pcList, PermissionsList.class, "./target/test-permissions.xml");
79
80     }
81
82     private Permission buildCommonPermission(String id, String resourceName) {
83         Permission perm = new Permission();
84         perm.setCsid(id);
85         perm.setResourceName(resourceName);
86         perm.setEffect(EffectType.PERMIT);
87
88         ArrayList<PermissionAction> pas = new ArrayList<PermissionAction>();
89         perm.setAction(pas);
90
91         PermissionAction pa = new PermissionAction();
92         pa.setName(ActionType.CREATE);
93         pas.add(pa);
94         PermissionAction pa1 = new PermissionAction();
95         pa1.setName(ActionType.READ);
96         pas.add(pa1);
97         PermissionAction pa2 = new PermissionAction();
98         pa2.setName(ActionType.UPDATE);
99         pas.add(pa2);
100         PermissionAction pa3 = new PermissionAction();
101         pa3.setName(ActionType.DELETE);
102         pas.add(pa3);
103         return perm;
104     }
105
106     @Test
107     public void genPermissionsRoles() {
108         PermissionsRolesList psrsl = new PermissionsRolesList();
109         ArrayList<PermissionRole> prl = buildCommonPermissionRoles("1");
110         prl.addAll(buildCommonPermissionRoles("2"));
111         psrsl.setPermissionRole(prl);
112         toFile(psrsl, PermissionsRolesList.class, "./target/test-permissions-roles.xml");
113     }
114
115     private ArrayList<PermissionRole> buildCommonPermissionRoles(String id) {
116         ArrayList<PermissionRole> prl = new ArrayList<PermissionRole>();
117         PermissionRole pr = new PermissionRole();
118         pr.setPermissionId(id);
119         pr.setRoleName("ROLE_USERS");
120         prl.add(pr);
121         PermissionRole pr1 = new PermissionRole();
122         pr1.setPermissionId(id);
123         pr1.setRoleName("ROLE_ADMINISTRATOR");
124         prl.add(pr1);
125         return prl;
126     }
127 }