@Override public Set doInHibernate(final Session session) throws HibernateException { final Gradebook gradebook = (Gradebook) session.load(Gradebook.class, gradebookId); Hibernate.initialize(gradebook.getGradeMappings()); return gradebook.getGradeMappings(); } });
@Override public Set doInHibernate(final Session session) throws HibernateException { final Gradebook gradebook = (Gradebook)session.load(Gradebook.class, gradebookId); Hibernate.initialize(gradebook.getGradeMappings()); return gradebook.getGradeMappings(); } });
public void updateGradebook(final Gradebook gradebook) throws StaleObjectModificationException { HibernateCallback hc = session -> { // Get the gradebook and selected mapping from persistence Gradebook gradebookFromPersistence = (Gradebook)session.load(gradebook.getClass(), gradebook.getId()); GradeMapping mappingFromPersistence = gradebookFromPersistence.getSelectedGradeMapping(); // If the mapping has changed, and there are explicitly entered // course grade records, disallow this update. if (!mappingFromPersistence.getId().equals(gradebook.getSelectedGradeMapping().getId())) { if(isExplicitlyEnteredCourseGradeRecords(gradebook.getId())) { throw new IllegalStateException("Selected grade mapping can not be changed, since explicit course grades exist."); } } // Evict the persisted objects from the session and update the gradebook // so the new grade mapping is used in the sort column update //session.evict(mappingFromPersistence); for(Iterator iter = gradebookFromPersistence.getGradeMappings().iterator(); iter.hasNext();) { session.evict(iter.next()); } session.evict(gradebookFromPersistence); try { session.update(gradebook); session.flush(); } catch (StaleObjectStateException e) { throw new StaleObjectModificationException(e); } return null; }; getHibernateTemplate().execute(hc); }
for (final GradeMapping gradeMapping : gradebook.getGradeMappings()) { if (gradeMapping.getGradingScale().getUid().equals(fromGradingScaleUid)) {
public void updateGradebook(final Gradebook gradebook) throws StaleObjectModificationException { final HibernateCallback hc = session -> { // Get the gradebook and selected mapping from persistence final Gradebook gradebookFromPersistence = (Gradebook)session.load(gradebook.getClass(), gradebook.getId()); final GradeMapping mappingFromPersistence = gradebookFromPersistence.getSelectedGradeMapping(); // If the mapping has changed, and there are explicitly entered // course grade records, disallow this update. if (!mappingFromPersistence.getId().equals(gradebook.getSelectedGradeMapping().getId())) { if(isExplicitlyEnteredCourseGradeRecords(gradebook.getId())) { throw new IllegalStateException("Selected grade mapping can not be changed, since explicit course grades exist."); } } // Evict the persisted objects from the session and update the gradebook // so the new grade mapping is used in the sort column update //session.evict(mappingFromPersistence); for (final Object element : gradebookFromPersistence.getGradeMappings()) { session.evict(element); } session.evict(gradebookFromPersistence); try { session.update(gradebook); session.flush(); } catch (final StaleObjectStateException e) { throw new StaleObjectModificationException(e); } return null; }; getHibernateTemplate().execute(hc); }
for (final GradeMapping gradeMapping : gradebook.getGradeMappings()) { if (gradeMapping.getGradingScale().getUid().equals(fromGradingScaleUid)) {
for (final GradeMapping gradeMapping : gradebook.getGradeMappings()) { if (gradeMapping.getGradingScale().getUid().equals(fromGradingScaleUid)) {
for (final GradeMapping gradeMapping : gradebook.getGradeMappings()) { if (gradeMapping.getGradingScale().getUid().equals(fromGradingScaleUid)) {
final Set<GradeMapping> gradeMappings = gradebook.getGradeMappings(); gradeMappings.forEach(gradeMapping -> { if (StringUtils.equals(Long.toString(gradeMapping.getId()), gbInfo.getSelectedGradeMappingId())) {
final Set<GradeMapping> gradeMappings = gradebook.getGradeMappings(); gradeMappings.forEach(gradeMapping -> { if(StringUtils.equals(Long.toString(gradeMapping.getId()), gbInfo.getSelectedGradeMappingId())) {
rval.setGradeMappings(getGradebookGradeMappings(gradebook.getGradeMappings()));
rval.setGradeMappings(getGradebookGradeMappings(gradebook.getGradeMappings()));