1 package org.kuali.student.r2.lum.course.infc; 2 3 import org.kuali.student.r2.common.infc.IdNamelessEntity; 4 5 public interface CourseCrossListing extends IdNamelessEntity { 6 7 /** 8 * 9 * This is the concatenation of subject area/code plus the course 10 * number suffix of the cross-listed course (i.e., not the original 11 * course) 12 * E.g., ENGL100, CHEM250A 13 * 14 * @return 15 */ 16 public String getCode(); 17 18 /** 19 * 20 * This is the subject area also known as the subject code. 21 * See comments in getCode(). 22 * E.g., from ENGL101A, it's ENGL. 23 * 24 * @return 25 */ 26 public String getSubjectArea(); 27 28 /** 29 * This method has been replaced by getSubjectOrgId() 30 */ 31 @Deprecated 32 public String getDepartment(); 33 34 /** 35 * This is the ID for that subject code as an org within the Org Service. 36 * Subject codes are stored in the Org table as an organization. 37 * Note: subject org id and subject area/code should be kept aligned (in case 38 * the subject code changes, but its ID stays the same). 39 * 40 * @impl In general, subject org ID should take precedence over subject area 41 * since the subject area can be found as the short name of the org corresponding 42 * to the subject org ID. 43 * 44 * @impl Reference implementation has the ID as ORGID-[subject area] 45 * For example, ORGID-ENGL 46 * This is not a requirement, but makes it easier to create the Org Id 47 */ 48 public String getSubjectOrgId(); 49 50 /** 51 * The "extra" portion of the code, which usually corresponds with the most 52 * detailed part of the number (i.e., everything besides the subject area/code). 53 * See comments in getCode(). 54 * E.g., from ENGL101A, it's 101A. 55 * E.g., from CHEM200, it's 200. 56 */ 57 public String getCourseNumberSuffix(); 58 }