Coverage Report - org.kuali.rice.kim.bo.ui.KimDocumentRoleMember
 
Classes in this File Line Coverage Branch Coverage Complexity
KimDocumentRoleMember
0%
0/72
0%
0/38
1.607
 
 1  
 /*
 2  
  * Copyright 2007-2009 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.bo.ui;
 17  
 
 18  
 import java.util.ArrayList;
 19  
 import java.util.List;
 20  
 
 21  
 import javax.persistence.Column;
 22  
 import javax.persistence.Entity;
 23  
 import javax.persistence.Table;
 24  
 import javax.persistence.Transient;
 25  
 
 26  
 import org.kuali.rice.kim.bo.Person;
 27  
 import org.kuali.rice.kim.bo.entity.dto.KimPrincipalInfo;
 28  
 import org.kuali.rice.kim.bo.group.dto.GroupInfo;
 29  
 import org.kuali.rice.kim.bo.role.dto.KimRoleInfo;
 30  
 import org.kuali.rice.kim.bo.types.dto.AttributeSet;
 31  
 import org.kuali.rice.kim.service.KIMServiceLocator;
 32  
 import org.kuali.rice.kim.util.KimConstants;
 33  
 import org.kuali.rice.kns.bo.BusinessObject;
 34  
 import org.kuali.rice.kns.util.TypedArrayList;
 35  
 
 36  
 /**
 37  
  * This is a description of what this class does - shyu don't forget to fill this in. 
 38  
  * 
 39  
  * @author Kuali Rice Team (rice.collab@kuali.org)
 40  
  *
 41  
  */
 42  
 @Entity
 43  
 @Table(name="KRIM_PND_ROLE_MBR_MT")
 44  
 public class KimDocumentRoleMember  extends KimDocumentBoBase {
 45  
         private static final long serialVersionUID = -2463865643038170979L;
 46  
 
 47  
         @Column(name="ROLE_MBR_ID")
 48  
         protected String roleMemberId;
 49  
         
 50  
         @Column(name="ROLE_ID")
 51  
         protected String roleId;
 52  
         @Column(name="MBR_ID")
 53  
         protected String memberId;
 54  
         
 55  
         //TODO: remove the default
 56  0
         @Column(name="MBR_TYP_CD")
 57  
         protected String memberTypeCode = KimConstants.KimGroupMemberTypes.PRINCIPAL_MEMBER_TYPE;
 58  
         @Column(name="MBR_NM")
 59  
         protected String memberName;
 60  
         @Column(name="MBR_NMSPC")
 61  
         protected String memberNamespaceCode;
 62  
         
 63  
         protected String memberFullName;
 64  
 
 65  0
         protected List <KimDocumentRoleQualifier> qualifiers = new TypedArrayList(KimDocumentRoleQualifier.class);
 66  
         protected String qualifiersToDisplay;
 67  
         
 68  
         @Transient
 69  
         private List<KimDocumentRoleResponsibilityAction> roleRspActions;
 70  
 
 71  0
         public KimDocumentRoleMember() {
 72  0
                 qualifiers = new ArrayList <KimDocumentRoleQualifier>();
 73  0
                 roleRspActions = new ArrayList <KimDocumentRoleResponsibilityAction>();
 74  0
         }
 75  
 
 76  
         public int getNumberOfQualifiers(){
 77  0
                 return qualifiers==null?0:qualifiers.size();
 78  
         }
 79  
         
 80  
         /**
 81  
          * @return the memberId
 82  
          */
 83  
         public String getMemberId() {
 84  0
                 return this.memberId;
 85  
         }
 86  
 
 87  
         /**
 88  
          * @param memberId the memberId to set
 89  
          */
 90  
         public void setMemberId(String memberId) {
 91  0
                 this.memberId = memberId;
 92  0
         }
 93  
 
 94  
         public String getRoleMemberId() {
 95  0
                 return this.roleMemberId;
 96  
         }
 97  
 
 98  
         public void setRoleMemberId(String roleMemberId) {
 99  0
                 this.roleMemberId = roleMemberId;
 100  0
         }
 101  
 
 102  
         public String getRoleId() {
 103  0
                 return this.roleId;
 104  
         }
 105  
 
 106  
         public void setRoleId(String roleId) {
 107  0
                 this.roleId = roleId;
 108  0
         }
 109  
 
 110  
         public KimDocumentRoleQualifier getQualifier(String kimAttributeDefnId) {
 111  0
                 for(KimDocumentRoleQualifier qualifier:qualifiers){
 112  0
                         if(qualifier.getKimAttrDefnId().equals(kimAttributeDefnId))
 113  0
                                 return qualifier;
 114  
                 }
 115  0
                 return null;
 116  
         }
 117  
 
 118  
         public List<KimDocumentRoleQualifier> getQualifiers() {
 119  0
                 return this.qualifiers;
 120  
         }
 121  
 
 122  
         public void setQualifiers(List<KimDocumentRoleQualifier> qualifiers) {
 123  0
                 this.qualifiers = qualifiers;
 124  0
         }
 125  
 
 126  
         /**
 127  
          * @return the memberTypeCode
 128  
          */
 129  
         public String getMemberTypeCode() {
 130  0
                 return this.memberTypeCode;
 131  
         }
 132  
 
 133  
         /**
 134  
          * @param memberTypeCode the memberTypeCode to set
 135  
          */
 136  
         public void setMemberTypeCode(String memberTypeCode) {
 137  0
                 this.memberTypeCode = memberTypeCode;
 138  0
         }
 139  
 
 140  
         /**
 141  
          * @return the memberName
 142  
          */
 143  
         public String getMemberName() {
 144  0
                 if ( memberName == null ) {
 145  0
                         populateDerivedValues();
 146  
                 }
 147  0
                 return memberName;
 148  
         }
 149  
 
 150  
         /**
 151  
          * @param memberName the memberName to set
 152  
          */
 153  
         public void setMemberName(String memberName) {
 154  0
                 this.memberName = memberName;
 155  0
         }
 156  
 
 157  
         public List<KimDocumentRoleResponsibilityAction> getRoleRspActions() {
 158  0
                 return this.roleRspActions;
 159  
         }
 160  
 
 161  
         public void setRoleRspActions(
 162  
                         List<KimDocumentRoleResponsibilityAction> roleRspActions) {
 163  0
                 this.roleRspActions = roleRspActions;
 164  0
         }
 165  
 
 166  
         /**
 167  
          * @return the memberNamespaceCode
 168  
          */
 169  
         public String getMemberNamespaceCode() {
 170  0
                 if ( memberNamespaceCode == null ) {
 171  0
                         populateDerivedValues();
 172  
                 }
 173  0
                 return memberNamespaceCode;
 174  
         }
 175  
 
 176  
         /**
 177  
          * @param memberNamespaceCode the memberNamespaceCode to set
 178  
          */
 179  
         public void setMemberNamespaceCode(String memberNamespaceCode) {
 180  0
                 this.memberNamespaceCode = memberNamespaceCode;
 181  0
         }
 182  
 
 183  
         protected void populateDerivedValues() {
 184  0
         if(KimConstants.KimUIConstants.MEMBER_TYPE_PRINCIPAL_CODE.equals(getMemberTypeCode())){
 185  0
                 KimPrincipalInfo principalInfo = null;
 186  0
                 principalInfo = KIMServiceLocator.getIdentityManagementService().getPrincipal(getMemberId());
 187  0
                 if (principalInfo != null) {
 188  0
                         setMemberName(principalInfo.getPrincipalName());
 189  
                 }                                
 190  0
         } else if(KimConstants.KimUIConstants.MEMBER_TYPE_GROUP_CODE.equals(getMemberTypeCode())){
 191  0
                 GroupInfo groupInfo = null;
 192  0
                 groupInfo = KIMServiceLocator.getIdentityManagementService().getGroup(getMemberId());
 193  0
                 if (groupInfo != null) {
 194  0
                         setMemberName(groupInfo.getGroupName());
 195  0
                         setMemberNamespaceCode(groupInfo.getNamespaceCode());
 196  
                 }
 197  
                 
 198  0
         } else if(KimConstants.KimUIConstants.MEMBER_TYPE_ROLE_CODE.equals(getMemberTypeCode())){
 199  0
                 KimRoleInfo roleInfo = null;
 200  0
                 roleInfo = KIMServiceLocator.getRoleService().getRole(getMemberId());                
 201  0
                 setMemberName(roleInfo.getRoleName());
 202  0
                 setMemberNamespaceCode(roleInfo.getNamespaceCode());
 203  
         }
 204  0
         }
 205  
         
 206  
         public boolean isRole(){
 207  0
                 return getMemberTypeCode()!=null && getMemberTypeCode().equals(KimConstants.KimUIConstants.MEMBER_TYPE_ROLE_CODE);
 208  
         }
 209  
         
 210  
         public boolean isGroup(){
 211  0
                 return getMemberTypeCode()!=null && getMemberTypeCode().equals(KimConstants.KimUIConstants.MEMBER_TYPE_GROUP_CODE);
 212  
         }
 213  
 
 214  
         public boolean isPrincipal(){
 215  0
                 return getMemberTypeCode()!=null && getMemberTypeCode().equals(KimConstants.KimUIConstants.MEMBER_TYPE_PRINCIPAL_CODE);
 216  
         }
 217  
 
 218  
         public AttributeSet getQualifierAsAttributeSet() {
 219  0
                 AttributeSet m = new AttributeSet();
 220  0
                 for ( KimDocumentRoleQualifier data : getQualifiers() ) {
 221  0
                         if (data.getKimAttribute() == null){
 222  0
                                 data.refreshReferenceObject("kimAttribute");
 223  
                         }
 224  0
                         if (data.getKimAttribute() != null){
 225  0
                                 m.put( data.getKimAttribute().getAttributeName(), data.getAttrVal() );
 226  
                         }
 227  
                 }
 228  0
                 return m;
 229  
         }
 230  
 
 231  
         /**
 232  
          * @return the qualifiersToDisplay
 233  
          */
 234  
         public String getQualifiersToDisplay() {
 235  0
                 return this.qualifiersToDisplay;
 236  
         }
 237  
 
 238  
         /**
 239  
          * @param qualifiersToDisplay the qualifiersToDisplay to set
 240  
          */
 241  
         public void setQualifiersToDisplay(String qualifiersToDisplay) {
 242  0
                 this.qualifiersToDisplay = qualifiersToDisplay;
 243  0
         }
 244  
         
 245  
         /**
 246  
          * @return the memberFullName
 247  
          */
 248  
         public String getMemberFullName() {
 249  0
                 return this.memberFullName;
 250  
         }
 251  
 
 252  
         /**
 253  
          * @param memberFullName the memberFullName to set
 254  
          */
 255  
         public void setMemberFullName(String memberFullName) {
 256  0
                 this.memberFullName = memberFullName;
 257  0
         }
 258  
 
 259  
 }