Coverage Report - org.kuali.rice.kew.user.UserUtils
 
Classes in this File Line Coverage Branch Coverage Complexity
UserUtils
0%
0/18
0%
0/20
4.25
 
 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.kew.user;
 17  
 
 18  
 import org.apache.commons.lang.StringUtils;
 19  
 import org.kuali.rice.kew.service.KEWServiceLocator;
 20  
 import org.kuali.rice.kew.web.session.UserSession;
 21  
 import org.kuali.rice.kim.bo.Person;
 22  
 import org.kuali.rice.kim.bo.entity.KimEntityPrivacyPreferences;
 23  
 import org.kuali.rice.kim.bo.entity.KimPrincipal;
 24  
 import org.kuali.rice.kim.service.IdentityManagementService;
 25  
 import org.kuali.rice.kim.service.KIMServiceLocator;
 26  
 import org.kuali.rice.kim.service.PersonService;
 27  
 import org.kuali.rice.kns.util.ObjectUtils;
 28  
 
 29  
 /**
 30  
  * Provides some utility methods for translating user ID types.
 31  
  *
 32  
  * @author Kuali Rice Team (rice.collab@kuali.org)
 33  
  */
 34  0
 public class UserUtils {
 35  
 
 36  0
         private static final org.apache.log4j.Logger LOG = org.apache.log4j.Logger.getLogger(UserUtils.class);
 37  
 
 38  
         private static PersonService<Person> personService;
 39  
         private static IdentityManagementService identityManagementService;
 40  
         
 41  
         private static final String RESTRICTED_DATA_MASK = "xxxxxx";
 42  
         
 43  
         public static String getIdValue(String idType, Person user) {
 44  0
             if ("workflowId".equalsIgnoreCase(idType) || "w".equalsIgnoreCase(idType) || "principalId".equalsIgnoreCase(idType)) {
 45  0
               return user.getPrincipalId();
 46  0
             } else if ("authenticationId".equalsIgnoreCase(idType) || "a".equalsIgnoreCase(idType) || "principalName".equalsIgnoreCase(idType)) {
 47  0
               return user.getPrincipalName();
 48  0
             } else if ("emplId".equalsIgnoreCase(idType) || "e".equalsIgnoreCase(idType)) {
 49  0
               return user.getEmployeeId();
 50  
             } else {
 51  0
               LOG.error("Could not determine ID Value for given id type!" + idType);
 52  
             }
 53  0
             return null;
 54  
           }
 55  
 
 56  
         //public static String getDisplayableName(UserSession userSession, String principalId) {
 57  
         //        return getDisplayableName(userSession, KEWServiceLocator.getIdentityHelperService().getPrincipal(principalId));
 58  
         //}
 59  
         
 60  
         /*
 61  
      * @deprecated  Person getEmailName method accounts for privacy.
 62  
      */
 63  
     //@Deprecated
 64  
         //public static String getDisplayableName(UserSession userSession, KimPrincipal principal) {
 65  
         //        if (userSession != null && !userSession.getPrincipalId().equals(principal.getPrincipalId()) && isEntityNameRestricted(principal.getEntityId())) {
 66  
         //                return RESTRICTED_DATA_MASK;
 67  
         //        }
 68  
         //        Person person = getPersonService().getPerson(principal.getPrincipalId());
 69  
         //        return person.getName();
 70  
         //}
 71  
         
 72  
         public static String getTransposedName(UserSession userSession, KimPrincipal principal) {
 73  0
                 Person person = getPersonService().getPerson(principal.getPrincipalId());
 74  0
                 return person.getName(); //contructTransposedName(person);
 75  
         }
 76  
         
 77  
         //private static String contructTransposedName(Person person) {
 78  
         //        return person.getLastName() + (StringUtils.isNotBlank(person.getFirstName())?", " + person.getFirstName():"");
 79  
         //}
 80  
 
 81  
         /*
 82  
          * @deprecated  Person getEmailAddress method accounts for privacy.
 83  
          */
 84  
         //@Deprecated
 85  
         //public static String getDisplayableEmailAddress(UserSession userSession, KimPrincipal principal) {
 86  
         //        if (userSession != null && !userSession.getPrincipalId().equals(principal.getPrincipalId()) && isEntityEmailRestricted(principal.getEntityId())) {
 87  
         //                return RESTRICTED_DATA_MASK;
 88  
         //        }
 89  
         //        Person person = getPersonService().getPerson(principal.getPrincipalId());
 90  
         //        return person.getEmailAddress();
 91  
         //}
 92  
         
 93  
         //public static boolean isEntityNameRestricted(String entityId) {
 94  
         //        KimEntityPrivacyPreferences privacy = getIdentityManagementService().getEntityPrivacyPreferences( entityId );
 95  
         //        if ( ObjectUtils.isNotNull(privacy) ) {
 96  
         //                return privacy.isSuppressName();
 97  
         //        }
 98  
         //        return false;
 99  
         //}
 100  
 
 101  
         //public static boolean isEntityEmailRestricted(String entityId) {
 102  
         //        KimEntityPrivacyPreferences privacy = getIdentityManagementService().getEntityPrivacyPreferences( entityId );
 103  
         //        if (ObjectUtils.isNotNull(privacy) ) {
 104  
         //                return privacy.isSuppressEmail();
 105  
         //        }
 106  
         //        return false;
 107  
         //}
 108  
 
 109  
         /**
 110  
          * @return the personService
 111  
          */
 112  
         public static PersonService<Person> getPersonService() {
 113  0
                 if ( personService == null ) {
 114  0
                         personService = KIMServiceLocator.getPersonService();
 115  
                 }
 116  0
                 return personService;
 117  
         }
 118  
 
 119  
         /**
 120  
          * @return the identityManagementService
 121  
          */
 122  
         public static IdentityManagementService getIdentityManagementService() {
 123  0
                 if ( identityManagementService == null ) {
 124  0
                         identityManagementService = KIMServiceLocator.getIdentityManagementService();
 125  
                 }
 126  0
                 return identityManagementService;
 127  
         }
 128  
 
 129  
 }