]> git.aero2k.de Git - tmp/jakarta-migration.git/blob
77e702128cd544b8e7ecfb7430a1ca0e715280dc
[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 package org.collectionspace.services.authorization.storage;
25
26 import org.collectionspace.services.authorization.PermissionRole;
27 import org.collectionspace.services.authorization.SubjectType;
28 import org.collectionspace.services.common.context.ServiceContext;
29 import org.collectionspace.services.common.context.ServiceContextProperties;
30
31 /**
32  *
33  * @author 
34  */
35 public class PermissionRoleUtil {
36
37     static SubjectType getRelationSubject(ServiceContext ctx) {
38         Object o = ctx.getProperty(ServiceContextProperties.SUBJECT);
39         if (o == null) {
40             throw new IllegalArgumentException(ServiceContextProperties.SUBJECT +
41                     " property is missing in context "
42                     + ctx.toString());
43         }
44         return (SubjectType) o;
45     }
46
47
48     static SubjectType getRelationSubject(ServiceContext ctx, PermissionRole pr) {
49         SubjectType subject = pr.getSubject();
50         if (subject == null) {
51             //it is not required to give subject as URI determines the subject
52             subject = getRelationSubject(ctx);
53         }
54         return subject;
55     }
56 }