View Javadoc

1   /*
2    * Copyright 2010 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.IdNamelessEntity;
20  
21  public interface CourseOfferingCrossListing 
22      extends IdNamelessEntity {
23  
24      /**
25       * The course offering code of the cross listing (not the original
26       * course it refers to).  This is a concatentation of the subject
27       * area/code and the course number suffix
28       * This is the alias
29       * E.g., ENGL101A, CHEM250
30       * 
31       * @name Code
32       */
33      public String getCode();
34  
35      /**
36       * The subject area/code for this cross listing.
37       * Example: In ENGL101A, the subject area/code is ENGL
38       * 
39       * @name Subject Area
40       */
41      public String getSubjectArea();
42      
43      /**
44       * Deprecated
45       * The department for this cross listing.
46       * This will return the same thing as getSubjectOrgId
47       * @name Department Org Id
48       */
49      @Deprecated
50      public String getDepartmentOrgId();
51  
52      /**
53       * This is the ID for that subject code as an org within the Org Service.
54       * Subject codes are stored in the Org table as an organization.
55       * Note: subject org id and subject area/code should be kept aligned (in case
56       * the subject code changes, but its ID stays the same).
57       *
58       * @impl In general, subject org ID should take precedence over subject area
59       * since the subject area can be found as the short name of the org corresponding
60       * to the subject org ID.
61       *
62       * @impl Reference implementation has the ID as ORGID-[subject area]
63       * For example, ORGID-ENGL
64       * This is not a requirement, but makes it easier to create the Org Id
65       *
66       * @name Subject Org Id
67       */
68      public String getSubjectOrgId();
69  
70      /**
71       * The "extra" portion of the code, which usually corresponds with the most
72       * detailed part of the number (i.e., everything besides the subject area/code).
73       * See comments in getCode().
74       * E.g., from ENGL101A, it's 101A.
75       * E.g., from CHEM200, it's 200.
76       *
77       * @name Course Number Suffix
78       */
79      public String getCourseNumberSuffix();
80  }