View Javadoc

1   /**
2    * Copyright 2005-2013 The Kuali Foundation
3    *
4    * Licensed under the Educational Community License, Version 2.0 (the "License");
5    * you may not use this file except in compliance with the License.
6    * You may obtain a copy of the License at
7    *
8    * http://www.opensource.org/licenses/ecl2.php
9    *
10   * Unless required by applicable law or agreed to in writing, software
11   * distributed under the License is distributed on an "AS IS" BASIS,
12   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   * See the License for the specific language governing permissions and
14   * limitations under the License.
15   */
16  package org.kuali.rice.kim.impl.permission;
17  
18  
19  
20  import java.util.List;
21  
22  import org.apache.commons.lang.StringUtils;
23  import org.kuali.rice.kim.api.KimConstants;
24  import org.kuali.rice.kim.api.identity.Person;
25  import org.kuali.rice.kim.api.permission.Permission;
26  import org.kuali.rice.kim.impl.group.GroupBo;
27  import org.kuali.rice.kim.impl.identity.PersonImpl;
28  import org.kuali.rice.kim.impl.role.RoleBo;
29  import org.springframework.util.AutoPopulatingList;
30  
31  //strange - hacky non-PBO
32  public class UberPermissionBo extends PermissionBo {
33  
34      private static final long serialVersionUID = 1L;
35  
36      private List<RoleBo> assignedToRoles = new AutoPopulatingList(RoleBo.class);
37      private String assignedToRoleNamespaceForLookup;
38      private String assignedToRoleNameForLookup;
39      private RoleBo assignedToRole = new RoleBo();
40      private String assignedToPrincipalNameForLookup;
41      private Person assignedToPrincipal = new PersonImpl();
42      private String assignedToGroupNamespaceForLookup;
43      private String assignedToGroupNameForLookup;
44      private GroupBo assignedToGroup = new GroupBo();
45      private String attributeName;
46      private String attributeValue;
47      private String detailCriteria;
48  
49      public static UberPermissionBo from(PermissionBo bo) {
50          if (bo == null) {
51              return null;
52          }
53          Permission.Builder builder =  Permission.Builder.create(bo);
54          return (UberPermissionBo) PermissionBo.from(builder.build());
55  
56      }
57      public String getAssignedToRolesToDisplay() {
58          StringBuffer assignedToRolesText = new StringBuffer();
59          for (RoleBo roleImpl: assignedToRoles) {
60              assignedToRolesText.append(roleImpl.getNamespaceCode().trim())
61                      .append(" ")
62                      .append(roleImpl.getName().trim())
63                      .append(KimConstants.KimUIConstants.COMMA_SEPARATOR);
64          }
65          return StringUtils.chomp(assignedToRolesText.toString(), KimConstants.KimUIConstants.COMMA_SEPARATOR);
66      }
67  
68      public List<RoleBo> getAssignedToRoles() {
69          return assignedToRoles;
70      }
71  
72      public void setAssignedToRoles(List<RoleBo> assignedToRoles) {
73          this.assignedToRoles = assignedToRoles;
74      }
75  
76      public String getAssignedToRoleNamespaceForLookup() {
77          return assignedToRoleNamespaceForLookup;
78      }
79  
80      public void setAssignedToRoleNamespaceForLookup(String assignedToRoleNamespaceForLookup) {
81          this.assignedToRoleNamespaceForLookup = assignedToRoleNamespaceForLookup;
82      }
83  
84      public String getAssignedToRoleNameForLookup() {
85          return assignedToRoleNameForLookup;
86      }
87  
88      public void setAssignedToRoleNameForLookup(String assignedToRoleNameForLookup) {
89          this.assignedToRoleNameForLookup = assignedToRoleNameForLookup;
90      }
91  
92      public RoleBo getAssignedToRole() {
93          return assignedToRole;
94      }
95  
96      public void setAssignedToRole(RoleBo assignedToRole) {
97          this.assignedToRole = assignedToRole;
98      }
99  
100     public String getAssignedToPrincipalNameForLookup() {
101         return assignedToPrincipalNameForLookup;
102     }
103 
104     public void setAssignedToPrincipalNameForLookup(String assignedToPrincipalNameForLookup) {
105         this.assignedToPrincipalNameForLookup = assignedToPrincipalNameForLookup;
106     }
107 
108     public Person getAssignedToPrincipal() {
109         return assignedToPrincipal;
110     }
111 
112     public void setAssignedToPrincipal(Person assignedToPrincipal) {
113         this.assignedToPrincipal = assignedToPrincipal;
114     }
115 
116     public String getAssignedToGroupNamespaceForLookup() {
117         return assignedToGroupNamespaceForLookup;
118     }
119 
120     public void setAssignedToGroupNamespaceForLookup(String assignedToGroupNamespaceForLookup) {
121         this.assignedToGroupNamespaceForLookup = assignedToGroupNamespaceForLookup;
122     }
123 
124     public String getAssignedToGroupNameForLookup() {
125         return assignedToGroupNameForLookup;
126     }
127 
128     public void setAssignedToGroupNameForLookup(String assignedToGroupNameForLookup) {
129         this.assignedToGroupNameForLookup = assignedToGroupNameForLookup;
130     }
131 
132     public GroupBo getAssignedToGroup() {
133         return assignedToGroup;
134     }
135 
136     public void setAssignedToGroup(GroupBo assignedToGroup) {
137         this.assignedToGroup = assignedToGroup;
138     }
139 
140     public String getAttributeName() {
141         return attributeName;
142     }
143 
144     public void setAttributeName(String attributeName) {
145         this.attributeName = attributeName;
146     }
147 
148     public String getAttributeValue() {
149         return attributeValue;
150     }
151 
152     public void setAttributeValue(String attributeValue) {
153         this.attributeValue = attributeValue;
154     }
155 
156     public String getDetailCriteria() {
157         return detailCriteria;
158     }
159 
160     public void setDetailCriteria(String detailCriteria) {
161         this.detailCriteria = detailCriteria;
162     }
163 
164 
165 }
166