IEnrolment enrollment = (IEnrolment) obj;
IEnrollment enrollment = (IEnrollment) obj;
	public boolean isCurricularCourseApproved(ICurricularCourse curricularCourse) {		List studentApprovedEnrollments = this.getStudentApprovedEnrollments();		List result = (List) CollectionUtils.collect(				studentApprovedEnrollments, new Transformer() {					public Object transform(Object obj) {						IEnrolment enrollment = (IEnrolment) obj;						if (enrollment instanceof IEnrolmentInOptionalCurricularCourse) {							return (((IEnrolmentInOptionalCurricularCourse) enrollment)									.getCurricularCourseForOption());						} else {							return enrollment.getCurricularCourse();						}					}				});		if (result.contains(curricularCourse)) {			return true;		}		List studentNotNeedToEnrollCourses = this				.getStudentNotNeedToEnrollCourses();		if (studentNotNeedToEnrollCourses.contains(curricularCourse)) {			return true;		}		// TODO [DAVID]: Still missing to check if the student has any approved		// enrollment		// in a curricular course with a degree curricular plan equivalence.		return false;	}