001 /** 002 * Copyright 2004-2014 The Kuali Foundation 003 * 004 * Licensed under the Educational Community License, Version 2.0 (the "License"); 005 * you may not use this file except in compliance with the License. 006 * You may obtain a copy of the License at 007 * 008 * http://www.opensource.org/licenses/ecl2.php 009 * 010 * Unless required by applicable law or agreed to in writing, software 011 * distributed under the License is distributed on an "AS IS" BASIS, 012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 013 * See the License for the specific language governing permissions and 014 * limitations under the License. 015 */ 016 package org.kuali.kpme.core.location; 017 018 import java.util.ArrayList; 019 import java.util.List; 020 021 import javax.persistence.Transient; 022 023 import org.kuali.kpme.core.api.location.LocationContract; 024 import org.kuali.kpme.core.bo.HrBusinessObject; 025 import org.kuali.kpme.core.role.location.LocationPrincipalRoleMemberBo; 026 import org.kuali.kpme.core.util.HrConstants; 027 028 import com.google.common.collect.ImmutableList; 029 030 public class Location extends HrBusinessObject implements LocationContract { 031 032 private static final long serialVersionUID = 9015089510044249197L; 033 //KPME-2273/1965 Primary Business Keys List. 034 public static final ImmutableList<String> EQUAL_TO_FIELDS = new ImmutableList.Builder<String>() 035 .add("location") 036 .build(); 037 public static final String CACHE_NAME = HrConstants.CacheNamespace.NAMESPACE_PREFIX + "Location"; 038 039 private String hrLocationId; 040 private String location; 041 private String timezone; 042 private String description; 043 private String userPrincipalId; 044 private String history; 045 046 @Transient 047 private List<LocationPrincipalRoleMemberBo> roleMembers = new ArrayList<LocationPrincipalRoleMemberBo>(); 048 049 @Transient 050 private List<LocationPrincipalRoleMemberBo> inactiveRoleMembers = new ArrayList<LocationPrincipalRoleMemberBo>(); 051 052 @Override 053 public String getUniqueKey() { 054 return location; 055 } 056 057 @Override 058 public String getId() { 059 return getHrLocationId(); 060 } 061 062 @Override 063 public void setId(String id) { 064 setHrLocationId(id); 065 } 066 067 public String getHrLocationId() { 068 return hrLocationId; 069 } 070 071 public void setHrLocationId(String hrLocationId) { 072 this.hrLocationId = hrLocationId; 073 } 074 075 public String getLocation() { 076 return location; 077 } 078 079 public void setLocation(String location) { 080 this.location = location; 081 } 082 083 public String getTimezone() { 084 return timezone; 085 } 086 087 public void setTimezone(String timezone) { 088 this.timezone = timezone; 089 } 090 091 public String getDescription() { 092 return description; 093 } 094 095 public void setDescription(String description) { 096 this.description = description; 097 } 098 099 public String getUserPrincipalId() { 100 return userPrincipalId; 101 } 102 103 public void setUserPrincipalId(String userPrincipalId) { 104 this.userPrincipalId = userPrincipalId; 105 } 106 107 public String getHistory() { 108 return history; 109 } 110 111 public void setHistory(String history) { 112 this.history = history; 113 } 114 115 public List<LocationPrincipalRoleMemberBo> getRoleMembers() { 116 return roleMembers; 117 } 118 119 public void addRoleMember(LocationPrincipalRoleMemberBo roleMemberBo) { 120 roleMembers.add(roleMemberBo); 121 } 122 123 public void removeRoleMember(LocationPrincipalRoleMemberBo roleMemberBo) { 124 roleMembers.remove(roleMemberBo); 125 } 126 127 public void setRoleMembers(List<LocationPrincipalRoleMemberBo> roleMembers) { 128 this.roleMembers = roleMembers; 129 } 130 131 public List<LocationPrincipalRoleMemberBo> getInactiveRoleMembers() { 132 return inactiveRoleMembers; 133 } 134 135 public void addInactiveRoleMember(LocationPrincipalRoleMemberBo inactiveRoleMemberBo) { 136 inactiveRoleMembers.add(inactiveRoleMemberBo); 137 } 138 139 public void removeInactiveRoleMember(LocationPrincipalRoleMemberBo inactiveRoleMemberBo) { 140 inactiveRoleMembers.remove(inactiveRoleMemberBo); 141 } 142 143 public void setInactiveRoleMembers(List<LocationPrincipalRoleMemberBo> inactiveRoleMembers) { 144 this.inactiveRoleMembers = inactiveRoleMembers; 145 } 146 147 }