public XSubpart(SchedulingSubpart subpart, boolean courseCredit, OnlineSectioningHelper helper) { iUniqueId = subpart.getUniqueId(); iInstructionalType = sF3Z.format(subpart.getItype().getItype()) + subpart.getSchedulingSubpartSuffix(helper.getHibSession()); iAllowOverlap = subpart.isStudentAllowOverlap(); iName = subpart.getItype().getAbbv().trim(); iConfigId = subpart.getInstrOfferingConfig().getUniqueId(); iParentId = subpart.getParentSubpart() == null ? null : subpart.getParentSubpart().getUniqueId(); if (subpart.getCredit() != null) { iCreditAbbv = subpart.getCredit().creditAbbv(); iCreditText = subpart.getCredit().creditText(); } if (courseCredit) { for (CourseOffering co : subpart.getInstrOfferingConfig().getInstructionalOffering().getCourseOfferings()) { if (co.getCredit() != null) iCreditByCourse.put( co.getUniqueId(), new String[] {co.getCredit().creditAbbv(), co.getCredit().creditText()}); } } for (Class_ clazz : subpart.getClasses()) iSections.add(new XSection(clazz, helper)); Collections.sort(iSections); }