@Override public boolean equals(Object other) { if (!(other instanceof Gradebook)) { return false; } Gradebook gb = (Gradebook)other; return new EqualsBuilder(). append(uid, gb.getUid()).isEquals(); }
/** * Get the list of students for the given gradebook * * @param gradebook the gradebook for the site * @return a list of uuids for the students */ private List<String> getStudentsForGradebook(final Gradebook gradebook) { final List<EnrollmentRecord> enrolments = getSectionAwareness().getSiteMembersInRole(gradebook.getUid(), Role.STUDENT); final List<String> rval = enrolments.stream() .map(EnrollmentRecord::getUser) .map(User::getUserUid) .collect(Collectors.toList()); return rval; }
/** * Get the list of students for the given gradebook * * @param gradebook the gradebook for the site * @return a list of uuids for the students */ private List<String> getStudentsForGradebook(final Gradebook gradebook) { final List<EnrollmentRecord> enrolments = getSectionAwareness().getSiteMembersInRole(gradebook.getUid(), Role.STUDENT); final List<String> rval = enrolments.stream() .map(EnrollmentRecord::getUser) .map(User::getUserUid) .collect(Collectors.toList()); return rval; }
protected Map<String, Set<GradebookAssignment>> getVisibleExternalAssignments(final Gradebook gradebook, final Collection<String> studentIds, final List<GradebookAssignment> assignments) { final String gradebookUid = gradebook.getUid(); final Map<String, List<String>> allExternals = this.externalAssessmentService.getVisibleExternalAssignments(gradebookUid, studentIds); final Map<String, GradebookAssignment> allRequested = new HashMap<String, GradebookAssignment>(); for (final GradebookAssignment a : assignments) { if (a.isExternallyMaintained()) { allRequested.put(a.getExternalId(), a); } } final Map<String, Set<GradebookAssignment>> visible = new HashMap<String, Set<GradebookAssignment>>(); for (final String studentId : allExternals.keySet()) { if (studentIds.contains(studentId)) { final Set<GradebookAssignment> studentAssignments = new HashSet<GradebookAssignment>(); for (final String assignmentId : allExternals.get(studentId)) { if (allRequested.containsKey(assignmentId)) { studentAssignments.add(allRequested.get(assignmentId)); } } visible.put(studentId, studentAssignments); } } return visible; }
protected Map<String, Set<GradebookAssignment>> getVisibleExternalAssignments(Gradebook gradebook, Collection<String> studentIds, List<GradebookAssignment> assignments) { String gradebookUid = gradebook.getUid(); Map<String, List<String>> allExternals = externalAssessmentService.getVisibleExternalAssignments(gradebookUid, studentIds); Map<String, GradebookAssignment> allRequested = new HashMap<String, GradebookAssignment>(); for (GradebookAssignment a : assignments) { if (a.isExternallyMaintained()) { allRequested.put(a.getExternalId(), a); } } Map<String, Set<GradebookAssignment>> visible = new HashMap<String, Set<GradebookAssignment>>(); for (String studentId : allExternals.keySet()) { if (studentIds.contains(studentId)) { Set<GradebookAssignment> studentAssignments = new HashSet<GradebookAssignment>(); for (String assignmentId : allExternals.get(studentId)) { if (allRequested.containsKey(assignmentId)) { studentAssignments.add(allRequested.get(assignmentId)); } } visible.put(studentId, studentAssignments); } } return visible; }
public String getGradebookUid(final Long id) { return getHibernateTemplate().load(Gradebook.class, id).getUid(); }
public String getGradebookUid(Long id) { return getHibernateTemplate().load(Gradebook.class, id).getUid(); }
/** * * @param name the assignment name (will not be trimmed) * @param gradebook the gradebook to check * @return true if an assignment with the given name already exists in this gradebook. */ protected boolean assignmentNameExists(final String name, final Gradebook gradebook) { final Number count = (Number) getHibernateTemplate().execute(session -> session .createCriteria(GradableObject.class) .createAlias("gradebook", "gb") .add(Restrictions.eq("name", name)) .add(Restrictions.eq("gb.uid", gradebook.getUid())) .add(Restrictions.eq("removed", false)) .setProjection(Projections.rowCount()) .uniqueResult()); return count.intValue() > 0; }
/** * * @param name the assignment name (will not be trimmed) * @param gradebook the gradebook to check * @return true if an assignment with the given name already exists in this gradebook. */ protected boolean assignmentNameExists(String name, Gradebook gradebook) { Number count = (Number) getHibernateTemplate().execute(session -> session .createCriteria(GradableObject.class) .createAlias("gradebook", "gb") .add(Restrictions.eq("name", name)) .add(Restrictions.eq("gb.uid", gradebook.getUid())) .add(Restrictions.eq("removed", false)) .setProjection(Projections.rowCount()) .uniqueResult()); return count.intValue() > 0; }
final Long gboId = gbo.getId(); final Gradebook gradebook = gbo.getGradebook(); if (!gradebookUid.equals(gradebook.getUid())) {
final Long gboId = gbo.getId(); final Gradebook gradebook = gbo.getGradebook(); if (!gradebookUid.equals(gradebook.getUid()))
protected boolean studentCanView(final String studentId, final GradebookAssignment assignment) { if (assignment.isExternallyMaintained()) { try { final String gbUid = assignment.getGradebook().getUid(); final String extId = assignment.getExternalId(); if (this.externalAssessmentService.isExternalAssignmentGrouped(gbUid, extId)) { return this.externalAssessmentService.isExternalAssignmentVisible(gbUid, extId, studentId); } } catch (final GradebookNotFoundException e) { if (log.isDebugEnabled()) { log.debug("Bogus graded assignment checked for course grades: " + assignment.getId()); } } } // We assume that the only disqualifying condition is that the external assignment // is grouped and the student is not a member of one of the groups allowed. return true; }
protected boolean studentCanView(String studentId, GradebookAssignment assignment) { if (assignment.isExternallyMaintained()) { try { String gbUid = assignment.getGradebook().getUid(); String extId = assignment.getExternalId(); if (externalAssessmentService.isExternalAssignmentGrouped(gbUid, extId)) { return externalAssessmentService.isExternalAssignmentVisible(gbUid, extId, studentId); } } catch (GradebookNotFoundException e) { if (log.isDebugEnabled()) { log.debug("Bogus graded assignment checked for course grades: " + assignment.getId()); } } } // We assume that the only disqualifying condition is that the external assignment // is grouped and the student is not a member of one of the groups allowed. return true; }
protected void finalizeNullGradeRecords(final Gradebook gradebook) { final Set<String> studentUids = getAllStudentUids(gradebook.getUid()); final Date now = new Date(); final String graderId = getAuthn().getUserUid();
protected void finalizeNullGradeRecords(final Gradebook gradebook) { final Set<String> studentUids = getAllStudentUids(gradebook.getUid()); final Date now = new Date(); final String graderId = getAuthn().getUserUid();
if (log.isWarnEnabled()) log.warn("No default GradeMapping found for new Gradebook=" + gradebook.getUid() + "; will set default to " + defaultGradeMapping.getName());
!persistedCategory.getGradebook().getId().equals(gradebook.getId())) { throw new InvalidCategoryException("The category with id " + categoryId + " is not valid for gradebook " + gradebook.getUid());
!persistedCategory.getGradebook().getId().equals(gradebook.getId())) { throw new InvalidCategoryException("The category with id " + categoryId + " is not valid for gradebook " + gradebook.getUid());
private CategoryDefinition getCategoryDefinition(final Category category) { final CategoryDefinition categoryDef = new CategoryDefinition(); if (category != null) { categoryDef.setId(category.getId()); categoryDef.setName(category.getName()); categoryDef.setWeight(category.getWeight()); categoryDef.setDropLowest(category.getDropLowest()); categoryDef.setDropHighest(category.getDropHighest()); categoryDef.setKeepHighest(category.getKeepHighest()); categoryDef.setAssignmentList(getAssignments(category.getGradebook().getUid(), category.getName())); categoryDef.setExtraCredit(category.isExtraCredit()); categoryDef.setCategoryOrder(category.getCategoryOrder()); } return categoryDef; }
private CategoryDefinition getCategoryDefinition(final Category category) { final CategoryDefinition categoryDef = new CategoryDefinition(); if (category != null) { categoryDef.setId(category.getId()); categoryDef.setName(category.getName()); categoryDef.setWeight(category.getWeight()); categoryDef.setDropLowest(category.getDropLowest()); categoryDef.setDropHighest(category.getDropHighest()); categoryDef.setKeepHighest(category.getKeepHighest()); categoryDef.setAssignmentList(getAssignments(category.getGradebook().getUid(), category.getName())); categoryDef.setDropKeepEnabled(category.isDropScores()); categoryDef.setExtraCredit(category.isExtraCredit()); categoryDef.setCategoryOrder(category.getCategoryOrder()); } return categoryDef; }