1 /**
2 * Copyright 2004-2014 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.kpme.core.api.location;
17
18 import java.util.List;
19
20 import org.kuali.kpme.core.api.bo.HrBusinessObjectContract;
21 import org.kuali.kpme.core.api.role.location.LocationPrincipalRoleMemberBoContract;
22
23 /**
24 * <p>LocationContract interface.</p>
25 *
26 */
27 public interface LocationContract extends HrBusinessObjectContract {
28
29 /**
30 * The Primary Key of a Location entry saved in a database
31 *
32 * <p>
33 * hrLocationId of Location
34 * <p>
35 *
36 * @return hrLocationId for Location
37 */
38 public String getHrLocationId();
39
40 /**
41 * Text field used to identify the location
42 *
43 * <p>
44 * location of Location
45 * <p>
46 *
47 * @return location for Location
48 */
49 public String getLocation();
50
51 /**
52 * Indicates the timezone for this location
53 *
54 * <p>
55 * timezone of Location
56 * <p>
57 *
58 * @return timezone for Location
59 */
60 public String getTimezone();
61
62 /**
63 * Text which describes the location code
64 *
65 * <p>
66 * description of Location
67 * <p>
68 *
69 * @return description for Location
70 */
71 public String getDescription();
72
73 // TODO: not sure if this field is needed...
74 public String getUserPrincipalId();
75
76 /**
77 * History flag for Location lookups
78 *
79 * <p>
80 * history of Location
81 * </p>
82 *
83 * @return Y if want to show history, N if not
84 */
85 public String getHistory();
86
87 /**
88 * Active Role member list for the Location
89 *
90 * <p>
91 * roleMembers of Location
92 * </p>
93 *
94 * @return roleMembers for Location
95 */
96 public List<? extends LocationPrincipalRoleMemberBoContract> getRoleMembers();
97
98 /**
99 * Inactive Role member list for the Location
100 *
101 * <p>
102 * roleMembers of Location
103 * </p>
104 *
105 * @return roleMembers for Location
106 */
107 public List<? extends LocationPrincipalRoleMemberBoContract> getInactiveRoleMembers();
108
109 }