1 /** 2 * Copyright 2012 The Kuali Foundation 3 * 4 * Licensed under the Educational Community License, Version 2.0 (the 5 * "License"); you may not use this file except in compliance with the 6 * License. You may obtain a copy of the License at 7 * 8 * http://www.osedu.org/licenses/ECL-2.0 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 13 * implied. See the License for the specific language governing 14 * permissions and limitations under the License. 15 */ 16 17 package org.kuali.student.enrollment.roster.infc; 18 19 import java.util.List; 20 21 import org.kuali.student.r2.common.dto.TimeAmountInfo; 22 import org.kuali.student.r2.common.infc.IdEntity; 23 24 /** 25 * LprRoster is a collection or group of LPR Roster entries which can 26 * be used to model any collection of LPRs at the class I level, 27 * e.g. a garde sheet or a waitlist for a course. The LPR roster 28 * entries in an LPR Roster will always belong to of a particular 29 * course or to a section(s) within the course. The associated LUIs 30 * are a way to show this relation. 31 * 32 * @author Kuali Student Team (sambit) 33 */ 34 35 public interface LprRoster 36 extends IdEntity { 37 38 /** 39 * This method gets the Ids of the associated LUIs for the LPR 40 * Roster. A roster may be serve one or more Luis. 41 * 42 * @name Associated Lui Ids 43 */ 44 public List<String> getAssociatedLuiIds(); 45 46 /** 47 * The maximum capacity of the roster. This number contraints the 48 * maximum number of roster entries in this roster. If null, there 49 * is no roster size constraint. Size constraints are used with 50 * rosters that implement waitlists. 51 * 52 * @Maximum Capacity 53 */ 54 public Integer getMaximumCapacity(); 55 56 /** 57 * Is check in required to maintain an active status in this 58 * roster. This is an optional flag for use with rosters that 59 * implement waitlist checkins. 60 * 61 * @name CheckIn Required 62 * @required 63 */ 64 public Boolean getCheckInRequired(); 65 66 /** 67 * The frequency in terms of time period that an entry has to 68 * check in to maintain active status in this roster. This is only 69 * populated if check in is required for the roster. 70 * 71 * This is an optional value for use with rosters that implement 72 * waitlist checkins. 73 * 74 * @name CheckIn Frequency 75 */ 76 public TimeAmountInfo getCheckInFrequency(); 77 }