| Classes in this File | Line Coverage | Branch Coverage | Complexity | ||||
| Person |
|
| 1.0;1 |
| 1 | /** | |
| 2 | * Copyright 2005-2011 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.api.identity; | |
| 17 | ||
| 18 | import org.kuali.rice.core.api.util.type.KualiDecimal; | |
| 19 | import org.kuali.rice.krad.bo.ExternalizableBusinessObject; | |
| 20 | ||
| 21 | import java.util.List; | |
| 22 | import java.util.Map; | |
| 23 | ||
| 24 | /** | |
| 25 | * Person object for use by the KNS and KNS-based applications. This provides an abstraction layer | |
| 26 | * between application code and the KIM objects to simplify use. | |
| 27 | * | |
| 28 | * @author Kuali Rice Team (rice.collab@kuali.org) | |
| 29 | * | |
| 30 | */ | |
| 31 | public interface Person extends ExternalizableBusinessObject { | |
| 32 | ||
| 33 | String getPrincipalId(); | |
| 34 | String getPrincipalName(); | |
| 35 | String getEntityId(); | |
| 36 | String getEntityTypeCode(); | |
| 37 | ||
| 38 | /** | |
| 39 | * The first name from the default name record for the entity. | |
| 40 | */ | |
| 41 | String getFirstName(); | |
| 42 | String getFirstNameUnmasked(); | |
| 43 | String getMiddleName(); | |
| 44 | String getMiddleNameUnmasked(); | |
| 45 | String getLastName(); | |
| 46 | String getLastNameUnmasked(); | |
| 47 | ||
| 48 | /* | |
| 49 | * Method which composites the first, middle and last names. | |
| 50 | */ | |
| 51 | String getName(); | |
| 52 | String getNameUnmasked(); | |
| 53 | ||
| 54 | String getEmailAddress(); | |
| 55 | String getEmailAddressUnmasked(); | |
| 56 | ||
| 57 | /** | |
| 58 | * Returns line1 of the default address for the Person. Will lazy-load the information from the | |
| 59 | * IdentityManagementService if requested. | |
| 60 | */ | |
| 61 | String getAddressLine1(); | |
| 62 | String getAddressLine1Unmasked(); | |
| 63 | /** | |
| 64 | * Returns line2 of the default address for the Person. Will lazy-load the information from the | |
| 65 | * IdentityManagementService if requested. | |
| 66 | */ | |
| 67 | String getAddressLine2(); | |
| 68 | String getAddressLine2Unmasked(); | |
| 69 | ||
| 70 | /** | |
| 71 | * Returns line3 of the default address for the Person. Will lazy-load the information from the | |
| 72 | * IdentityManagementService if requested. | |
| 73 | */ | |
| 74 | String getAddressLine3(); | |
| 75 | String getAddressLine3Unmasked(); | |
| 76 | /** | |
| 77 | * Returns the city name from the default address for the Person. Will lazy-load the information from the | |
| 78 | * IdentityManagementService if requested. | |
| 79 | */ | |
| 80 | String getAddressCity(); | |
| 81 | String getAddressCityUnmasked(); | |
| 82 | /** | |
| 83 | * Returns the state code from the default address for the Person. Will lazy-load the information from the | |
| 84 | * IdentityManagementService if requested. | |
| 85 | */ | |
| 86 | String getAddressStateProvinceCode(); | |
| 87 | String getAddressStateProvinceCodeUnmasked(); | |
| 88 | /** | |
| 89 | * Returns the postal code from the default address for the Person. Will lazy-load the information from the | |
| 90 | * IdentityManagementService if requested. | |
| 91 | */ | |
| 92 | String getAddressPostalCode(); | |
| 93 | String getAddressPostalCodeUnmasked(); | |
| 94 | /** | |
| 95 | * Returns the country code from the default address for the Person. Will lazy-load the information from the | |
| 96 | * IdentityManagementService if requested. | |
| 97 | */ | |
| 98 | String getAddressCountryCode(); | |
| 99 | String getAddressCountryCodeUnmasked(); | |
| 100 | ||
| 101 | /** Returns the default phone number for the entity. | |
| 102 | */ | |
| 103 | String getPhoneNumber(); | |
| 104 | String getPhoneNumberUnmasked(); | |
| 105 | ||
| 106 | String getCampusCode(); | |
| 107 | ||
| 108 | Map<String,String> getExternalIdentifiers(); | |
| 109 | ||
| 110 | /** Checks whether the person has an affiliation of a particular type: staff/faculty/student/etc... */ | |
| 111 | boolean hasAffiliationOfType( String affiliationTypeCode ); | |
| 112 | ||
| 113 | List<String> getCampusCodesForAffiliationOfType(String affiliationTypeCode); | |
| 114 | ||
| 115 | String getEmployeeStatusCode(); | |
| 116 | String getEmployeeTypeCode(); | |
| 117 | KualiDecimal getBaseSalaryAmount(); | |
| 118 | ||
| 119 | String getExternalId( String externalIdentifierTypeCode ); | |
| 120 | ||
| 121 | String getPrimaryDepartmentCode(); | |
| 122 | ||
| 123 | String getEmployeeId(); | |
| 124 | boolean isActive(); | |
| 125 | } |