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.courseoffering.infc;
18
19 import org.kuali.student.r2.common.infc.IdEntity;
20
21 import java.util.List;
22
23 /**
24 * The Activity Offering Cluster lists the allowable combinations of
25 * activity offerings by activity type which will constrain the number
26 * of RegistrationGroup's that will be generated.
27 *
28 * @author Kuali Student Team
29 */
30
31 public interface ActivityOfferingCluster
32 extends IdEntity {
33
34 /**
35 * Private name of ActivityOfferingCluster
36 * @name Private Name
37 */
38 public String getPrivateName();
39
40 /**
41 * Gets the format offering Id to which this template applies.
42 *
43 * @name Format Offering Id
44 * @required
45 */
46 public String getFormatOfferingId();
47
48 /**
49 * Gets the activity offering Id combinations. Each list within
50 * this list contains a list of Activity Offering Ids.
51 *
52 * This rule says that a RegistrationGroup comprising of a single
53 * activity offering Id from each and every list within the
54 * activity offering combinations should be created.
55 *
56 * (needs an example)
57 *
58 * @name Activity Offering Set
59 */
60 public List<? extends ActivityOfferingSet> getActivityOfferingSets();
61 }